https://github.com/shader-slang/slang
Revision 12f7237e4060388494c549623f4a640327b7ca08 authored by Yong He on 15 November 2023, 01:46:05 UTC, committed by GitHub on 15 November 2023, 01:46:05 UTC
* Parse glsl buffer blocks to GLSLInterfaceBlockDecl

* Parse glsl local size layout declarations

* Parse (and ignore) glsl version directives

* spelling

* Better l-value interpretation for glsl interface blocks

* Better l-value interpretation for glsl interface blocks

* Add compile flag for enabling glsl

* Parse and ignore precision modifiers.

* Automatically import `glsl` module for compatiblity.

* Complete vector and matrix types for glsl

* Remove generated file from repo

* Bump .gitignore

* do not mark out globals as params

* Synthesize entrypoint layout from global inout vars.

* update test result.

* Allow HLSL semantic on global variables.

* Fix.

* Fix test.

* Fix win32 compile error.

* Add more builtin input/output and texture intrinsics.

* Add struct/array constructor syntax.

* Skip `#extension` lines.

* overide operator * for matrix/vector multiplication.

* Add `matrixCompMult`.

* Parse modifiers in for loop init var declr.

* Add more glsl intrinsics, add stage into to var layout.

* Allow `int[3] x` syntax.

* Fix array type syntax.

---------

Co-authored-by: Ellie Hermaszewska <ellieh@nvidia.com>
Co-authored-by: Yong He <yhe@nvidia.com>
1 parent c71b127
Raw File
Tip revision: 12f7237e4060388494c549623f4a640327b7ca08 authored by Yong He on 15 November 2023, 01:46:05 UTC
Add GLSL Compatibility. (#3321)
Tip revision: 12f7237
github_build.sh
#!/usr/bin/env bash
# Get premake
if [[ "aarch64" == "${ARCH}"  ]]; then
wget https://github.com/shader-slang/slang-binaries/blob/master/premake/premake-5.0.0-alpha16/bin/linux-arm64/premake5?raw=true -O premake5
else
wget https://github.com/shader-slang/slang-binaries/blob/master/premake/premake-5.0.0-alpha16/bin/linux-64/premake5?raw=true -O premake5
fi
chmod u+x premake5

# generate slang-tag-version.h 
git describe --tags | sed -e "s/\(.*\)/\#define SLANG_TAG_VERSION \"\1\"/" > slang-tag-version.h
cat slang-tag-version.h 

if [[ "" == "${TARGETARCH}" ]]; then
TARGETARCH=${ARCH}
fi

if [[ "${ARCH}" != "${TARGETARCH}" ]]; then

# Create the makefile
./premake5 gmake2 --cc=${CC} --enable-embed-stdlib=true --arch=${ARCH} --deps=true --no-progress=true

# Build the configuration
make config=${CONFIGURATION}_${ARCH} -j`nproc`

rm -rf ./bin

# Create the makefile
./premake5 gmake2 --cc=${CC} --enable-embed-stdlib=true --arch=${TARGETARCH} --deps=true --no-progress=true  --skip-source-generation=true --deploy-slang-llvm=false --deploy-slang-glslang=false

else
# Create the makefile
./premake5 gmake2 --cc=${CC} --enable-embed-stdlib=true --arch=${TARGETARCH} --deps=true --no-progress=true
fi

# Build the configuration
make config=${CONFIGURATION}_${TARGETARCH} -j`nproc`

back to top