yum-mirror/slang

Making it easier to work with shaders

git clone https://git.yummers.dev/yum-mirror/slang

yumfix compiler bug lolf8cb9c4d6

master
9 files

files

DebugInfo.h3.5 KiB
NonSemanticShaderDebugInfo100.h6.7 KiB
OpenCLDebugInfo100.h4.9 KiB
README.md2.3 KiB
build-version.inc54 B
core_tables_body.inc740.5 KiB
core_tables_header.inc5.6 KiB
generators.inc3.0 KiB
options-pinned.h8.9 KiB

Slang SPIR-V Tools

The spir-v tools are needed in the Slang project in order to be able to build glslang. We don't necessarily want/need to build all the spir-v tools - but we do need the files that are generated as part of this process. Those files are then stored in this folder, so that they can just be used without needing to be created as part of the Slang build process.

glslang depends on spirv-tools, and specifies an exact version to use, as such, spirv-tools should only be updated along with glslang.

On Linux, you can run the external/bump-glslang.sh script.

On any platform, you can follow the below instructions after updating glslang:

To build spirv-tools we need cmake. On windows we can use cmake with the gui interface.

Inside the external/spirv-tools directory make a directory build.vs which is where we are going to generate all the files.

Make sure that there is a suitable version of spirv-headers in external/spirv-tools/external. First delete one if its there, and then from the external/spirv-tools directory do.

git clone https://github.com/KhronosGroup/SPIRV-Headers.git external/spirv-headers

You may need to make sure you have the other dependencies that spirv-tools requires as described on their github main page...

https://github.com/KhronosGroup/SPIRV-Tools

At the time of writing in external/spirv-tools the following were needed

git clone https://github.com/google/effcee.git external/effcee
git clone https://github.com/google/re2.git external/re2
git clone https://github.com/abseil/abseil-cpp external/abseil_cpp

Next run the cmake gui. Set the source path to be external/spirv-tools (in the slang directory), and then set the 'where to build binaries' to external/spirv-tools/build.vs (or however you named that file. Then click configure and once that is done 'generate'.

Now go into to the build.vs directory and open spirv-tools.sln with Visual Studio and compile. This will generate many of the files needed, once regular C++/C compilation has started all of the files should have been created.

Delete all the '.inc' and '.h' files in this directory. Now copy the files with '.inc' and '.h' extensions from the build.vs directory and copy it into this directory.