boost: add numpy support
Not built by default. Also add enablePython flag (enabled by default) and cleanup a bit.
This commit is contained in:
@@ -9,6 +9,8 @@
|
||||
, enableStatic ? !enableShared
|
||||
, enablePIC ? false
|
||||
, enableExceptions ? false
|
||||
, enablePython ? hostPlatform == buildPlatform
|
||||
, enableNumpy ? false, numpy ? null
|
||||
, taggedLayout ? ((enableRelease && enableDebug) || (enableSingleThreaded && enableMultiThreaded) || (enableShared && enableStatic))
|
||||
, patches ? null
|
||||
, mpi ? null
|
||||
@@ -21,6 +23,9 @@
|
||||
# We must build at least one type of libraries
|
||||
assert !enableShared -> enableStatic;
|
||||
|
||||
assert enablePython -> hostPlatform == buildPlatform;
|
||||
assert enableNumpy -> enablePython;
|
||||
|
||||
with stdenv.lib;
|
||||
let
|
||||
|
||||
@@ -62,7 +67,8 @@ let
|
||||
] ++ optional (link != "static") "runtime-link=${runtime-link}" ++ [
|
||||
"link=${link}"
|
||||
"${cflags}"
|
||||
] ++ optional (variant == "release") "debug-symbols=off";
|
||||
] ++ optional (variant == "release") "debug-symbols=off"
|
||||
++ optional (!enablePython) "--without-python";
|
||||
|
||||
nativeB2Flags = [
|
||||
"-sEXPAT_INCLUDE=${expat.dev}/include"
|
||||
@@ -76,7 +82,6 @@ let
|
||||
"-sEXPAT_LIBPATH=${expat.crossDrv}/lib"
|
||||
"--user-config=user-config.jam"
|
||||
"toolset=gcc-cross"
|
||||
"--without-python"
|
||||
] ++ optionals (hostPlatform.libc == "msvcrt") [
|
||||
"target-os=windows"
|
||||
"threadapi=win32"
|
||||
@@ -148,8 +153,10 @@ stdenv.mkDerivation {
|
||||
enableParallelBuilding = true;
|
||||
|
||||
buildInputs = [ expat zlib bzip2 libiconv ]
|
||||
++ stdenv.lib.optionals (hostPlatform == buildPlatform) [ python icu ]
|
||||
++ stdenv.lib.optional stdenv.isDarwin fixDarwinDylibNames;
|
||||
++ optional (hostPlatform == buildPlatform) icu
|
||||
++ optional stdenv.isDarwin fixDarwinDylibNames
|
||||
++ optional enablePython python
|
||||
++ optional enableNumpy numpy;
|
||||
|
||||
configureScript = "./bootstrap.sh";
|
||||
configureFlags = commonConfigureFlags
|
||||
|
||||
Reference in New Issue
Block a user