diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/openvdb')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/openvdb/default.nix | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/openvdb/default.nix b/nixpkgs/pkgs/development/libraries/openvdb/default.nix new file mode 100644 index 000000000000..5af5a27f34f5 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/openvdb/default.nix @@ -0,0 +1,42 @@ +{ lib, stdenv, fetchFromGitHub, cmake, boost, jemalloc, c-blosc, tbb, zlib }: + +stdenv.mkDerivation rec +{ + pname = "openvdb"; + version = "11.0.0"; + + outputs = [ "out" "dev" ]; + + src = fetchFromGitHub { + owner = "AcademySoftwareFoundation"; + repo = "openvdb"; + rev = "v${version}"; + sha256 = "sha256-wDDjX0nKZ4/DIbEX33PoxR43dJDj2NF3fm+Egug62GQ="; + }; + + nativeBuildInputs = [ cmake ]; + + buildInputs = [ boost tbb jemalloc c-blosc zlib ]; + + cmakeFlags = [ "-DOPENVDB_CORE_STATIC=OFF" ]; + + # error: aligned deallocation function of type 'void (void *, std::align_val_t) noexcept' is only available on macOS 10.13 or newer + env = lib.optionalAttrs (stdenv.isDarwin && lib.versionOlder stdenv.hostPlatform.darwinMinVersion "10.13" && lib.versionAtLeast tbb.version "2021.8.0") { + NIX_CFLAGS_COMPILE = "-faligned-allocation"; + }; + + postFixup = '' + substituteInPlace $dev/lib/cmake/OpenVDB/FindOpenVDB.cmake \ + --replace \''${OPENVDB_LIBRARYDIR} $out/lib \ + --replace \''${OPENVDB_INCLUDEDIR} $dev/include + ''; + + meta = with lib; { + description = "An open framework for voxel"; + mainProgram = "vdb_print"; + homepage = "https://www.openvdb.org"; + maintainers = [ maintainers.guibou ]; + platforms = platforms.unix; + license = licenses.mpl20; + }; +} |