diff options
author | Ben Gamari <ben@smart-cactus.org> | 2023-01-06 15:11:47 -0500 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2023-01-09 19:01:02 -0500 |
commit | 34dd176116870d24d6a5b93e263e79edad06fd00 (patch) | |
tree | 668d50eb66bde4b271fff9b1040747d53c0f3a79 /pkgs/applications/science/math/gmsh/default.nix | |
parent | 4ed69ca0957e29c40bcabb6f55c634b590b3a669 (diff) | |
download | nixpkgs-34dd176116870d24d6a5b93e263e79edad06fd00.tar nixpkgs-34dd176116870d24d6a5b93e263e79edad06fd00.tar.gz nixpkgs-34dd176116870d24d6a5b93e263e79edad06fd00.tar.bz2 nixpkgs-34dd176116870d24d6a5b93e263e79edad06fd00.tar.lz nixpkgs-34dd176116870d24d6a5b93e263e79edad06fd00.tar.xz nixpkgs-34dd176116870d24d6a5b93e263e79edad06fd00.tar.zst nixpkgs-34dd176116870d24d6a5b93e263e79edad06fd00.zip |
gmsh: enable python bindings
Diffstat (limited to 'pkgs/applications/science/math/gmsh/default.nix')
-rw-r--r-- | pkgs/applications/science/math/gmsh/default.nix | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/pkgs/applications/science/math/gmsh/default.nix b/pkgs/applications/science/math/gmsh/default.nix index 3153c128057..4d9b3afe31c 100644 --- a/pkgs/applications/science/math/gmsh/default.nix +++ b/pkgs/applications/science/math/gmsh/default.nix @@ -1,7 +1,9 @@ { lib, stdenv, fetchurl, cmake, blas, lapack, gfortran, gmm, fltk, libjpeg -, zlib, libGL, libGLU, xorg, opencascade-occt }: +, zlib, libGL, libGLU, xorg, opencascade-occt +, python ? null, enablePython ? false }: assert (!blas.isILP64) && (!lapack.isILP64); +assert enablePython -> (python != null); stdenv.mkDerivation rec { pname = "gmsh"; @@ -18,10 +20,16 @@ stdenv.mkDerivation rec { libGL libGLU xorg.libXrender xorg.libXcursor xorg.libXfixes xorg.libXext xorg.libXft xorg.libXinerama xorg.libX11 xorg.libSM xorg.libICE - ]; + ] ++ lib.optional enablePython python; enableParallelBuilding = true; + patches = [ ./fix-python.patch ]; + + postPatch = '' + substituteInPlace api/gmsh.py --subst-var-by LIBPATH ${placeholder "out"}/lib/libgmsh.so + ''; + # N.B. the shared object is used by bindings cmakeFlags = [ "-DENABLE_BUILD_SHARED=ON" @@ -31,6 +39,12 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ cmake gfortran ]; + postFixup = lib.optionalString enablePython '' + mkdir -p $out/lib/python${python.pythonVersion}/site-packages + mv $out/lib/gmsh.py $out/lib/python${python.pythonVersion}/site-packages + mv $out/lib/*.dist-info $out/lib/python${python.pythonVersion}/site-packages + ''; + doCheck = true; meta = { |