diff options
| -rw-r--r-- | CMakeLists.txt | 8 | ||||
| -rw-r--r-- | source/core/slang-render-api-util.cpp | 8 | ||||
| -rw-r--r-- | tools/render-test/slang-support.cpp | 3 | ||||
| -rw-r--r-- | tools/slang-test/slang-test-main.cpp | 4 |
4 files changed, 14 insertions, 9 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index cc73d653b..dcb102ffb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -487,13 +487,21 @@ endif() if(SLANG_ENABLE_PREBUILT_BINARIES) if(CMAKE_SYSTEM_NAME MATCHES "Windows") + # DX Agility SDK requires the D3D12*.DLL files to be placed under a sub-directory, "D3D12". + # https://devblogs.microsoft.com/directx/gettingstarted-dx12agility/#d3d12sdkpath-should-not-be-the-same-directory-as-the-application-exe file(GLOB prebuilt_binaries "${CMAKE_SOURCE_DIR}/external/slang-binaries/bin/windows-x64/*") + file(GLOB prebuilt_d3d12_binaries "${CMAKE_SOURCE_DIR}/external/slang-binaries/bin/windows-x64/[dD]3[dD]12*") + list(REMOVE_ITEM prebuilt_binaries ${prebuilt_d3d12_binaries}) add_custom_target( copy-prebuilt-binaries ALL COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_BINARY_DIR}/$<CONFIG>/${runtime_subdir} COMMAND ${CMAKE_COMMAND} -E copy_if_different ${prebuilt_binaries} ${CMAKE_BINARY_DIR}/$<CONFIG>/${runtime_subdir} + COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_BINARY_DIR}/$<CONFIG>/${runtime_subdir}/D3D12 + COMMAND ${CMAKE_COMMAND} -E copy_if_different + ${prebuilt_d3d12_binaries} + ${CMAKE_BINARY_DIR}/$<CONFIG>/${runtime_subdir}/D3D12 VERBATIM ) endif() diff --git a/source/core/slang-render-api-util.cpp b/source/core/slang-render-api-util.cpp index 9dff5e90c..797d82cd7 100644 --- a/source/core/slang-render-api-util.cpp +++ b/source/core/slang-render-api-util.cpp @@ -267,17 +267,9 @@ static bool _canLoadSharedLibrary(const char* libName) #if SLANG_WINDOWS_FAMILY case RenderApiType::Vulkan: return _canLoadSharedLibrary("vulkan-1") || _canLoadSharedLibrary("vk_swiftshader"); case RenderApiType::WebGPU: -#if _DEBUG - // At the moment, some CI issue is preventing tests to run in Debug builds. - // As a work-around in order to allow us to enable tests in Release builds ASSP, - // we skip WebGPU tests in by returning false here. - // https://github.com/shader-slang/slang/issues/5233#issuecomment-2411380030 - return false; -#else return _canLoadSharedLibrary("webgpu_dawn") && _canLoadSharedLibrary("dxcompiler") && _canLoadSharedLibrary("dxil"); -#endif // if SLANG_DEBUG #elif SLANG_APPLE_FAMILY case RenderApiType::Vulkan: return true; case RenderApiType::Metal: return true; diff --git a/tools/render-test/slang-support.cpp b/tools/render-test/slang-support.cpp index 2de67e538..97f163261 100644 --- a/tools/render-test/slang-support.cpp +++ b/tools/render-test/slang-support.cpp @@ -122,6 +122,9 @@ void ShaderCompilerUtil::Output::reset() case SLANG_SOURCE_LANGUAGE_CUDA: spAddPreprocessorDefine(slangRequest, "__CUDA__", "1"); break; + case SLANG_SOURCE_LANGUAGE_WGSL: + spAddPreprocessorDefine(slangRequest, "__WGSL__", "1"); + break; default: assert(!"unexpected"); diff --git a/tools/slang-test/slang-test-main.cpp b/tools/slang-test/slang-test-main.cpp index 150e21d5d..c62e2b10e 100644 --- a/tools/slang-test/slang-test-main.cpp +++ b/tools/slang-test/slang-test-main.cpp @@ -1132,7 +1132,8 @@ static SlangResult _extractRenderTestRequirements(const CommandLine& cmdLine, Te break; case RenderApiType::WebGPU: target = SLANG_WGSL; - SLANG_ASSERT(!usePassthru); + nativeLanguage = SLANG_SOURCE_LANGUAGE_WGSL; + passThru = SLANG_PASS_THROUGH_TINT; break; } @@ -4661,6 +4662,7 @@ SlangResult innerMain(int argc, char** argv) for (auto& test : context.failedFileTests) { FileTestInfoImpl* fileTestInfo = static_cast<FileTestInfoImpl*>(test.Ptr()); + TestReporter::SuiteScope suiteScope(&reporter, "tests"); TestReporter::TestScope scope(&reporter, fileTestInfo->testName); reporter.addResult(TestResult::Fail); } |
