diff options
| author | jsmall-nvidia <jsmall@nvidia.com> | 2022-07-21 17:10:14 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-07-21 17:10:14 -0400 |
| commit | 91c8c3f32c4b827dedc74d2ecdfe72a3403fc357 (patch) | |
| tree | 8bc50653dbc9ca839060d51ef597eebca9d0db49 | |
| parent | d118134df5ae76fcc26626e771f4ca03a2fb43f1 (diff) | |
Upgrade SPIR-V Tools and GLSLANG (#2335)
* #include an absolute path didn't work - because paths were taken to always be relative.
* Upgrade of SPIR-V Tools
* Use slang-pack to get slang-glslang (previously was in slang-binaries)
Update slang-glslang used
| -rw-r--r-- | build/visual-studio/slang/slang.vcxproj | 12 | ||||
| -rw-r--r-- | deps/target-deps.json | 14 | ||||
| m--------- | external/spirv-tools | 0 | ||||
| -rw-r--r-- | premake5.lua | 4 |
4 files changed, 23 insertions, 7 deletions
diff --git a/build/visual-studio/slang/slang.vcxproj b/build/visual-studio/slang/slang.vcxproj index f193e36b5..db1208cfb 100644 --- a/build/visual-studio/slang/slang.vcxproj +++ b/build/visual-studio/slang/slang.vcxproj @@ -178,7 +178,7 @@ </Link>
<PostBuildEvent>
<Command>IF EXIST ..\..\..\external\slang-llvm\bin\windows-x86\release\slang-llvm.dll\ (xcopy /Q /E /Y /I ..\..\..\external\slang-llvm\bin\windows-x86\release\slang-llvm.dll ..\..\..\bin\windows-x86\debug > nul) ELSE (xcopy /Q /Y /I ..\..\..\external\slang-llvm\bin\windows-x86\release\slang-llvm.dll ..\..\..\bin\windows-x86\debug > nul)
-IF EXIST ..\..\..\external\slang-binaries\bin\windows-x86\slang-glslang.dll\ (xcopy /Q /E /Y /I ..\..\..\external\slang-binaries\bin\windows-x86\slang-glslang.dll ..\..\..\bin\windows-x86\debug > nul) ELSE (xcopy /Q /Y /I ..\..\..\external\slang-binaries\bin\windows-x86\slang-glslang.dll ..\..\..\bin\windows-x86\debug > nul)</Command>
+IF EXIST ..\..\..\external\slang-glslang\bin\windows-x86\release\slang-glslang.dll\ (xcopy /Q /E /Y /I ..\..\..\external\slang-glslang\bin\windows-x86\release\slang-glslang.dll ..\..\..\bin\windows-x86\debug > nul) ELSE (xcopy /Q /Y /I ..\..\..\external\slang-glslang\bin\windows-x86\release\slang-glslang.dll ..\..\..\bin\windows-x86\debug > nul)</Command>
</PostBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
@@ -200,7 +200,7 @@ IF EXIST ..\..\..\external\slang-binaries\bin\windows-x86\slang-glslang.dll\ (xc </Link>
<PostBuildEvent>
<Command>IF EXIST ..\..\..\external\slang-llvm\bin\windows-x64\release\slang-llvm.dll\ (xcopy /Q /E /Y /I ..\..\..\external\slang-llvm\bin\windows-x64\release\slang-llvm.dll ..\..\..\bin\windows-x64\debug > nul) ELSE (xcopy /Q /Y /I ..\..\..\external\slang-llvm\bin\windows-x64\release\slang-llvm.dll ..\..\..\bin\windows-x64\debug > nul)
-IF EXIST ..\..\..\external\slang-binaries\bin\windows-x64\slang-glslang.dll\ (xcopy /Q /E /Y /I ..\..\..\external\slang-binaries\bin\windows-x64\slang-glslang.dll ..\..\..\bin\windows-x64\debug > nul) ELSE (xcopy /Q /Y /I ..\..\..\external\slang-binaries\bin\windows-x64\slang-glslang.dll ..\..\..\bin\windows-x64\debug > nul)</Command>
+IF EXIST ..\..\..\external\slang-glslang\bin\windows-x64\release\slang-glslang.dll\ (xcopy /Q /E /Y /I ..\..\..\external\slang-glslang\bin\windows-x64\release\slang-glslang.dll ..\..\..\bin\windows-x64\debug > nul) ELSE (xcopy /Q /Y /I ..\..\..\external\slang-glslang\bin\windows-x64\release\slang-glslang.dll ..\..\..\bin\windows-x64\debug > nul)</Command>
</PostBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug aarch64|ARM'">
@@ -222,7 +222,7 @@ IF EXIST ..\..\..\external\slang-binaries\bin\windows-x64\slang-glslang.dll\ (xc </Link>
<PostBuildEvent>
<Command>IF EXIST ..\..\..\external\slang-llvm\bin\windows-aarch64\release\slang-llvm.dll\ (xcopy /Q /E /Y /I ..\..\..\external\slang-llvm\bin\windows-aarch64\release\slang-llvm.dll ..\..\..\bin\windows-aarch64\debug > nul) ELSE (xcopy /Q /Y /I ..\..\..\external\slang-llvm\bin\windows-aarch64\release\slang-llvm.dll ..\..\..\bin\windows-aarch64\debug > nul)
-IF EXIST ..\..\..\external\slang-binaries\bin\windows-aarch64\slang-glslang.dll\ (xcopy /Q /E /Y /I ..\..\..\external\slang-binaries\bin\windows-aarch64\slang-glslang.dll ..\..\..\bin\windows-aarch64\debug > nul) ELSE (xcopy /Q /Y /I ..\..\..\external\slang-binaries\bin\windows-aarch64\slang-glslang.dll ..\..\..\bin\windows-aarch64\debug > nul)</Command>
+IF EXIST ..\..\..\external\slang-glslang\bin\windows-aarch64\release\slang-glslang.dll\ (xcopy /Q /E /Y /I ..\..\..\external\slang-glslang\bin\windows-aarch64\release\slang-glslang.dll ..\..\..\bin\windows-aarch64\debug > nul) ELSE (xcopy /Q /Y /I ..\..\..\external\slang-glslang\bin\windows-aarch64\release\slang-glslang.dll ..\..\..\bin\windows-aarch64\debug > nul)</Command>
</PostBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
@@ -248,7 +248,7 @@ IF EXIST ..\..\..\external\slang-binaries\bin\windows-aarch64\slang-glslang.dll\ </Link>
<PostBuildEvent>
<Command>IF EXIST ..\..\..\external\slang-llvm\bin\windows-x86\release\slang-llvm.dll\ (xcopy /Q /E /Y /I ..\..\..\external\slang-llvm\bin\windows-x86\release\slang-llvm.dll ..\..\..\bin\windows-x86\release > nul) ELSE (xcopy /Q /Y /I ..\..\..\external\slang-llvm\bin\windows-x86\release\slang-llvm.dll ..\..\..\bin\windows-x86\release > nul)
-IF EXIST ..\..\..\external\slang-binaries\bin\windows-x86\slang-glslang.dll\ (xcopy /Q /E /Y /I ..\..\..\external\slang-binaries\bin\windows-x86\slang-glslang.dll ..\..\..\bin\windows-x86\release > nul) ELSE (xcopy /Q /Y /I ..\..\..\external\slang-binaries\bin\windows-x86\slang-glslang.dll ..\..\..\bin\windows-x86\release > nul)</Command>
+IF EXIST ..\..\..\external\slang-glslang\bin\windows-x86\release\slang-glslang.dll\ (xcopy /Q /E /Y /I ..\..\..\external\slang-glslang\bin\windows-x86\release\slang-glslang.dll ..\..\..\bin\windows-x86\release > nul) ELSE (xcopy /Q /Y /I ..\..\..\external\slang-glslang\bin\windows-x86\release\slang-glslang.dll ..\..\..\bin\windows-x86\release > nul)</Command>
</PostBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
@@ -274,7 +274,7 @@ IF EXIST ..\..\..\external\slang-binaries\bin\windows-x86\slang-glslang.dll\ (xc </Link>
<PostBuildEvent>
<Command>IF EXIST ..\..\..\external\slang-llvm\bin\windows-x64\release\slang-llvm.dll\ (xcopy /Q /E /Y /I ..\..\..\external\slang-llvm\bin\windows-x64\release\slang-llvm.dll ..\..\..\bin\windows-x64\release > nul) ELSE (xcopy /Q /Y /I ..\..\..\external\slang-llvm\bin\windows-x64\release\slang-llvm.dll ..\..\..\bin\windows-x64\release > nul)
-IF EXIST ..\..\..\external\slang-binaries\bin\windows-x64\slang-glslang.dll\ (xcopy /Q /E /Y /I ..\..\..\external\slang-binaries\bin\windows-x64\slang-glslang.dll ..\..\..\bin\windows-x64\release > nul) ELSE (xcopy /Q /Y /I ..\..\..\external\slang-binaries\bin\windows-x64\slang-glslang.dll ..\..\..\bin\windows-x64\release > nul)</Command>
+IF EXIST ..\..\..\external\slang-glslang\bin\windows-x64\release\slang-glslang.dll\ (xcopy /Q /E /Y /I ..\..\..\external\slang-glslang\bin\windows-x64\release\slang-glslang.dll ..\..\..\bin\windows-x64\release > nul) ELSE (xcopy /Q /Y /I ..\..\..\external\slang-glslang\bin\windows-x64\release\slang-glslang.dll ..\..\..\bin\windows-x64\release > nul)</Command>
</PostBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release aarch64|ARM'">
@@ -300,7 +300,7 @@ IF EXIST ..\..\..\external\slang-binaries\bin\windows-x64\slang-glslang.dll\ (xc </Link>
<PostBuildEvent>
<Command>IF EXIST ..\..\..\external\slang-llvm\bin\windows-aarch64\release\slang-llvm.dll\ (xcopy /Q /E /Y /I ..\..\..\external\slang-llvm\bin\windows-aarch64\release\slang-llvm.dll ..\..\..\bin\windows-aarch64\release > nul) ELSE (xcopy /Q /Y /I ..\..\..\external\slang-llvm\bin\windows-aarch64\release\slang-llvm.dll ..\..\..\bin\windows-aarch64\release > nul)
-IF EXIST ..\..\..\external\slang-binaries\bin\windows-aarch64\slang-glslang.dll\ (xcopy /Q /E /Y /I ..\..\..\external\slang-binaries\bin\windows-aarch64\slang-glslang.dll ..\..\..\bin\windows-aarch64\release > nul) ELSE (xcopy /Q /Y /I ..\..\..\external\slang-binaries\bin\windows-aarch64\slang-glslang.dll ..\..\..\bin\windows-aarch64\release > nul)</Command>
+IF EXIST ..\..\..\external\slang-glslang\bin\windows-aarch64\release\slang-glslang.dll\ (xcopy /Q /E /Y /I ..\..\..\external\slang-glslang\bin\windows-aarch64\release\slang-glslang.dll ..\..\..\bin\windows-aarch64\release > nul) ELSE (xcopy /Q /Y /I ..\..\..\external\slang-glslang\bin\windows-aarch64\release\slang-glslang.dll ..\..\..\bin\windows-aarch64\release > nul)</Command>
</PostBuildEvent>
</ItemDefinitionGroup>
<ItemGroup>
diff --git a/deps/target-deps.json b/deps/target-deps.json index 861f18289..142265d2f 100644 --- a/deps/target-deps.json +++ b/deps/target-deps.json @@ -15,6 +15,20 @@ } }, { + "name" : "slang-glslang", + "baseUrl" : "https://github.com/shader-slang/slang-glslang/releases/download/v11.10.0/", + "optional" : true, + "packages" : + { + "windows-x86_64" : { "type" : "url", "path" : "slang-glslang-11.10.0-windows-x64-release.zip" }, + "windows-x86" : { "type": "url", "path" : "slang-glslang-11.10.0-windows-win32-release.zip" }, + "linux-x86_64" : { "type": "url", "path" : "slang-glslang-11.10.0-linux-x64-release.zip" }, + "linux-x86" : { "type": "url", "path" : "slang-glslang-11.10.0-linux-x86-release.zip" }, + "macosx-x86_64" : { "type": "url", "path" : "slang-glslang-11.10.0-macosx-x86_64-release.zip" }, + "windows-aarch64" : { "type" : "url", "path" : "slang-glslang-11.10.0-windows-aarch64-release.zip" } + } + }, + { "name" : "dxc", "type" : "submodule" }, diff --git a/external/spirv-tools b/external/spirv-tools -Subproject eb5fb4d73cdba23f52b24c1d92d8418120f4862 +Subproject 60761def49719d66d90cede125ac253c1883a51 diff --git a/premake5.lua b/premake5.lua index 04649689e..6cad48349 100644 --- a/premake5.lua +++ b/premake5.lua @@ -1399,13 +1399,15 @@ tool "slangd" } end + local slangGlslangPath = deps:getProjectRelativePath("slang-glslang", "../../..") + -- If we are not building glslang from source, then be -- sure to copy a binary copy over to the output directory if not buildGlslang then filter { "system:linux or macosx or windows" } local sharedLibName = slangUtil.getSharedLibraryFileName(targetInfo, "slang-glslang") postbuildcommands { - "{COPY} ../../../external/slang-binaries/bin/" .. targetName .. "/" .. sharedLibName .. " %{cfg.targetdir}" + "{COPY} " .. slangGlslangPath .. "/bin/" .. targetName .. "/release/" .. sharedLibName .. " %{cfg.targetdir}" } end |
