summaryrefslogtreecommitdiff
path: root/build/visual-studio
diff options
context:
space:
mode:
authorjsmall-nvidia <jsmall@nvidia.com>2022-04-26 12:09:32 -0400
committerGitHub <noreply@github.com>2022-04-26 12:09:32 -0400
commit79dd12c21e8f5c5ce01051a280679cf6ac8ffe97 (patch)
tree705df0ab9047e4418a6218993cd0ddb2a46dffbc /build/visual-studio
parent66ad0072821b58318c6dc5d2d64c966e312951dd (diff)
Linking in DXC (#2190)
* #include an absolute path didn't work - because paths were taken to always be relative. * Compile to a dxil library. * Added CompileProduct. * Support handling of ModuleLibrary. * CacheBehavior -> Cache * Use CompileProduct for -r references. * CompileProduct -> Artifact. * Determining an artifact type on binding. * Determine binary linkability. * Added Artifact::exists. * Added ArtifactKeep. * Small fixes. * Small improvements to Artifact. * Add zip extension. * Fix some comments. * Fix multiple adding of PublicDecoration. Make public output export for DXIL/lib. Add checking for simpleDecorations such that only added once. * Use 'whole program' to identify library build. * Move slang-artifact into compiler-core. * Split out Keep free functions. * Artifact::Keep -> ArtifactKeep. * Handle libraries as artifacts. * Add -target dxil so test infrastructure knows it needs DXC. * Linking working in DXC. * Improve handling around emit for 'export'. * Add comment around Artifact name. * Render test working with linking. Co-authored-by: Theresa Foley <10618364+tangent-vector@users.noreply.github.com>
Diffstat (limited to 'build/visual-studio')
-rw-r--r--build/visual-studio/compiler-core/compiler-core.vcxproj2
-rw-r--r--build/visual-studio/compiler-core/compiler-core.vcxproj.filters6
-rw-r--r--build/visual-studio/slang/slang.vcxproj4
-rw-r--r--build/visual-studio/slang/slang.vcxproj.filters12
4 files changed, 16 insertions, 8 deletions
diff --git a/build/visual-studio/compiler-core/compiler-core.vcxproj b/build/visual-studio/compiler-core/compiler-core.vcxproj
index 028b85bce..8b71c250a 100644
--- a/build/visual-studio/compiler-core/compiler-core.vcxproj
+++ b/build/visual-studio/compiler-core/compiler-core.vcxproj
@@ -274,6 +274,7 @@
</Lib>
</ItemDefinitionGroup>
<ItemGroup>
+ <ClInclude Include="..\..\..\source\compiler-core\slang-artifact.h" />
<ClInclude Include="..\..\..\source\compiler-core\slang-command-line-args.h" />
<ClInclude Include="..\..\..\source\compiler-core\slang-core-diagnostics.h" />
<ClInclude Include="..\..\..\source\compiler-core\slang-diagnostic-sink.h" />
@@ -307,6 +308,7 @@
<ClInclude Include="..\..\..\source\compiler-core\windows\slang-win-visual-studio-util.h" />
</ItemGroup>
<ItemGroup>
+ <ClCompile Include="..\..\..\source\compiler-core\slang-artifact.cpp" />
<ClCompile Include="..\..\..\source\compiler-core\slang-command-line-args.cpp" />
<ClCompile Include="..\..\..\source\compiler-core\slang-core-diagnostics.cpp" />
<ClCompile Include="..\..\..\source\compiler-core\slang-diagnostic-sink.cpp" />
diff --git a/build/visual-studio/compiler-core/compiler-core.vcxproj.filters b/build/visual-studio/compiler-core/compiler-core.vcxproj.filters
index 76255bedf..2188afdd0 100644
--- a/build/visual-studio/compiler-core/compiler-core.vcxproj.filters
+++ b/build/visual-studio/compiler-core/compiler-core.vcxproj.filters
@@ -9,6 +9,9 @@
</Filter>
</ItemGroup>
<ItemGroup>
+ <ClInclude Include="..\..\..\source\compiler-core\slang-artifact.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
<ClInclude Include="..\..\..\source\compiler-core\slang-command-line-args.h">
<Filter>Header Files</Filter>
</ClInclude>
@@ -104,6 +107,9 @@
</ClInclude>
</ItemGroup>
<ItemGroup>
+ <ClCompile Include="..\..\..\source\compiler-core\slang-artifact.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
<ClCompile Include="..\..\..\source\compiler-core\slang-command-line-args.cpp">
<Filter>Source Files</Filter>
</ClCompile>
diff --git a/build/visual-studio/slang/slang.vcxproj b/build/visual-studio/slang/slang.vcxproj
index a19bd40f5..a2cdcbb50 100644
--- a/build/visual-studio/slang/slang.vcxproj
+++ b/build/visual-studio/slang/slang.vcxproj
@@ -305,7 +305,6 @@ IF EXIST ..\..\..\external\slang-binaries\bin\windows-aarch64\slang-glslang.dll\
</ItemDefinitionGroup>
<ItemGroup>
<ClInclude Include="..\..\..\slang.h" />
- <ClInclude Include="..\..\..\source\slang\slang-artifact.h" />
<ClInclude Include="..\..\..\source\slang\slang-ast-all.h" />
<ClInclude Include="..\..\..\source\slang\slang-ast-base.h" />
<ClInclude Include="..\..\..\source\slang\slang-ast-builder.h" />
@@ -405,6 +404,7 @@ IF EXIST ..\..\..\external\slang-binaries\bin\windows-aarch64\slang-glslang.dll\
<ClInclude Include="..\..\..\source\slang\slang-lower-to-ir.h" />
<ClInclude Include="..\..\..\source\slang\slang-mangle.h" />
<ClInclude Include="..\..\..\source\slang\slang-mangled-lexer.h" />
+ <ClInclude Include="..\..\..\source\slang\slang-module-library.h" />
<ClInclude Include="..\..\..\source\slang\slang-options.h" />
<ClInclude Include="..\..\..\source\slang\slang-parameter-binding.h" />
<ClInclude Include="..\..\..\source\slang\slang-parser.h" />
@@ -438,7 +438,6 @@ IF EXIST ..\..\..\external\slang-binaries\bin\windows-aarch64\slang-glslang.dll\
<ClCompile Include="..\..\..\prelude\slang-cuda-prelude.h.cpp" />
<ClCompile Include="..\..\..\prelude\slang-hlsl-prelude.h.cpp" />
<ClCompile Include="..\..\..\source\slang\slang-api.cpp" />
- <ClCompile Include="..\..\..\source\slang\slang-artifact.cpp" />
<ClCompile Include="..\..\..\source\slang\slang-ast-builder.cpp" />
<ClCompile Include="..\..\..\source\slang\slang-ast-decl.cpp" />
<ClCompile Include="..\..\..\source\slang\slang-ast-dump.cpp" />
@@ -542,6 +541,7 @@ IF EXIST ..\..\..\external\slang-binaries\bin\windows-aarch64\slang-glslang.dll\
<ClCompile Include="..\..\..\source\slang\slang-lower-to-ir.cpp" />
<ClCompile Include="..\..\..\source\slang\slang-mangle.cpp" />
<ClCompile Include="..\..\..\source\slang\slang-mangled-lexer.cpp" />
+ <ClCompile Include="..\..\..\source\slang\slang-module-library.cpp" />
<ClCompile Include="..\..\..\source\slang\slang-options.cpp" />
<ClCompile Include="..\..\..\source\slang\slang-parameter-binding.cpp" />
<ClCompile Include="..\..\..\source\slang\slang-parser.cpp" />
diff --git a/build/visual-studio/slang/slang.vcxproj.filters b/build/visual-studio/slang/slang.vcxproj.filters
index 1c7395675..e088ebbd0 100644
--- a/build/visual-studio/slang/slang.vcxproj.filters
+++ b/build/visual-studio/slang/slang.vcxproj.filters
@@ -12,9 +12,6 @@
<ClInclude Include="..\..\..\slang.h">
<Filter>Header Files</Filter>
</ClInclude>
- <ClInclude Include="..\..\..\source\slang\slang-artifact.h">
- <Filter>Header Files</Filter>
- </ClInclude>
<ClInclude Include="..\..\..\source\slang\slang-ast-all.h">
<Filter>Header Files</Filter>
</ClInclude>
@@ -312,6 +309,9 @@
<ClInclude Include="..\..\..\source\slang\slang-mangled-lexer.h">
<Filter>Header Files</Filter>
</ClInclude>
+ <ClInclude Include="..\..\..\source\slang\slang-module-library.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
<ClInclude Include="..\..\..\source\slang\slang-options.h">
<Filter>Header Files</Filter>
</ClInclude>
@@ -407,9 +407,6 @@
<ClCompile Include="..\..\..\source\slang\slang-api.cpp">
<Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\source\slang\slang-artifact.cpp">
- <Filter>Source Files</Filter>
- </ClCompile>
<ClCompile Include="..\..\..\source\slang\slang-ast-builder.cpp">
<Filter>Source Files</Filter>
</ClCompile>
@@ -719,6 +716,9 @@
<ClCompile Include="..\..\..\source\slang\slang-mangled-lexer.cpp">
<Filter>Source Files</Filter>
</ClCompile>
+ <ClCompile Include="..\..\..\source\slang\slang-module-library.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
<ClCompile Include="..\..\..\source\slang\slang-options.cpp">
<Filter>Source Files</Filter>
</ClCompile>