3
0
Fork 0
forked from mirrors/nixpkgs
nixpkgs/pkgs/development/libraries/opensubdiv/default.nix
volth 46420bbaa3 treewide: name -> pname (easy cases) (#66585)
treewide replacement of

stdenv.mkDerivation rec {
  name = "*-${version}";
  version = "*";

to pname
2019-08-15 13:41:18 +01:00

55 lines
1.7 KiB
Nix
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{ config, lib, stdenv, fetchFromGitHub, cmake, pkgconfig, xorg, libGLU
, libGL, glew, ocl-icd, python3
, cudaSupport ? config.cudaSupport or false, cudatoolkit
, darwin
}:
stdenv.mkDerivation rec {
pname = "opensubdiv";
version = "3.4.0";
src = fetchFromGitHub {
owner = "PixarAnimationStudios";
repo = "OpenSubdiv";
rev = "v${lib.replaceChars ["."] ["_"] version}";
sha256 = "0cippg6aqc5dlya1cmh3908pwssrg52fwgyylnvz5343yrxmgk12";
};
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" # dont 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;
};
}