about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries/opensubdiv
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2019-01-07 02:18:36 +0000
committerAlyssa Ross <hi@alyssa.is>2019-01-07 02:18:47 +0000
commit36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2 (patch)
treeb3faaf573407b32aa645237a4d16b82778a39a92 /nixpkgs/pkgs/development/libraries/opensubdiv
parent4e31070265257dc67d120c27e0f75c2344fdfa9a (diff)
parentabf060725d7614bd3b9f96764262dfbc2f9c2199 (diff)
downloadnixlib-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/opensubdiv')
-rw-r--r--nixpkgs/pkgs/development/libraries/opensubdiv/default.nix54
1 files changed, 54 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/opensubdiv/default.nix b/nixpkgs/pkgs/development/libraries/opensubdiv/default.nix
new file mode 100644
index 000000000000..614df6fb063e
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/opensubdiv/default.nix
@@ -0,0 +1,54 @@
+{ lib, stdenv, fetchFromGitHub, cmake, pkgconfig, xorg, libGLU
+, libGL, glew, ocl-icd, python3
+, cudaSupport ? false, cudatoolkit
+, darwin
+}:
+
+stdenv.mkDerivation rec {
+  name = "opensubdiv-${version}";
+  version = "3.3.3";
+
+  src = fetchFromGitHub {
+    owner = "PixarAnimationStudios";
+    repo = "OpenSubdiv";
+    rev = "v${lib.replaceChars ["."] ["_"] version}";
+    sha256 = "1rld4hgl9yrbnk5sd6bhvnm8jdnqq09hq93hrmx0nhccccximi9z";
+  };
+
+  outputs = [ "out" "dev" ];
+
+  buildInputs =
+    [ cmake pkgconfig libGLU libGL python3
+      # FIXME: these are not actually needed, but the configure script wants them.
+      glew xorg.libX11 xorg.libXrandr xorg.libXxf86vm xorg.libXcursor
+      xorg.libXinerama xorg.libXi
+    ]
+    ++ lib.optional (!stdenv.isDarwin) ocl-icd
+    ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [OpenCL Cocoa CoreVideo IOKit AppKit AGL ])
+    ++ lib.optional cudaSupport cudatoolkit;
+
+  cmakeFlags =
+    [ "-DNO_TUTORIALS=1"
+      "-DNO_REGRESSION=1"
+      "-DNO_EXAMPLES=1"
+      "-DNO_METAL=1" # don’t have metal in apple sdk
+    ] ++ lib.optionals (!stdenv.isDarwin) [
+      "-DGLEW_INCLUDE_DIR=${glew.dev}/include"
+      "-DGLEW_LIBRARY=${glew.dev}/lib"
+    ] ++ lib.optionals cudaSupport [
+      "-DOSD_CUDA_NVCC_FLAGS=--gpu-architecture=compute_30"
+      "-DCUDA_HOST_COMPILER=${cudatoolkit.cc}/bin/cc"
+    ];
+
+  enableParallelBuilding = true;
+
+  postInstall = "rm $out/lib/*.a";
+
+  meta = {
+    description = "An Open-Source subdivision surface library";
+    homepage = http://graphics.pixar.com/opensubdiv;
+    platforms = lib.platforms.unix;
+    maintainers = [ lib.maintainers.eelco ];
+    license = lib.licenses.asl20;
+  };
+}