diff --git a/ports/shader-slang/portfile.cmake b/ports/shader-slang/portfile.cmake index 841880cd45..3cc03b7e0d 100644 --- a/ports/shader-slang/portfile.cmake +++ b/ports/shader-slang/portfile.cmake @@ -17,7 +17,7 @@ if(key STREQUAL "windows-x64" OR VCPKG_SHADER_SLANG_UPDATE) ARCHIVE URLS "https://github.com/shader-slang/slang/releases/download/v${VERSION}/slang-${VERSION}-windows-x86_64.zip" FILENAME "slang-${VERSION}-windows-x86_64.zip" - SHA512 5de3d2d76f22c9a00783236f3b6ccf8d4acbebb316f05d4593217781465af90cf26a34810de2242d33af614c26993d315d6774c1f957b294efd9ddff305101ac + SHA512 82533b688e100a1aba34be4ae5ef30cda158d7bb7f06f7f6d02a9d3b08b69277f4edc6650ed60967162b812835c9c8b5a85defb21aef0012a00dad5344340111 ) endif() if(key STREQUAL "windows-arm64" OR VCPKG_SHADER_SLANG_UPDATE) @@ -25,7 +25,7 @@ if(key STREQUAL "windows-arm64" OR VCPKG_SHADER_SLANG_UPDATE) ARCHIVE URLS "https://github.com/shader-slang/slang/releases/download/v${VERSION}/slang-${VERSION}-windows-aarch64.zip" FILENAME "slang-${VERSION}-windows-aarch64.zip" - SHA512 1381d4c9a925e6c586c358614eb57145125c04b95fcfc3a71f82d2ba6a6e712b93ba2969e4a3bb5afeea5556974f8182940f278fcec666b8a70cbb3aeb40fbcd + SHA512 4962ec98bf61bb15296697681d8070a59c916eb583831bfc611684cbbf459b17e197c068862357bb7cf7160d14548a01c206723338c8e576db4103fe7dce6778 ) endif() if(key STREQUAL "macosx-x64" OR VCPKG_SHADER_SLANG_UPDATE) @@ -33,7 +33,7 @@ if(key STREQUAL "macosx-x64" OR VCPKG_SHADER_SLANG_UPDATE) ARCHIVE URLS "https://github.com/shader-slang/slang/releases/download/v${VERSION}/slang-${VERSION}-macos-x86_64.zip" FILENAME "slang-${VERSION}-macos-x86_64.zip" - SHA512 612165951088fa1ab1e74eb90c44f2f11e2ca2fef402fca0f43139ff10f49f8598fc4ab574f404cdda78730cf68f01e51df826f5516b88dab55b3e76cf21f3ce + SHA512 04f23543163bba57e68f130ee67e0de2a405b7d69f2a04c1a115432bd4b18e8ce93d6ae146616e06843bac9bbf6eaec315e05c021faa0dc383a870df1e5649ef ) endif() if(key STREQUAL "macosx-arm64" OR VCPKG_SHADER_SLANG_UPDATE) @@ -41,7 +41,7 @@ if(key STREQUAL "macosx-arm64" OR VCPKG_SHADER_SLANG_UPDATE) ARCHIVE URLS "https://github.com/shader-slang/slang/releases/download/v${VERSION}/slang-${VERSION}-macos-aarch64.zip" FILENAME "slang-${VERSION}-macos-aarch64.zip" - SHA512 e4153960525224c4cbc6d3bb9c8de2842f1ebf3f21400144566af009d16fd2c086eb8bbe155eca2863cb81d2140d2856c2b65fb92332af46f8a8db024e4eeaf3 + SHA512 1f62de8a8f8b364c2b45dd1cd4781ebd3823fde4ca81b560a068638ac6662e6ef1143cd9f161bd401185a2b2a3df4b553b14c10e8fd042babbe057456cf17226 ) endif() if(key STREQUAL "linux-x64" OR VCPKG_SHADER_SLANG_UPDATE) @@ -49,7 +49,7 @@ if(key STREQUAL "linux-x64" OR VCPKG_SHADER_SLANG_UPDATE) ARCHIVE URLS "https://github.com/shader-slang/slang/releases/download/v${VERSION}/slang-${VERSION}-linux-x86_64.zip" FILENAME "slang-${VERSION}-linux-x86_64.zip" - SHA512 84a1423d38ae1708f3aba10ba8f535d847eba74b10c6a576b8b5597ec222c8b7a2acbc35ddad8386f32b7b22f6216476b7af3cef7ef6f74bf95501617a614765 + SHA512 9f13335f5d5599fab5c4ba17ee6003542f41e925e9f4b0c9695910d6012072cd0350a5b5e1e745c97375ece98cd9b3e4ca694c4160a74b0cf33309864186d4f7 ) endif() if(key STREQUAL "linux-arm64" OR VCPKG_SHADER_SLANG_UPDATE) @@ -57,7 +57,7 @@ if(key STREQUAL "linux-arm64" OR VCPKG_SHADER_SLANG_UPDATE) ARCHIVE URLS "https://github.com/shader-slang/slang/releases/download/v${VERSION}/slang-${VERSION}-linux-aarch64.zip" FILENAME "slang-${VERSION}-linux-aarch64.zip" - SHA512 62adeb97539270cb31fdc27396a62ade77d8a4537e8866bb89af9f249a2254ef35938cc301049470bd4c890a1b65782d78587d5c24ea24d0d5c699a14846475a + SHA512 2b8b42c2ada7dc76e246a5668d01a416a99ebe2bcececabdbc43733ffe30ce743c4607ba84ce5e2682702ffd26f84ef2928c5f5a3a2cef860eaa15c384b7ee47 ) endif() if(NOT ARCHIVE) @@ -110,11 +110,25 @@ endif() # Must manually copy some tool dependencies since vcpkg can't copy them automagically for us file(INSTALL ${dyn_libs} DESTINATION "${CURRENT_PACKAGES_DIR}/tools/shader-slang") -vcpkg_copy_tools(TOOL_NAMES slangc slangd SEARCH_DIR "${BINDIST_PATH}/bin") +vcpkg_copy_tools(TOOL_NAMES slangc slangd slangi SEARCH_DIR "${BINDIST_PATH}/bin") file(GLOB headers "${BINDIST_PATH}/include/*.h") file(INSTALL ${headers} DESTINATION "${CURRENT_PACKAGES_DIR}/include") +block(SCOPE_FOR VARIABLES) + set(VCPKG_BUILD_TYPE Release) # no debug binaries anyways + file(COPY "${BINDIST_PATH}/cmake" DESTINATION "${CURRENT_PACKAGES_DIR}") + vcpkg_cmake_config_fixup(CONFIG_PATH cmake PACKAGE_NAME slang) + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/slang/slangConfig.cmake" + [[HINTS ENV PATH "${PACKAGE_PREFIX_DIR}/bin"]] + [[PATHS "${PACKAGE_PREFIX_DIR}/tools/shader-slang" NO_DEFAULT_PATH REQUIRED]] + ) + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/slang/slangConfigVersion.cmake" + [[if("${CMAKE_SIZEOF_VOID_P}" STREQUAL ""]] + [[if(#[=[ host tool ]=] "TRUE"]] + ) +endblock() + vcpkg_install_copyright( FILE_LIST "${BINDIST_PATH}/LICENSE" COMMENT #[[ from README ]] [[ diff --git a/ports/shader-slang/vcpkg.json b/ports/shader-slang/vcpkg.json index 234e33ef58..02e6029cb2 100644 --- a/ports/shader-slang/vcpkg.json +++ b/ports/shader-slang/vcpkg.json @@ -1,8 +1,14 @@ { "name": "shader-slang", - "version": "2025.5", + "version": "2025.14.3", "description": "Slang is a shading language that makes it easier to build and maintain large shader codebases in a modular and extensible fashion, while also maintaining the highest possible performance on modern GPUs and graphics APIs. Slang is based on years of collaboration between researchers at NVIDIA, Carnegie Mellon University, and Stanford.", "homepage": "https://github.com/shader-slang/slang", "license": null, - "supports": "(arm64 | x64) & (linux | osx | windows) & !uwp" + "supports": "(arm64 | x64) & (linux | osx | windows) & !uwp & !(static & staticcrt)", + "dependencies": [ + { + "name": "vcpkg-cmake-config", + "host": true + } + ] } diff --git a/scripts/ci.baseline.txt b/scripts/ci.baseline.txt index 4a2ff8e4b1..1597ee80eb 100644 --- a/scripts/ci.baseline.txt +++ b/scripts/ci.baseline.txt @@ -911,7 +911,6 @@ septag-sx:x64-android=fail sfgui:arm-neon-android=fail sfgui:arm64-android=fail sfgui:x64-android=fail -shader-slang:x64-windows-static=fail # "Obsolete" and conflicts with microsoft-signalr signalrclient:arm-neon-android=skip signalrclient:arm64-android=skip diff --git a/scripts/test_ports/vcpkg-ci-shader-slang/portfile.cmake b/scripts/test_ports/vcpkg-ci-shader-slang/portfile.cmake new file mode 100644 index 0000000000..0860f0cf94 --- /dev/null +++ b/scripts/test_ports/vcpkg-ci-shader-slang/portfile.cmake @@ -0,0 +1,8 @@ +set(VCPKG_POLICY_EMPTY_PACKAGE enabled) + +vcpkg_cmake_configure( + SOURCE_PATH "${CURRENT_PORT_DIR}/project" + OPTIONS + "-Dslang_DIR=${CURRENT_HOST_INSTALLED_DIR}/share/slang" +) +vcpkg_cmake_build() diff --git a/scripts/test_ports/vcpkg-ci-shader-slang/project/CMakeLists.txt b/scripts/test_ports/vcpkg-ci-shader-slang/project/CMakeLists.txt new file mode 100644 index 0000000000..b986fbc04b --- /dev/null +++ b/scripts/test_ports/vcpkg-ci-shader-slang/project/CMakeLists.txt @@ -0,0 +1,15 @@ +cmake_minimum_required(VERSION 3.25) +project(shader-slang-test) + +find_package(slang CONFIG REQUIRED) + +set(CMAKE_EXECUTE_PROCESS_COMMAND_ECHO STDOUT) + +execute_process( + COMMAND "${SLANGC_EXECUTABLE}" -v + COMMAND_ERROR_IS_FATAL ANY +) + +add_custom_target(run-slang ALL + COMMAND slang::slangc -v +) diff --git a/scripts/test_ports/vcpkg-ci-shader-slang/vcpkg.json b/scripts/test_ports/vcpkg-ci-shader-slang/vcpkg.json new file mode 100644 index 0000000000..a4514ad878 --- /dev/null +++ b/scripts/test_ports/vcpkg-ci-shader-slang/vcpkg.json @@ -0,0 +1,17 @@ +{ + "name": "vcpkg-ci-shader-slang", + "version-string": "ci", + "description": "Test port to validate shader-slang", + "homepage": "https://github.com/microsoft/vcpkg", + "license": "MIT", + "dependencies": [ + { + "name": "shader-slang", + "host": true + }, + { + "name": "vcpkg-cmake", + "host": true + } + ] +} diff --git a/versions/baseline.json b/versions/baseline.json index 43dd997153..ea16d8bc27 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -8777,7 +8777,7 @@ "port-version": 0 }, "shader-slang": { - "baseline": "2025.5", + "baseline": "2025.14.3", "port-version": 0 }, "shaderc": { diff --git a/versions/s-/shader-slang.json b/versions/s-/shader-slang.json index 25593ad2f3..e033b4c3b1 100644 --- a/versions/s-/shader-slang.json +++ b/versions/s-/shader-slang.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "f12f02f75577d741813dddbccda3db91f7071191", + "version": "2025.14.3", + "port-version": 0 + }, { "git-tree": "095c3cc09131d937f99890958174b0d285ec609e", "version": "2025.5",