treewide: Remove usage of remaining redundant platform compatability stuff
Want to get this out of here for 18.09, so it can be deprecated thereafter.
This commit is contained in:
@@ -1,13 +1,13 @@
|
||||
{ stdenv, fetchurl, icu, expat, zlib, bzip2, python, fixDarwinDylibNames, libiconv
|
||||
, which
|
||||
, buildPackages, buildPlatform, hostPlatform
|
||||
, buildPackages
|
||||
, toolset ? /**/ if stdenv.cc.isClang then "clang"
|
||||
else null
|
||||
, enableRelease ? true
|
||||
, enableDebug ? false
|
||||
, enableSingleThreaded ? false
|
||||
, enableMultiThreaded ? true
|
||||
, enableShared ? !(hostPlatform.libc == "msvcrt") # problems for now
|
||||
, enableShared ? !(stdenv.hostPlatform.libc == "msvcrt") # problems for now
|
||||
, enableStatic ? !enableShared
|
||||
, enablePython ? false
|
||||
, enableNumpy ? false
|
||||
@@ -24,7 +24,7 @@
|
||||
assert enableShared || enableStatic;
|
||||
|
||||
# Python isn't supported when cross-compiling
|
||||
assert enablePython -> hostPlatform == buildPlatform;
|
||||
assert enablePython -> stdenv.hostPlatform == stdenv.buildPlatform;
|
||||
assert enableNumpy -> enablePython;
|
||||
|
||||
with stdenv.lib;
|
||||
@@ -59,23 +59,23 @@ let
|
||||
"-sEXPAT_LIBPATH=${expat.out}/lib"
|
||||
|
||||
# TODO: make this unconditional
|
||||
] ++ optionals (hostPlatform != buildPlatform) [
|
||||
"address-model=${toString hostPlatform.parsed.cpu.bits}"
|
||||
"architecture=${toString hostPlatform.parsed.cpu.family}"
|
||||
"binary-format=${toString hostPlatform.parsed.kernel.execFormat.name}"
|
||||
"target-os=${toString hostPlatform.parsed.kernel.name}"
|
||||
] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
|
||||
"address-model=${toString stdenv.hostPlatform.parsed.cpu.bits}"
|
||||
"architecture=${toString stdenv.hostPlatform.parsed.cpu.family}"
|
||||
"binary-format=${toString stdenv.hostPlatform.parsed.kernel.execFormat.name}"
|
||||
"target-os=${toString stdenv.hostPlatform.parsed.kernel.name}"
|
||||
|
||||
# adapted from table in boost manual
|
||||
# https://www.boost.org/doc/libs/1_66_0/libs/context/doc/html/context/architectures.html
|
||||
"abi=${if hostPlatform.parsed.cpu.family == "arm" then "aapcs"
|
||||
else if hostPlatform.isWindows then "ms"
|
||||
else if hostPlatform.isMips then "o32"
|
||||
"abi=${if stdenv.hostPlatform.parsed.cpu.family == "arm" then "aapcs"
|
||||
else if stdenv.hostPlatform.isWindows then "ms"
|
||||
else if stdenv.hostPlatform.isMips then "o32"
|
||||
else "sysv"}"
|
||||
] ++ optional (link != "static") "runtime-link=${runtime-link}"
|
||||
++ optional (variant == "release") "debug-symbols=off"
|
||||
++ optional (toolset != null) "toolset=${toolset}"
|
||||
++ optional (mpi != null || hostPlatform != buildPlatform) "--user-config=user-config.jam"
|
||||
++ optionals (hostPlatform.libc == "msvcrt") [
|
||||
++ optional (mpi != null || stdenv.hostPlatform != stdenv.buildPlatform) "--user-config=user-config.jam"
|
||||
++ optionals (stdenv.hostPlatform.libc == "msvcrt") [
|
||||
"threadapi=win32"
|
||||
]);
|
||||
|
||||
@@ -86,10 +86,10 @@ stdenv.mkDerivation {
|
||||
|
||||
inherit src;
|
||||
|
||||
patchFlags = optionalString (hostPlatform.libc == "msvcrt") "-p0";
|
||||
patchFlags = optionalString (stdenv.hostPlatform.libc == "msvcrt") "-p0";
|
||||
patches = patches
|
||||
++ optional stdenv.isDarwin ./darwin-no-system-python.patch
|
||||
++ optional (hostPlatform.libc == "msvcrt") (fetchurl {
|
||||
++ optional (stdenv.hostPlatform.libc == "msvcrt") (fetchurl {
|
||||
url = "https://svn.boost.org/trac/boost/raw-attachment/tickaet/7262/"
|
||||
+ "boost-mingw.patch";
|
||||
sha256 = "0s32kwll66k50w6r5np1y5g907b7lcpsjhfgr7rsw7q5syhzddyj";
|
||||
@@ -113,7 +113,7 @@ stdenv.mkDerivation {
|
||||
cat << EOF >> user-config.jam
|
||||
using mpi : ${mpi}/bin/mpiCC ;
|
||||
EOF
|
||||
'' + optionalString (hostPlatform != buildPlatform) ''
|
||||
'' + optionalString (stdenv.hostPlatform != stdenv.buildPlatform) ''
|
||||
cat << EOF >> user-config.jam
|
||||
using gcc : cross : ${stdenv.cc.targetPrefix}c++ ;
|
||||
EOF
|
||||
@@ -126,7 +126,7 @@ stdenv.mkDerivation {
|
||||
|
||||
nativeBuildInputs = [ which buildPackages.stdenv.cc ];
|
||||
buildInputs = [ expat zlib bzip2 libiconv ]
|
||||
++ optional (hostPlatform == buildPlatform) icu
|
||||
++ optional (stdenv.hostPlatform == stdenv.buildPlatform) icu
|
||||
++ optional stdenv.isDarwin fixDarwinDylibNames
|
||||
++ optional enablePython python
|
||||
++ optional enableNumpy python.pkgs.numpy;
|
||||
@@ -137,7 +137,7 @@ stdenv.mkDerivation {
|
||||
"--includedir=$(dev)/include"
|
||||
"--libdir=$(out)/lib"
|
||||
] ++ optional enablePython "--with-python=${python.interpreter}"
|
||||
++ [ (if hostPlatform == buildPlatform then "--with-icu=${icu.dev}" else "--without-icu") ]
|
||||
++ [ (if stdenv.hostPlatform == stdenv.buildPlatform then "--with-icu=${icu.dev}" else "--without-icu") ]
|
||||
++ optional (toolset != null) "--with-toolset=${toolset}";
|
||||
|
||||
buildPhase = ''
|
||||
@@ -157,7 +157,7 @@ stdenv.mkDerivation {
|
||||
# Make boost header paths relative so that they are not runtime dependencies
|
||||
cd "$dev" && find include \( -name '*.hpp' -or -name '*.h' -or -name '*.ipp' \) \
|
||||
-exec sed '1i#line 1 "{}"' -i '{}' \;
|
||||
'' + optionalString (hostPlatform.libc == "msvcrt") ''
|
||||
'' + optionalString (stdenv.hostPlatform.libc == "msvcrt") ''
|
||||
$RANLIB "$out/lib/"*.a
|
||||
'';
|
||||
|
||||
|
||||
Reference in New Issue
Block a user