From d40ec2ae1b873119d21ea13d982ee9a520a71327 Mon Sep 17 00:00:00 2001 From: Andrew Marshall Date: Mon, 27 Jul 2026 22:53:22 -0400 Subject: [PATCH 1/2] openshadinglanguage: remove unneeded flags and inputs Removing these seems to cause no build issues or issues using in Blender. `clang` in nativeBuildInputs should be redundant since `LLVM_BC_GENERATOR` is set explicitly. --- pkgs/by-name/op/openshadinglanguage/package.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/by-name/op/openshadinglanguage/package.nix b/pkgs/by-name/op/openshadinglanguage/package.nix index d0f4997ccacd..2eb2dc65963c 100644 --- a/pkgs/by-name/op/openshadinglanguage/package.nix +++ b/pkgs/by-name/op/openshadinglanguage/package.nix @@ -38,7 +38,6 @@ stdenv.mkDerivation (finalAttrs: { # Build system implies llvm-config and llvm-as are in the same directory. # Override defaults. (lib.cmakeFeature "LLVM_BC_GENERATOR" "${clang}/bin/clang++") - (lib.cmakeFeature "LLVM_CONFIG" "${llvm.dev}/bin/llvm-config") (lib.cmakeFeature "LLVM_DIRECTORY" "${llvm}") ]; @@ -53,7 +52,6 @@ stdenv.mkDerivation (finalAttrs: { nativeBuildInputs = [ bison - clang cmake flex ]; From fc6c01f1e4d22b934d1d4bda596a8d7cf96ab29f Mon Sep 17 00:00:00 2001 From: Andrew Marshall Date: Mon, 27 Jul 2026 22:55:06 -0400 Subject: [PATCH 2/2] openshadinglanguage: remove libclang as shared lib This seems unnecessary since build succeeds, and OSL render in Blender also succeeds. It is necessary since adding libclang-cpp.so pulls in libLLVM, which we are trying to avoid with LLVM_STATIC since it causes libLLVM conflicts downstream in e.g. `pkgsRocm.blender`. See https://github.com/NixOS/nixpkgs/issues/530702. --- .../libclang-no-shared.patch | 24 +++++++++++++++++++ .../op/openshadinglanguage/package.nix | 2 ++ 2 files changed, 26 insertions(+) create mode 100644 pkgs/by-name/op/openshadinglanguage/libclang-no-shared.patch diff --git a/pkgs/by-name/op/openshadinglanguage/libclang-no-shared.patch b/pkgs/by-name/op/openshadinglanguage/libclang-no-shared.patch new file mode 100644 index 000000000000..25eb8619fb3b --- /dev/null +++ b/pkgs/by-name/op/openshadinglanguage/libclang-no-shared.patch @@ -0,0 +1,24 @@ +diff --git a/src/cmake/modules/FindLLVM.cmake b/src/cmake/modules/FindLLVM.cmake +index 56809dc3..b1a1ec1e 100644 +--- a/src/cmake/modules/FindLLVM.cmake ++++ b/src/cmake/modules/FindLLVM.cmake +@@ -103,19 +103,6 @@ if (NOT LLVM_LIBRARY) + set (LLVM_LIBRARY "${LLVM_LIBRARIES}") + endif () + +-execute_process (COMMAND ${LLVM_CONFIG} --shared-mode +- OUTPUT_VARIABLE LLVM_SHARED_MODE +- OUTPUT_STRIP_TRAILING_WHITESPACE) +-if (LLVM_SHARED_MODE STREQUAL "shared") +- find_library ( _CLANG_CPP_LIBRARY +- NAMES "clang-cpp" +- PATHS ${LLVM_LIB_DIR} +- NO_DEFAULT_PATH) +- if (_CLANG_CPP_LIBRARY) +- list (APPEND CLANG_LIBRARIES ${_CLANG_CPP_LIBRARY}) +- endif () +-endif () +- + foreach (COMPONENT clangFrontend clangDriver clangSerialization + clangParse clangSema clangAnalysis clangAST + clangASTMatchers clangEdit clangLex diff --git a/pkgs/by-name/op/openshadinglanguage/package.nix b/pkgs/by-name/op/openshadinglanguage/package.nix index 2eb2dc65963c..c7a1fcb5c64a 100644 --- a/pkgs/by-name/op/openshadinglanguage/package.nix +++ b/pkgs/by-name/op/openshadinglanguage/package.nix @@ -31,6 +31,8 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-edtYKN2obQexQtclrIUflm3upc14MhHQ7eLvit5Hqq0="; }; + patches = [ ./libclang-no-shared.patch ]; + cmakeFlags = [ (lib.cmakeBool "LLVM_STATIC" true) (lib.cmakeBool "USE_QT" false)