parent
1c3aae62fe
commit
29608b7241
@ -0,0 +1,80 @@ |
||||
{ lib |
||||
, stdenv |
||||
, fetchFromGitHub |
||||
, cmake |
||||
, swig |
||||
, boost |
||||
, spectra |
||||
, libxml2 |
||||
, tbb |
||||
, hmat-oss |
||||
, nlopt |
||||
, cminpack |
||||
, ceres-solver |
||||
, dlib |
||||
, hdf5 |
||||
, primesieve |
||||
, pagmo2 |
||||
, ipopt |
||||
, Accelerate |
||||
# tests take an hour to build on a 48-core machine |
||||
, runTests ? false |
||||
, enablePython ? false |
||||
, python3Packages |
||||
}: |
||||
|
||||
stdenv.mkDerivation rec { |
||||
pname = "openturns"; |
||||
version = "1.19"; |
||||
|
||||
src = fetchFromGitHub { |
||||
owner = "openturns"; |
||||
repo = "openturns"; |
||||
rev = "v${version}"; |
||||
sha256 = "sha256-hSvhKx7Ke5PXPYGcn9OJvq7YooAbHrbP6TdLZBotriE="; |
||||
}; |
||||
|
||||
nativeBuildInputs = [ cmake ] ++ lib.optional enablePython python3Packages.sphinx; |
||||
buildInputs = [ |
||||
swig |
||||
boost |
||||
spectra |
||||
libxml2 |
||||
tbb |
||||
hmat-oss |
||||
nlopt |
||||
cminpack |
||||
ceres-solver |
||||
dlib |
||||
hdf5 |
||||
primesieve |
||||
pagmo2 |
||||
ipopt |
||||
] ++ lib.optionals enablePython [ |
||||
python3Packages.python |
||||
python3Packages.matplotlib |
||||
python3Packages.psutil |
||||
python3Packages.dill |
||||
] ++ lib.optional stdenv.isDarwin Accelerate; |
||||
|
||||
cmakeFlags = [ |
||||
"-DOPENTURNS_SYSCONFIG_PATH=$out/etc" |
||||
"-DCMAKE_UNITY_BUILD=ON" |
||||
"-DCMAKE_UNITY_BUILD_BATCH_SIZE=32" |
||||
"-DSWIG_COMPILE_FLAGS='-O1'" |
||||
"-DUSE_SPHINX=${if enablePython then "ON" else "OFF"}" |
||||
"-DBUILD_PYTHON=${if enablePython then "ON" else "OFF"}" |
||||
]; |
||||
|
||||
doCheck = runTests; |
||||
|
||||
checkTarget = "tests check"; |
||||
|
||||
meta = with lib; { |
||||
description = "Multivariate probabilistic modeling and uncertainty treatment library"; |
||||
license = with licenses; [ lgpl3 gpl3 ]; |
||||
homepage = "https://openturns.github.io/www/"; |
||||
maintainers = with maintainers; [ gdinh ]; |
||||
platforms = platforms.unix; |
||||
}; |
||||
} |
Loading…
Reference in new issue