diff options
author | Frederik Rietdijk <fridh@fridh.nl> | 2019-01-05 13:46:40 +0100 |
---|---|---|
committer | Frederik Rietdijk <freddyrietdijk@fridh.nl> | 2019-01-15 10:11:33 +0100 |
commit | 05ee1015bbbe38124444bf9de22523aaf2821998 (patch) | |
tree | c2270791e75440dbc14e7de2b1480a4122cc9c6f /pkgs/development/libraries/science | |
parent | d6f401e132ebc9083c64dc2d7a7574344c49a9c9 (diff) | |
download | nixlib-05ee1015bbbe38124444bf9de22523aaf2821998.tar nixlib-05ee1015bbbe38124444bf9de22523aaf2821998.tar.gz nixlib-05ee1015bbbe38124444bf9de22523aaf2821998.tar.bz2 nixlib-05ee1015bbbe38124444bf9de22523aaf2821998.tar.lz nixlib-05ee1015bbbe38124444bf9de22523aaf2821998.tar.xz nixlib-05ee1015bbbe38124444bf9de22523aaf2821998.tar.zst nixlib-05ee1015bbbe38124444bf9de22523aaf2821998.zip |
openblas: fix cross-compilation
Diffstat (limited to 'pkgs/development/libraries/science')
-rw-r--r-- | pkgs/development/libraries/science/math/openblas/default.nix | 29 |
1 files changed, 15 insertions, 14 deletions
diff --git a/pkgs/development/libraries/science/math/openblas/default.nix b/pkgs/development/libraries/science/math/openblas/default.nix index 120fa25090a4..e4c05896125e 100644 --- a/pkgs/development/libraries/science/math/openblas/default.nix +++ b/pkgs/development/libraries/science/math/openblas/default.nix @@ -3,6 +3,7 @@ # pointer width, but some expect to use 32-bit integers always # (for compatibility with reference BLAS). , blas64 ? null +, buildPackages }: with stdenv.lib; @@ -16,7 +17,6 @@ let BINARY = "32"; TARGET = "ARMV6"; DYNAMIC_ARCH = "0"; - CC = "gcc"; USE_OPENMP = "1"; }; @@ -24,7 +24,6 @@ let BINARY = "32"; TARGET = "ARMV7"; DYNAMIC_ARCH = "0"; - CC = "gcc"; USE_OPENMP = "1"; }; @@ -32,7 +31,6 @@ let BINARY = "64"; TARGET = "ARMV8"; DYNAMIC_ARCH = "1"; - CC = "gcc"; USE_OPENMP = "1"; }; @@ -40,7 +38,6 @@ let BINARY = "32"; TARGET = "P2"; DYNAMIC_ARCH = "1"; - CC = "gcc"; USE_OPENMP = "1"; }; @@ -48,9 +45,6 @@ let BINARY = "64"; TARGET = "ATHLON"; DYNAMIC_ARCH = "1"; - # Note that clang is available through the stdenv on OSX and - # thus is not an explicit dependency. - CC = "clang"; USE_OPENMP = "0"; MACOSX_DEPLOYMENT_TARGET = "10.7"; }; @@ -59,7 +53,6 @@ let BINARY = "64"; TARGET = "ATHLON"; DYNAMIC_ARCH = "1"; - CC = "gcc"; USE_OPENMP = "1"; }; }; @@ -113,21 +106,29 @@ stdenv.mkDerivation rec { "relro" "bindnow" ]; - nativeBuildInputs = - [gfortran perl which] - ++ optionals stdenv.isDarwin [coreutils]; + nativeBuildInputs = [ + perl + which + buildPackages.gfortran + buildPackages.stdenv.cc + ] ++ optionals stdenv.isDarwin [ + coreutils + ]; makeFlags = [ - "FC=gfortran" + "FC=${optionalString (stdenv.hostPlatform != stdenv.buildPlatform) stdenv.cc.targetPrefix}gfortran" + "CC=${optionalString (stdenv.hostPlatform != stdenv.buildPlatform) stdenv.cc.targetPrefix}cc" ''PREFIX="''$(out)"'' "NUM_THREADS=64" "INTERFACE64=${if blas64 then "1" else "0"}" "NO_STATIC=1" - ] ++ stdenv.lib.optional (stdenv.hostPlatform.libc == "musl") "NO_AFFINITY=1" + ] + ++ stdenv.lib.optional (stdenv.hostPlatform.libc == "musl") "NO_AFFINITY=1" + ++ stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ "NO_BINARY_MODE=1" "HOSTCC=cc" "CROSS=1" ] ++ mapAttrsToList (var: val: var + "=" + val) config; - doCheck = true; + doCheck = stdenv.hostPlatform != stdenv.buildPlatform; checkTarget = "tests"; postInstall = '' |