diff --git a/pkgs/development/compilers/ghc/8.10.7-binary.nix b/pkgs/development/compilers/ghc/8.10.7-binary.nix index 40becff83767..9ad461fc03f4 100644 --- a/pkgs/development/compilers/ghc/8.10.7-binary.nix +++ b/pkgs/development/compilers/ghc/8.10.7-binary.nix @@ -342,12 +342,17 @@ stdenv.mkDerivation { -exec sed -i "s@extra-lib-dirs: @extra-lib-dirs: ${libiconv}/lib@" {} \; '' + - # aarch64 does HAVE_NUMA so -lnuma requires it in library-dirs in rts/package.conf.in + # Some platforms do HAVE_NUMA so -lnuma requires it in library-dirs in rts/package.conf.in # FFI_LIB_DIR is a good indication of places it must be needed. - lib.optionalString (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64) '' - find . -name package.conf.in \ - -exec sed -i "s@FFI_LIB_DIR@FFI_LIB_DIR ${numactl.out}/lib@g" {} \; - '' + lib.optionalString + ( + lib.meta.availableOn stdenv.hostPlatform numactl + && builtins.any ({ nixPackage, ... }: nixPackage == numactl) binDistUsed.archSpecificLibraries + ) + '' + find . -name package.conf.in \ + -exec sed -i "s@FFI_LIB_DIR@FFI_LIB_DIR ${numactl.out}/lib@g" {} \; + '' + # Rename needed libraries and binaries, fix interpreter lib.optionalString stdenv.hostPlatform.isLinux '' diff --git a/pkgs/development/compilers/ghc/9.2.4-binary.nix b/pkgs/development/compilers/ghc/9.2.4-binary.nix index 88b25c420632..6641deada776 100644 --- a/pkgs/development/compilers/ghc/9.2.4-binary.nix +++ b/pkgs/development/compilers/ghc/9.2.4-binary.nix @@ -311,12 +311,17 @@ stdenv.mkDerivation { -i {} \; '' + - # aarch64 does HAVE_NUMA so -lnuma requires it in library-dirs in rts/package.conf.in + # Some platforms do HAVE_NUMA so -lnuma requires it in library-dirs in rts/package.conf.in # FFI_LIB_DIR is a good indication of places it must be needed. - lib.optionalString (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64) '' - find . -name package.conf.in \ - -exec sed -i "s@FFI_LIB_DIR@FFI_LIB_DIR ${numactl.out}/lib@g" {} \; - '' + lib.optionalString + ( + lib.meta.availableOn stdenv.hostPlatform numactl + && builtins.any ({ nixPackage, ... }: nixPackage == numactl) binDistUsed.archSpecificLibraries + ) + '' + find . -name package.conf.in \ + -exec sed -i "s@FFI_LIB_DIR@FFI_LIB_DIR ${numactl.out}/lib@g" {} \; + '' + # Rename needed libraries and binaries, fix interpreter lib.optionalString stdenv.hostPlatform.isLinux '' diff --git a/pkgs/development/compilers/ghc/9.6.3-binary.nix b/pkgs/development/compilers/ghc/9.6.3-binary.nix index 73cdc3019418..ed9fb0a0e458 100644 --- a/pkgs/development/compilers/ghc/9.6.3-binary.nix +++ b/pkgs/development/compilers/ghc/9.6.3-binary.nix @@ -297,12 +297,17 @@ stdenv.mkDerivation { -i {} \; '' + - # aarch64 does HAVE_NUMA so -lnuma requires it in library-dirs in rts/package.conf.in + # Some platforms do HAVE_NUMA so -lnuma requires it in library-dirs in rts/package.conf.in # FFI_LIB_DIR is a good indication of places it must be needed. - lib.optionalString (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64) '' - find . -name package.conf.in \ - -exec sed -i "s@FFI_LIB_DIR@FFI_LIB_DIR ${numactl.out}/lib@g" {} \; - '' + lib.optionalString + ( + lib.meta.availableOn stdenv.hostPlatform numactl + && builtins.any ({ nixPackage, ... }: nixPackage == numactl) binDistUsed.archSpecificLibraries + ) + '' + find . -name package.conf.in \ + -exec sed -i "s@FFI_LIB_DIR@FFI_LIB_DIR ${numactl.out}/lib@g" {} \; + '' + # Rename needed libraries and binaries, fix interpreter lib.optionalString stdenv.hostPlatform.isLinux '' diff --git a/pkgs/development/compilers/ghc/9.8.4-binary.nix b/pkgs/development/compilers/ghc/9.8.4-binary.nix index db48cfe430fd..2064b87fc8d0 100644 --- a/pkgs/development/compilers/ghc/9.8.4-binary.nix +++ b/pkgs/development/compilers/ghc/9.8.4-binary.nix @@ -311,12 +311,17 @@ stdenv.mkDerivation { -i {} \; '' + - # aarch64 does HAVE_NUMA so -lnuma requires it in library-dirs in rts/package.conf.in + # Some platforms do HAVE_NUMA so -lnuma requires it in library-dirs in rts/package.conf.in # FFI_LIB_DIR is a good indication of places it must be needed. - lib.optionalString (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64) '' - find . -name package.conf.in \ - -exec sed -i "s@FFI_LIB_DIR@FFI_LIB_DIR ${numactl.out}/lib@g" {} \; - '' + lib.optionalString + ( + lib.meta.availableOn stdenv.hostPlatform numactl + && builtins.any ({ nixPackage, ... }: nixPackage == numactl) binDistUsed.archSpecificLibraries + ) + '' + find . -name package.conf.in \ + -exec sed -i "s@FFI_LIB_DIR@FFI_LIB_DIR ${numactl.out}/lib@g" {} \; + '' + # Rename needed libraries and binaries, fix interpreter lib.optionalString stdenv.hostPlatform.isLinux ''