Skip to content

Commit be7bb47

Browse files
Beyleysilkdotnetdotnet-botPerksey
authored
Add SPIRV-Reflect bindings (dotnet#1403)
* Add SPIRV-Reflect submodule * Add SPIRVReflect native project * Update vkd3d shader compiler build to latest Zig * Add CI job to build SPIRV-Reflect * New binaries for SPIRV-Reflect on Linux 5.15.0-1035-azure #42-Ubuntu SMP Tue Feb 28 19:41:23 UTC 2023 (dotnet#1406) Co-authored-by: The Silk.NET Automaton <[email protected]> * Add SPIRV-Reflect native package to solution file * Add SPIRV-Reflect bindings * Split spirv.h into its own project * BuildTools: Use underscore converted trimming name when enum trimming This attempts to fix spirv.h enums without needing manual hacks Currently broken * Fixed in some ways, broken in others. * BuildTools: Dont check for duplicate old/new enum names with no-obsolete-enum control descriptor This fixes the Dim enum from SPIRV and Gamma enum from D2D * BuildTools: Fix LenientUnderscore with FormatR32ui SpvImageFormatR32ui now becomes Spv_Image_Format_R32ui instead of Spv_Image_FormatR32ui * New binaries for SPIRV-Reflect on Linux 5.15.0-1035-azure #42-Ubuntu SMP Tue Feb 28 19:41:23 UTC 2023 (dotnet#1414) Co-authored-by: The Silk.NET Automaton <[email protected]> * Rename SPIRVReflect to SPIRV.Reflect, change generation prefix This also excludes a C++ class `ShaderModule` which was eroneously generated And renames all the structs which conflict with vulkan types after the prefix change * Rename SPIRV class to Spv This removes potential problems from intersecting namespace and class names * SPIRV.Reflect: Reference base SPIRV project * SPIRV.Reflect: Rename anonymous enums to Constants * WebGPU: Use new enum names * Regenerate bindings * BuildTools: Add prefix overrides for enum trimming * SPIRV: Specify a prefix override to fix ImageChannelOrder * Native: Rename Silk.NET.SPIRVReflect.Native It now reflects the new name of the source package it belongs to * SPIRV.Reflect.Tests: Add basic InputVariables test * New binaries for DXVK on Linux 5.15.0-1036-azure dotnet#43-Ubuntu SMP Wed Mar 29 16:11:05 UTC 2023 (dotnet#1436) Co-authored-by: The Silk.NET Automaton <[email protected]> * New binaries for Assimp on Microsoft Windows 10.0.20348 (dotnet#1435) Co-authored-by: The Silk.NET Automaton <[email protected]> * New binaries for GLFW on Microsoft Windows 10.0.20348 (dotnet#1434) Co-authored-by: The Silk.NET Automaton <[email protected]> * New binaries for Vulkan Loader on Microsoft Windows 10.0.20348 (dotnet#1433) Co-authored-by: The Silk.NET Automaton <[email protected]> * New binaries for SPIRV-Reflect on Linux 5.15.0-1036-azure dotnet#43-Ubuntu SMP Wed Mar 29 16:11:05 UTC 2023 (dotnet#1432) Co-authored-by: The Silk.NET Automaton <[email protected]> * Look Gordon, a whitespace change! * If i make another commit will it work * Update WebGPU experiments to new naming * New binaries for DXVK on Linux 5.15.0-1036-azure dotnet#43-Ubuntu SMP Wed Mar 29 16:11:05 UTC 2023 (dotnet#1445) Co-authored-by: The Silk.NET Automaton <[email protected]> * New binaries for Assimp on Microsoft Windows 10.0.20348 (dotnet#1444) Co-authored-by: The Silk.NET Automaton <[email protected]> * Update GLFW binaries (dotnet#1443) * New binaries for GLFW on Microsoft Windows 10.0.20348 * New binaries for GLFW on Darwin 21.6.0 Darwin Kernel Version 21.6.0: Thu Mar 9 20:08:59 PST 2023; root:xnu-8020.240.18.700.8~1/RELEASE_X86_64 --------- Co-authored-by: The Silk.NET Automaton <[email protected]> * New binaries for Vulkan Loader on Microsoft Windows 10.0.20348 (dotnet#1442) Co-authored-by: The Silk.NET Automaton <[email protected]> * New binaries for SPIRV-Reflect on Linux 5.15.0-1036-azure dotnet#43-Ubuntu SMP Wed Mar 29 16:11:05 UTC 2023 (dotnet#1441) Co-authored-by: The Silk.NET Automaton <[email protected]> * Add copyright header to SPIRV-Reflect test * Attempt to bring back the 2.17 enum names as deprecated * BuildTools changes for bringing back the 2.17 enum names as deprecated * Regenerate bindings for efd969d * Account for one more edge case in the deprecated name resurgence * Pumped Up Kicks but it's not Pumped Up Kicks and I eat a shoe box * Fix lack of obsoletion message * Update sln --------- Co-authored-by: silkdotnet <[email protected]> Co-authored-by: The Silk.NET Automaton <[email protected]> Co-authored-by: Dylan Perks <[email protected]>
1 parent 5a707d6 commit be7bb47

File tree

345 files changed

+15256
-1322
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

345 files changed

+15256
-1322
lines changed
Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
name: SPIRV-Reflect
2+
on:
3+
push:
4+
branches-ignore:
5+
- "ci/*"
6+
- "develop/*"
7+
- "main"
8+
paths:
9+
- "build/submodules/SPIRV-Reflect"
10+
- "build/nuke/Build.Native.cs"
11+
- ".github/workflows/spirv-reflect.yml"
12+
jobs:
13+
Build:
14+
strategy:
15+
fail-fast: false
16+
matrix:
17+
env:
18+
- os: ubuntu-latest
19+
name: Linux
20+
nuke_invoke: ./build.sh
21+
extras: |
22+
sudo apt-get update
23+
sudo apt-get install -y build-essential
24+
name: ${{ matrix.env.name }} Build
25+
runs-on: ${{ matrix.env.os }}
26+
steps:
27+
- uses: actions/checkout@v2
28+
with:
29+
token: ${{ secrets.PUSHABLE_GITHUB_TOKEN }}
30+
- name: Checkout submodules, configure git
31+
run: |
32+
git submodule update --init --recursive --depth 0 build/submodules/SPIRV-Reflect
33+
git config --local user.email "[email protected]"
34+
git config --local user.name "The Silk.NET Automaton"
35+
- name: Extra prerequisites
36+
run: |
37+
echo running extras
38+
${{ matrix.env.extras }}
39+
- name: Install Zig
40+
uses: goto-bus-stop/setup-zig@v2
41+
- name: Setup .NET 6.0 and .NET 7.0
42+
uses: actions/setup-dotnet@v1
43+
with:
44+
dotnet-version: |
45+
6.0.201
46+
7.0.*
47+
- name: Build SPIRV-Reflect
48+
run: ${{ matrix.env.nuke_invoke }} SPIRVReflect
49+
env:
50+
PUSHABLE_GITHUB_TOKEN: ${{ secrets.PUSHABLE_GITHUB_TOKEN }}
51+

.gitmodules

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,3 +37,9 @@
3737
[submodule "build/submodules/SPIRV-Tools"]
3838
path = build/submodules/SPIRV-Tools
3939
url = https://github.com/KhronosGroup/SPIRV-Tools
40+
[submodule "build/submodules/SPIRV-Reflect"]
41+
path = build/submodules/SPIRV-Reflect
42+
url = https://github.com/KhronosGroup/SPIRV-Reflect
43+
[submodule "build/submodules/SPIRV-Headers"]
44+
path = build/submodules/SPIRV-Headers
45+
url = https://github.com/KhronosGroup/SPIRV-Headers

.nuke/build.schema.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,9 +159,11 @@
159159
"PushToNuGet",
160160
"RegenerateBindings",
161161
"Restore",
162+
"SDL2",
162163
"ShipApi",
163164
"SignPackages",
164165
"Sln",
166+
"SPIRVReflect",
165167
"SwiftShader",
166168
"Test",
167169
"ValidateSolution",
@@ -198,9 +200,11 @@
198200
"PushToNuGet",
199201
"RegenerateBindings",
200202
"Restore",
203+
"SDL2",
201204
"ShipApi",
202205
"SignPackages",
203206
"Sln",
207+
"SPIRVReflect",
204208
"SwiftShader",
205209
"Test",
206210
"ValidateSolution",

Silk.NET.sln

Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -574,6 +574,18 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.OpenXR.Extensions.
574574
EndProject
575575
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.OpenXR.Extensions.OPPO", "src\OpenXR\Extensions\Silk.NET.OpenXR.Extensions.OPPO\Silk.NET.OpenXR.Extensions.OPPO.csproj", "{ABC4717F-2863-4B79-8812-7C1D851EE336}"
576576
EndProject
577+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.SPIRV.Reflect.Native", "src\Native\Silk.NET.SPIRV.Reflect.Native\Silk.NET.SPIRV.Reflect.Native.csproj", "{F58B1280-668E-4B4A-ADA5-6F0F54B6295A}"
578+
EndProject
579+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SPIRV", "SPIRV", "{15FC3D1A-25D7-446B-87A7-B45BA3C2225F}"
580+
EndProject
581+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.SPIRV.Reflect", "src\SPIRV\Silk.NET.SPIRV.Reflect\Silk.NET.SPIRV.Reflect.csproj", "{535018A8-FFD8-4D3E-97FD-C6A3E23AF48A}"
582+
EndProject
583+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.SPIRV", "src\SPIRV\Silk.NET.SPIRV\Silk.NET.SPIRV.csproj", "{65E895B6-D0A6-4C5C-A090-07C7590F48B9}"
584+
EndProject
585+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.SPIRV.Reflect.Tests", "src\SPIRV\Silk.NET.SPIRV.Reflect.Tests\Silk.NET.SPIRV.Reflect.Tests.csproj", "{7DB60101-9D99-4FD6-89AD-29648F537333}"
586+
EndProject
587+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Silk.NET.Vulkan.Extensions.MSFT", "src\Vulkan\Extensions\Silk.NET.Vulkan.Extensions.MSFT\Silk.NET.Vulkan.Extensions.MSFT.csproj", "{22DA5C34-2859-4599-97DA-9F9E3B7CEEA4}"
588+
EndProject
577589
Global
578590
GlobalSection(SolutionConfigurationPlatforms) = preSolution
579591
Debug|Any CPU = Debug|Any CPU
@@ -3487,6 +3499,66 @@ Global
34873499
{ABC4717F-2863-4B79-8812-7C1D851EE336}.Release|x64.Build.0 = Release|Any CPU
34883500
{ABC4717F-2863-4B79-8812-7C1D851EE336}.Release|x86.ActiveCfg = Release|Any CPU
34893501
{ABC4717F-2863-4B79-8812-7C1D851EE336}.Release|x86.Build.0 = Release|Any CPU
3502+
{F58B1280-668E-4B4A-ADA5-6F0F54B6295A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
3503+
{F58B1280-668E-4B4A-ADA5-6F0F54B6295A}.Debug|Any CPU.Build.0 = Debug|Any CPU
3504+
{F58B1280-668E-4B4A-ADA5-6F0F54B6295A}.Debug|x64.ActiveCfg = Debug|Any CPU
3505+
{F58B1280-668E-4B4A-ADA5-6F0F54B6295A}.Debug|x64.Build.0 = Debug|Any CPU
3506+
{F58B1280-668E-4B4A-ADA5-6F0F54B6295A}.Debug|x86.ActiveCfg = Debug|Any CPU
3507+
{F58B1280-668E-4B4A-ADA5-6F0F54B6295A}.Debug|x86.Build.0 = Debug|Any CPU
3508+
{F58B1280-668E-4B4A-ADA5-6F0F54B6295A}.Release|Any CPU.ActiveCfg = Release|Any CPU
3509+
{F58B1280-668E-4B4A-ADA5-6F0F54B6295A}.Release|Any CPU.Build.0 = Release|Any CPU
3510+
{F58B1280-668E-4B4A-ADA5-6F0F54B6295A}.Release|x64.ActiveCfg = Release|Any CPU
3511+
{F58B1280-668E-4B4A-ADA5-6F0F54B6295A}.Release|x64.Build.0 = Release|Any CPU
3512+
{F58B1280-668E-4B4A-ADA5-6F0F54B6295A}.Release|x86.ActiveCfg = Release|Any CPU
3513+
{F58B1280-668E-4B4A-ADA5-6F0F54B6295A}.Release|x86.Build.0 = Release|Any CPU
3514+
{535018A8-FFD8-4D3E-97FD-C6A3E23AF48A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
3515+
{535018A8-FFD8-4D3E-97FD-C6A3E23AF48A}.Debug|Any CPU.Build.0 = Debug|Any CPU
3516+
{535018A8-FFD8-4D3E-97FD-C6A3E23AF48A}.Debug|x64.ActiveCfg = Debug|Any CPU
3517+
{535018A8-FFD8-4D3E-97FD-C6A3E23AF48A}.Debug|x64.Build.0 = Debug|Any CPU
3518+
{535018A8-FFD8-4D3E-97FD-C6A3E23AF48A}.Debug|x86.ActiveCfg = Debug|Any CPU
3519+
{535018A8-FFD8-4D3E-97FD-C6A3E23AF48A}.Debug|x86.Build.0 = Debug|Any CPU
3520+
{535018A8-FFD8-4D3E-97FD-C6A3E23AF48A}.Release|Any CPU.ActiveCfg = Release|Any CPU
3521+
{535018A8-FFD8-4D3E-97FD-C6A3E23AF48A}.Release|Any CPU.Build.0 = Release|Any CPU
3522+
{535018A8-FFD8-4D3E-97FD-C6A3E23AF48A}.Release|x64.ActiveCfg = Release|Any CPU
3523+
{535018A8-FFD8-4D3E-97FD-C6A3E23AF48A}.Release|x64.Build.0 = Release|Any CPU
3524+
{535018A8-FFD8-4D3E-97FD-C6A3E23AF48A}.Release|x86.ActiveCfg = Release|Any CPU
3525+
{535018A8-FFD8-4D3E-97FD-C6A3E23AF48A}.Release|x86.Build.0 = Release|Any CPU
3526+
{65E895B6-D0A6-4C5C-A090-07C7590F48B9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
3527+
{65E895B6-D0A6-4C5C-A090-07C7590F48B9}.Debug|Any CPU.Build.0 = Debug|Any CPU
3528+
{65E895B6-D0A6-4C5C-A090-07C7590F48B9}.Debug|x64.ActiveCfg = Debug|Any CPU
3529+
{65E895B6-D0A6-4C5C-A090-07C7590F48B9}.Debug|x64.Build.0 = Debug|Any CPU
3530+
{65E895B6-D0A6-4C5C-A090-07C7590F48B9}.Debug|x86.ActiveCfg = Debug|Any CPU
3531+
{65E895B6-D0A6-4C5C-A090-07C7590F48B9}.Debug|x86.Build.0 = Debug|Any CPU
3532+
{65E895B6-D0A6-4C5C-A090-07C7590F48B9}.Release|Any CPU.ActiveCfg = Release|Any CPU
3533+
{65E895B6-D0A6-4C5C-A090-07C7590F48B9}.Release|Any CPU.Build.0 = Release|Any CPU
3534+
{65E895B6-D0A6-4C5C-A090-07C7590F48B9}.Release|x64.ActiveCfg = Release|Any CPU
3535+
{65E895B6-D0A6-4C5C-A090-07C7590F48B9}.Release|x64.Build.0 = Release|Any CPU
3536+
{65E895B6-D0A6-4C5C-A090-07C7590F48B9}.Release|x86.ActiveCfg = Release|Any CPU
3537+
{65E895B6-D0A6-4C5C-A090-07C7590F48B9}.Release|x86.Build.0 = Release|Any CPU
3538+
{7DB60101-9D99-4FD6-89AD-29648F537333}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
3539+
{7DB60101-9D99-4FD6-89AD-29648F537333}.Debug|Any CPU.Build.0 = Debug|Any CPU
3540+
{7DB60101-9D99-4FD6-89AD-29648F537333}.Debug|x64.ActiveCfg = Debug|Any CPU
3541+
{7DB60101-9D99-4FD6-89AD-29648F537333}.Debug|x64.Build.0 = Debug|Any CPU
3542+
{7DB60101-9D99-4FD6-89AD-29648F537333}.Debug|x86.ActiveCfg = Debug|Any CPU
3543+
{7DB60101-9D99-4FD6-89AD-29648F537333}.Debug|x86.Build.0 = Debug|Any CPU
3544+
{7DB60101-9D99-4FD6-89AD-29648F537333}.Release|Any CPU.ActiveCfg = Release|Any CPU
3545+
{7DB60101-9D99-4FD6-89AD-29648F537333}.Release|Any CPU.Build.0 = Release|Any CPU
3546+
{7DB60101-9D99-4FD6-89AD-29648F537333}.Release|x64.ActiveCfg = Release|Any CPU
3547+
{7DB60101-9D99-4FD6-89AD-29648F537333}.Release|x64.Build.0 = Release|Any CPU
3548+
{7DB60101-9D99-4FD6-89AD-29648F537333}.Release|x86.ActiveCfg = Release|Any CPU
3549+
{7DB60101-9D99-4FD6-89AD-29648F537333}.Release|x86.Build.0 = Release|Any CPU
3550+
{22DA5C34-2859-4599-97DA-9F9E3B7CEEA4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
3551+
{22DA5C34-2859-4599-97DA-9F9E3B7CEEA4}.Debug|Any CPU.Build.0 = Debug|Any CPU
3552+
{22DA5C34-2859-4599-97DA-9F9E3B7CEEA4}.Debug|x64.ActiveCfg = Debug|Any CPU
3553+
{22DA5C34-2859-4599-97DA-9F9E3B7CEEA4}.Debug|x64.Build.0 = Debug|Any CPU
3554+
{22DA5C34-2859-4599-97DA-9F9E3B7CEEA4}.Debug|x86.ActiveCfg = Debug|Any CPU
3555+
{22DA5C34-2859-4599-97DA-9F9E3B7CEEA4}.Debug|x86.Build.0 = Debug|Any CPU
3556+
{22DA5C34-2859-4599-97DA-9F9E3B7CEEA4}.Release|Any CPU.ActiveCfg = Release|Any CPU
3557+
{22DA5C34-2859-4599-97DA-9F9E3B7CEEA4}.Release|Any CPU.Build.0 = Release|Any CPU
3558+
{22DA5C34-2859-4599-97DA-9F9E3B7CEEA4}.Release|x64.ActiveCfg = Release|Any CPU
3559+
{22DA5C34-2859-4599-97DA-9F9E3B7CEEA4}.Release|x64.Build.0 = Release|Any CPU
3560+
{22DA5C34-2859-4599-97DA-9F9E3B7CEEA4}.Release|x86.ActiveCfg = Release|Any CPU
3561+
{22DA5C34-2859-4599-97DA-9F9E3B7CEEA4}.Release|x86.Build.0 = Release|Any CPU
34903562
EndGlobalSection
34913563
GlobalSection(SolutionProperties) = preSolution
34923564
HideSolutionNode = FALSE
@@ -3766,6 +3838,12 @@ Global
37663838
{E1624E31-C702-42EC-AC47-20358B3CCF49} = {90471225-AC23-424E-B62E-F6EC4C6ECAC0}
37673839
{82D76E01-3166-4549-A433-4C2C4FD6788E} = {90471225-AC23-424E-B62E-F6EC4C6ECAC0}
37683840
{ABC4717F-2863-4B79-8812-7C1D851EE336} = {90471225-AC23-424E-B62E-F6EC4C6ECAC0}
3841+
{F58B1280-668E-4B4A-ADA5-6F0F54B6295A} = {72E7FA64-5B1E-477D-BD30-63B7F206B3C4}
3842+
{15FC3D1A-25D7-446B-87A7-B45BA3C2225F} = {16AFCF73-8CC1-4B5D-8969-A90F468DC6D5}
3843+
{535018A8-FFD8-4D3E-97FD-C6A3E23AF48A} = {15FC3D1A-25D7-446B-87A7-B45BA3C2225F}
3844+
{65E895B6-D0A6-4C5C-A090-07C7590F48B9} = {15FC3D1A-25D7-446B-87A7-B45BA3C2225F}
3845+
{7DB60101-9D99-4FD6-89AD-29648F537333} = {15FC3D1A-25D7-446B-87A7-B45BA3C2225F}
3846+
{22DA5C34-2859-4599-97DA-9F9E3B7CEEA4} = {49BC383A-D7E6-4013-93C7-371479B984CC}
37693847
EndGlobalSection
37703848
GlobalSection(ExtensibilityGlobals) = postSolution
37713849
SolutionGuid = {F5273D7F-3334-48DF-94E3-41AE6816CD4D}

build/cache/assimp.json.gz

0 Bytes
Binary file not shown.

build/cache/cl.json.gz

0 Bytes
Binary file not shown.

build/cache/core.json.gz

10.2 KB
Binary file not shown.

build/cache/d2d.json.gz

0 Bytes
Binary file not shown.

build/cache/d3d11.json.gz

52.5 KB
Binary file not shown.

build/cache/d3d12.json.gz

46.3 KB
Binary file not shown.

0 commit comments

Comments
 (0)