# --- T2-COPYRIGHT-BEGIN --- # t2/package/*/shader-slang/hotfix-shared.patch # Copyright (C) 2026 The T2 SDE Project # SPDX-License-Identifier: GPL-2.0 or patched project license # --- T2-COPYRIGHT-END --- diff -ur slang/CMakeLists.txt slang-fixed/CMakeLists.txt --- slang/CMakeLists.txt 2000-01-01 01:00:00.000000000 +0100 +++ slang-fixed/CMakeLists.txt 2026-10-06 16:13:32.889174524 +0200 @@ -850,6 +850,12 @@ DIRECTORY "${slang_SOURCE_DIR}/include" DESTINATION . PATTERN ".*" EXCLUDE + PATTERN "slang.h" EXCLUDE +) +install( + FILES "${slang_SOURCE_DIR}/include/slang.h" + DESTINATION include + RENAME shader-slang.h ) include(SlangUserSkills) slang_install_user_skills() @@ -931,3 +937,15 @@ "${PROJECT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake" DESTINATION ${SLANG_CMAKE_CONFIG_DIR} ) + +# Update the public headers that include the renamed API header. +install(CODE [[ + set(header_dir "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/include") + if(EXISTS "${header_dir}/shader-slang.h") + foreach(header slang-gfx.h slang-deprecated.h slang-com-helper.h) + file(READ "${header_dir}/${header}" contents) + string(REPLACE "#include \"slang.h\"" "#include \"shader-slang.h\"" contents "${contents}") + file(WRITE "${header_dir}/${header}" "${contents}") + endforeach() + endif() +]]) diff -ur slang/source/slang/CMakeLists.txt slang-fixed/source/slang/CMakeLists.txt --- slang/source/slang/CMakeLists.txt 2000-01-01 01:00:00.000000000 +0100 +++ slang-fixed/source/slang/CMakeLists.txt 2026-10-06 16:13:32.831942112 +0200 @@ -294,9 +294,11 @@ libcmark-gfm ) set(slang_interface_args INCLUDE_DIRECTORIES_PUBLIC ${slang_SOURCE_DIR}/include) +file(GLOB slang_public_headers ${slang_SOURCE_DIR}/include/slang*.h) +list(REMOVE_ITEM slang_public_headers ${slang_SOURCE_DIR}/include/slang.h) set(slang_public_lib_args PUBLIC_HEADERS - ${slang_SOURCE_DIR}/include/slang*.h + ${slang_public_headers} ${CMAKE_CURRENT_BINARY_DIR}/slang-version-header/*.h LINK_WITH_PRIVATE $,slang-embedded-core-module,slang-no-embedded-core-module>