From 442860880f7fc4e100275ecb52c206e4f2451964 Mon Sep 17 00:00:00 2001 From: Florian Brandes Date: Tue, 30 Apr 2024 10:47:17 +0200 Subject: [PATCH] blender: add materialx Signed-off-by: Florian Brandes --- pkgs/applications/misc/blender/default.nix | 7 ++++++- pkgs/by-name/ma/materialx/package.nix | 2 ++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/misc/blender/default.nix b/pkgs/applications/misc/blender/default.nix index a2cbdb79ae283a..e54cae9e56a249 100644 --- a/pkgs/applications/misc/blender/default.nix +++ b/pkgs/applications/misc/blender/default.nix @@ -53,6 +53,7 @@ libxkbcommon, llvmPackages, makeWrapper, + materialx, mesa, ocl-icd, openal, @@ -118,7 +119,8 @@ stdenv.mkDerivation (finalAttrs: { : > build_files/cmake/platform/platform_apple_xcode.cmake substituteInPlace source/creator/CMakeLists.txt \ --replace-fail '${"$"}{LIBDIR}/python' \ - '${python3}' + '${python3}' \ + --replace-fail '${"$"}{LIBDIR}/materialx/' '${materialx}/' substituteInPlace build_files/cmake/platform/platform_apple.cmake \ --replace-fail '${"$"}{LIBDIR}/brotli/lib/libbrotlicommon-static.a' \ '${lib.getLib brotli}/lib/libbrotlicommon.dylib' \ @@ -151,6 +153,7 @@ stdenv.mkDerivation (finalAttrs: { "-DWITH_FFTW3=ON" "-DWITH_IMAGE_OPENJPEG=ON" "-DWITH_INSTALL_PORTABLE=OFF" + "-DMaterialX_DIR=${materialx}/lib/cmake/MaterialX" "-DWITH_MOD_OCEANSIM=ON" "-DWITH_OPENCOLLADA=${if colladaSupport then "ON" else "OFF"}" "-DWITH_OPENCOLORIO=ON" @@ -221,6 +224,7 @@ stdenv.mkDerivation (finalAttrs: { libsndfile libtiff libwebp + materialx opencolorio openexr openimageio @@ -286,6 +290,7 @@ stdenv.mkDerivation (finalAttrs: { ps = python3Packages; in [ + materialx ps.numpy ps.requests ps.zstandard diff --git a/pkgs/by-name/ma/materialx/package.nix b/pkgs/by-name/ma/materialx/package.nix index 551e21abfd610e..cac615eaecbbf7 100644 --- a/pkgs/by-name/ma/materialx/package.nix +++ b/pkgs/by-name/ma/materialx/package.nix @@ -52,6 +52,8 @@ python3Packages.buildPythonPackage rec { cmakeFlags = [ (lib.cmakeBool "MATERIALX_BUILD_OIIO" true) (lib.cmakeBool "MATERIALX_BUILD_PYTHON" true) + # don't build MSL shader back-end on x86_x64-darwin, as it requires a newer SDK with metal support + (lib.cmakeBool "MATERIALX_BUILD_GEN_MSL" (stdenv.isLinux || (stdenv.isAarch64 && stdenv.isDarwin))) ]; pythonImportsCheck = [ "MaterialX" ];