| | |
| | |
| | |
| | |
| | |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| |
|
| | |
| | |
| |
|
| | name: Continuous Deployment |
| |
|
| | on: |
| | workflow_dispatch: |
| | push: |
| | branches: |
| | - main |
| | paths-ignore: |
| | - 'README.md' |
| | - 'README-spirv-remap.txt' |
| | - 'LICENSE.txt' |
| | - 'CODE_OF_CONDUCT.md' |
| | - 'BUILD.*' |
| | - 'WORKSPACE' |
| | - 'kokoro/*' |
| | - 'make-revision' |
| | - 'Android.mk' |
| | - '_config.yml' |
| |
|
| | permissions: read-all |
| |
|
| | jobs: |
| | linux: |
| | runs-on: ${{matrix.os.genus}} |
| | permissions: |
| | contents: write |
| | strategy: |
| | fail-fast: false |
| | matrix: |
| | os: [{genus: ubuntu-20.04, family: linux}] |
| | compiler: [{cc: clang, cxx: clang++}, {cc: gcc, cxx: g++}] |
| | cmake_build_type: [Debug, Release] |
| | steps: |
| | - uses: actions/checkout@v3 |
| | - uses: actions/setup-python@v4 |
| | with: |
| | python-version: '3.7' |
| | - name: Install Ubuntu Package Dependencies |
| | run: | |
| | sudo apt-get -qq update |
| | sudo apt-get install -y clang-6.0 |
| | - name: Install GoogleTest |
| | run: | |
| | # check out pre-breakage version of googletest; can be deleted when |
| | # issue 3128 is fixed |
| | # git clone --depth=1 https://github.com/google/googletest.git External/googletest |
| | mkdir -p External/googletest |
| | cd External/googletest |
| | git init |
| | git remote add origin https://github.com/google/googletest.git |
| | git fetch --depth 1 origin 0c400f67fcf305869c5fb113dd296eca266c9725 |
| | git reset --hard FETCH_HEAD |
| | cd ../.. |
| | - name: Update Glslang Sources |
| | run: | |
| | ./update_glslang_sources.py |
| | - name: Build |
| | env: |
| | CC: ${{matrix.compiler.cc}} |
| | CXX: ${{matrix.compiler.cxx}} |
| | run: | |
| | mkdir build && cd build |
| | cmake -DCMAKE_BUILD_TYPE=${{matrix.cmake_build_type}} -DCMAKE_INSTALL_PREFIX=`pwd`/install .. |
| | make -j4 install |
| | - name: Test |
| | run: | |
| | cd build |
| | ctest --output-on-failure && |
| | cd ../Test && ./runtests |
| | - name: Zip |
| | if: ${{ matrix.compiler.cc == 'clang' }} |
| | env: |
| | ARCHIVE: glslang-main-${{matrix.os.family}}-${{matrix.cmake_build_type}}.zip |
| | run: | |
| | cd build/install |
| | zip ${ARCHIVE} \ |
| | bin/glslangValidator \ |
| | include/glslang/* \ |
| | include/glslang/**/* \ |
| | lib/libGenericCodeGen.a \ |
| | lib/libglslang.a \ |
| | lib/libglslang-default-resource-limits.a \ |
| | lib/libHLSL.a \ |
| | lib/libMachineIndependent.a \ |
| | lib/libOGLCompiler.a \ |
| | lib/libOSDependent.a \ |
| | lib/libSPIRV.a \ |
| | lib/libSPVRemapper.a \ |
| | lib/libSPIRV-Tools.a \ |
| | lib/libSPIRV-Tools-opt.a |
| | - name: Deploy |
| | if: ${{ matrix.compiler.cc == 'clang' }} |
| | env: |
| | ARCHIVE: glslang-main-${{matrix.os.family}}-${{matrix.cmake_build_type}}.zip |
| | uses: actions/github-script@v6 |
| | with: |
| | script: | |
| | const script = require('.github/workflows/deploy.js') |
| | await script({github, context, core}) |
| | |
| | macos: |
| | runs-on: ${{matrix.os.genus}} |
| | permissions: |
| | contents: write |
| | strategy: |
| | fail-fast: false |
| | matrix: |
| | os: [{genus: macos-11, family: osx}] |
| | compiler: [{cc: clang, cxx: clang++}] |
| | cmake_build_type: [Debug, Release] |
| | steps: |
| | - uses: actions/checkout@v3 |
| | - uses: actions/setup-python@v4 |
| | with: |
| | python-version: '3.7' |
| | - name: Install GoogleTest |
| | run: | |
| | # check out pre-breakage version of googletest; can be deleted when |
| | # issue 3128 is fixed |
| | # git clone --depth=1 https://github.com/google/googletest.git External/googletest |
| | mkdir -p External/googletest |
| | cd External/googletest |
| | git init |
| | git remote add origin https://github.com/google/googletest.git |
| | git fetch --depth 1 origin 0c400f67fcf305869c5fb113dd296eca266c9725 |
| | git reset --hard FETCH_HEAD |
| | cd ../.. |
| | - name: Update Glslang Sources |
| | run: | |
| | ./update_glslang_sources.py |
| | - name: Build |
| | env: |
| | CC: ${{matrix.compiler.cc}} |
| | CXX: ${{matrix.compiler.cxx}} |
| | run: | |
| | mkdir build && cd build |
| | cmake -DCMAKE_BUILD_TYPE=${{matrix.cmake_build_type}} -DCMAKE_INSTALL_PREFIX=`pwd`/install .. |
| | make -j4 install |
| | - name: Test |
| | run: | |
| | cd build |
| | ctest --output-on-failure && |
| | cd ../Test && ./runtests |
| | - name: Zip |
| | env: |
| | ARCHIVE: glslang-main-${{matrix.os.family}}-${{matrix.cmake_build_type}}.zip |
| | run: | |
| | cd build/install |
| | zip ${ARCHIVE} \ |
| | bin/glslangValidator \ |
| | include/glslang/* \ |
| | include/glslang/**/* \ |
| | lib/libGenericCodeGen.a \ |
| | lib/libglslang.a \ |
| | lib/libglslang-default-resource-limits.a \ |
| | lib/libHLSL.a \ |
| | lib/libMachineIndependent.a \ |
| | lib/libOGLCompiler.a \ |
| | lib/libOSDependent.a \ |
| | lib/libSPIRV.a \ |
| | lib/libSPVRemapper.a \ |
| | lib/libSPIRV-Tools.a \ |
| | lib/libSPIRV-Tools-opt.a |
| | - name: Deploy |
| | env: |
| | ARCHIVE: glslang-main-${{matrix.os.family}}-${{matrix.cmake_build_type}}.zip |
| | uses: actions/github-script@v6 |
| | with: |
| | script: | |
| | const script = require('.github/workflows/deploy.js') |
| | await script({github, context, core}) |
| | |
| | windows: |
| | runs-on: ${{matrix.os.genus}} |
| | permissions: |
| | contents: write |
| | strategy: |
| | fail-fast: false |
| | matrix: |
| | os: [{genus: windows-2019, family: windows}] |
| | cmake_build_type: [Debug, Release] |
| | steps: |
| | - uses: actions/checkout@v3 |
| | - uses: actions/setup-python@v4 |
| | with: |
| | python-version: '3.7' |
| | - name: Install GoogleTest |
| | run: | |
| | # check out pre-breakage version of googletest; can be deleted when |
| | # issue 3128 is fixed |
| | # git clone --depth=1 https://github.com/google/googletest.git External/googletest |
| | mkdir -p External/googletest |
| | cd External/googletest |
| | git init |
| | git remote add origin https://github.com/google/googletest.git |
| | git fetch --depth 1 origin 0c400f67fcf305869c5fb113dd296eca266c9725 |
| | git reset --hard FETCH_HEAD |
| | cd ../.. |
| | - name: Update Glslang Sources |
| | run: | |
| | python update_glslang_sources.py |
| | - name: Build |
| | run: | |
| | cmake -S. -Bbuild -G "Visual Studio 16 2019" -A x64 -DCMAKE_INSTALL_PREFIX="$PWD/build/install" |
| | cmake --build build --config ${{matrix.cmake_build_type}} --target install |
| | - name: Test |
| | run: | |
| | cd build |
| | ctest -C ${{matrix.cmake_build_type}} --output-on-failure |
| | cd ../Test && bash runtests |
| | - name: Zip |
| | if: ${{ matrix.cmake_build_type == 'Debug' }} |
| | env: |
| | ARCHIVE: glslang-master-${{matrix.os.family}}-Debug.zip |
| | run: | |
| | cd build/install |
| | 7z a ${{env.ARCHIVE}} ` |
| | bin/glslangValidator.exe ` |
| | bin/spirv-remap.exe ` |
| | include/glslang/* ` |
| | lib/GenericCodeGend.lib ` |
| | lib/glslangd.lib ` |
| | lib/glslang-default-resource-limitsd.lib ` |
| | lib/HLSLd.lib ` |
| | lib/MachineIndependentd.lib ` |
| | lib/OGLCompilerd.lib ` |
| | lib/OSDependentd.lib ` |
| | lib/SPIRVd.lib ` |
| | lib/SPVRemapperd.lib ` |
| | lib/SPIRV-Toolsd.lib ` |
| | lib/SPIRV-Tools-optd.lib |
| | - name: Zip |
| | if: ${{ matrix.cmake_build_type == 'Release' }} |
| | env: |
| | ARCHIVE: glslang-master-${{matrix.os.family}}-Release.zip |
| | run: | |
| | cd build/install |
| | 7z a ${{env.ARCHIVE}} ` |
| | bin/glslangValidator.exe ` |
| | bin/spirv-remap.exe ` |
| | include/glslang/* ` |
| | lib/GenericCodeGen.lib ` |
| | lib/glslang.lib ` |
| | lib/glslang-default-resource-limits.lib ` |
| | lib/HLSL.lib ` |
| | lib/MachineIndependent.lib ` |
| | lib/OGLCompiler.lib ` |
| | lib/OSDependent.lib ` |
| | lib/SPIRV.lib ` |
| | lib/SPVRemapper.lib ` |
| | lib/SPIRV-Tools.lib ` |
| | lib/SPIRV-Tools-opt.lib |
| | - name: Deploy |
| | env: |
| | ARCHIVE: glslang-master-${{matrix.os.family}}-${{matrix.cmake_build_type}}.zip |
| | uses: actions/github-script@v6 |
| | with: |
| | script: | |
| | const script = require('.github/workflows/deploy.js') |
| | await script({github, context, core}) |
| | |