diff options
author | Alyssa Ross <hi@alyssa.is> | 2019-01-07 02:18:36 +0000 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2019-01-07 02:18:47 +0000 |
commit | 36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2 (patch) | |
tree | b3faaf573407b32aa645237a4d16b82778a39a92 /nixpkgs/pkgs/development/libraries/vtk | |
parent | 4e31070265257dc67d120c27e0f75c2344fdfa9a (diff) | |
parent | abf060725d7614bd3b9f96764262dfbc2f9c2199 (diff) | |
download | nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.gz nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.bz2 nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.lz nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.xz nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.zst nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.zip |
Add 'nixpkgs/' from commit 'abf060725d7614bd3b9f96764262dfbc2f9c2199'
git-subtree-dir: nixpkgs git-subtree-mainline: 4e31070265257dc67d120c27e0f75c2344fdfa9a git-subtree-split: abf060725d7614bd3b9f96764262dfbc2f9c2199
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/vtk')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/vtk/default.nix | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/vtk/default.nix b/nixpkgs/pkgs/development/libraries/vtk/default.nix new file mode 100644 index 000000000000..afd29aeb0063 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/vtk/default.nix @@ -0,0 +1,61 @@ +{ stdenv, fetchurl, cmake, libGLU_combined, libX11, xproto, libXt +, qtLib ? null +# Darwin support +, Cocoa, CoreServices, DiskArbitration, IOKit, CFNetwork, Security, GLUT, OpenGL +, ApplicationServices, CoreText, IOSurface, cf-private, ImageIO, xpc, libobjc }: + +with stdenv.lib; + +let + os = stdenv.lib.optionalString; + majorVersion = "7.0"; + minorVersion = "0"; + version = "${majorVersion}.${minorVersion}"; +in + +stdenv.mkDerivation rec { + name = "vtk-${os (qtLib != null) "qvtk-"}${version}"; + src = fetchurl { + url = "${meta.homepage}files/release/${majorVersion}/VTK-${version}.tar.gz"; + sha256 = "1hrjxkcvs3ap0bdhk90vymz5pgvxmg7q6sz8ab3wsyddbshr1abq"; + }; + + buildInputs = + if !stdenv.isDarwin + then [ cmake libGLU_combined libX11 xproto libXt ] ++ optional (qtLib != null) qtLib + else [ cmake qtLib xpc CoreServices DiskArbitration IOKit cf-private + CFNetwork Security ApplicationServices CoreText IOSurface ImageIO + OpenGL GLUT ]; + propagatedBuildInputs = stdenv.lib.optionals stdenv.isDarwin [ Cocoa libobjc ]; + + + preBuild = '' + export LD_LIBRARY_PATH="$(pwd)/lib"; + ''; + + # Shared libraries don't work, because of rpath troubles with the current + # nixpkgs camke approach. It wants to call a binary at build time, just + # built and requiring one of the shared objects. + # At least, we use -fPIC for other packages to be able to use this in shared + # objects. + cmakeFlags = [ "-DCMAKE_C_FLAGS=-fPIC" "-DCMAKE_CXX_FLAGS=-fPIC" ] + ++ optional (qtLib != null) [ "-DVTK_USE_QT:BOOL=ON" ] + ++ optional stdenv.isDarwin [ "-DBUILD_TESTING:BOOL=OFF" + "-DOPENGL_INCLUDE_DIR=${OpenGL}/Library/Frameworks" ]; + + postPatch = stdenv.lib.optionalString stdenv.isDarwin '' + sed -i 's|COMMAND vtkHashSource|COMMAND "DYLD_LIBRARY_PATH=''${VTK_BINARY_DIR}/lib" ''${VTK_BINARY_DIR}/bin/vtkHashSource-7.0|' ./Parallel/Core/CMakeLists.txt + sed -i 's/fprintf(output, shift)/fprintf(output, "%s", shift)/' ./ThirdParty/libxml2/vtklibxml2/xmlschemas.c + sed -i 's/fprintf(output, shift)/fprintf(output, "%s", shift)/g' ./ThirdParty/libxml2/vtklibxml2/xpath.c + ''; + + enableParallelBuilding = true; + + meta = { + description = "Open source libraries for 3D computer graphics, image processing and visualization"; + homepage = http://www.vtk.org/; + license = stdenv.lib.licenses.bsd3; + maintainers = with stdenv.lib.maintainers; [ ]; + platforms = with stdenv.lib.platforms; unix; + }; +} |