From 6c4012f9c43c2aecc2e78e94db4c98174e418200 Mon Sep 17 00:00:00 2001 From: Igor Shaposhnik Date: Thu, 20 May 2021 15:14:09 +0300 Subject: [PATCH] Add Vulkan tutorial shaders to lazy check --- .github/workflows/lazy.yml | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/.github/workflows/lazy.yml b/.github/workflows/lazy.yml index 5d6bc561fd..aacbfaf33b 100644 --- a/.github/workflows/lazy.yml +++ b/.github/workflows/lazy.yml @@ -44,3 +44,35 @@ jobs: run: cargo build --release --features spv-in,msl-out --bin naga - name: Convert shaders run: for file in data/*.spv ; do echo "Translating" ${file} && target/release/naga --validate 27 ${file} ${file}.metal; done + parse-vulkan-tutorial-shaders: + name: Parse Sascha Willems Vulkan tutorial shaders + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: actions-rs/toolchain@v1 + with: + profile: minimal + toolchain: stable + - name: Download shaders + run: git clone https://github.com/SaschaWillems/Vulkan.git + - name: Build Naga + run: cargo build --release --features spv-in,msl-out --bin naga + - name: Convert metal shaders + run: | + # No needed to stop workflow if we can't validate one file + set +e + touch counter + SUCCESS_RESULT_COUNT=0 + FILE_COUNT=0 + mkdir -p out + find "Vulkan/data/shaders/glsl/" -name '*.spv' | while read fname; + do + echo "Convert: $fname" + FILE_COUNT=$((FILE_COUNT+1)) + target/release/naga --validate 27 $(realpath ${fname}) out/$(basename ${fname}).metal + if [[ $? -eq 0 ]]; then + SUCCESS_RESULT_COUNT=$((SUCCESS_RESULT_COUNT + 1)) + fi + echo "Result: $(expr $FILE_COUNT - $SUCCESS_RESULT_COUNT) / $FILE_COUNT" > counter + done + cat counter