https://github.com/shader-slang/slang
Raw File
Tip revision: 7be108c379ccc7da3f46b30a2b5917104155d52b authored by Yong He on 27 April 2023, 05:40:06 UTC
Intellisense: show info on decl kind and differentiability. (#2847)
Tip revision: 7be108c
release-linux.yml
on:
  push:
    # Sequence of patterns matched against refs/tags
    tags:
    - 'v*' # Push events to matching v*, i.e. v1.0, v20.15.10

name: Linux Release

jobs:
  build:
    name: Upload Release Asset
    runs-on: ubuntu-20.04
    strategy:
      matrix:
        configuration: ['release']
        compiler: ['gcc']
        platform: ['x64'] 
        targetPlatform: ['x64'] 
    steps:
      - name: select gcc 10
        run: |
          sudo update-alternatives \
              --install /usr/bin/gcc gcc /usr/bin/gcc-10 100 \
              --slave /usr/bin/g++ g++ /usr/bin/g++-10 \
              --slave /usr/bin/gcc-ar gcc-ar /usr/bin/gcc-ar-10 \
              --slave /usr/bin/gcc-nm gcc-nm /usr/bin/gcc-nm-10 \
              --slave /usr/bin/gcc-ranlib gcc-ranlib /usr/bin/gcc-ranlib-10 \
              --slave /usr/bin/gcov gcov /usr/bin/gcov-10 \
              --slave /usr/bin/gcov-dump gcov-dump /usr/bin/gcov-dump-10 \
              --slave /usr/bin/gcov-tool gcov-tool /usr/bin/gcov-tool-10
      - name: Checkout code
        uses: actions/checkout@v3
        with:
          submodules: 'true'
          fetch-depth: '0'
      - name: Build release project
        id: build
        run: |
          echo "starting to build..."
          export CC=${{matrix.compiler}}
          export CONFIGURATION=${{matrix.configuration}}
          export ARCH=${{matrix.platform}}
          export TARGETARCH=${{matrix.targetPlatform}}
          echo "building..."
          source ./github_build.sh
          echo "creating binary archieves..."
          export SLANG_OS_NAME=linux
          export SLANG_ARCH_NAME=`uname -p`
          export TAG_NAME=`git describe --tags`
          export SLANG_TAG=${TAG_NAME#v}
          echo "tag:$TAG_NAME"
          echo "slang-tag:$SLANG_TAG"
          export SLANG_BINARY_ARCHIVE=slang-${SLANG_TAG}-${SLANG_OS_NAME}-${SLANG_ARCH_NAME}.zip
          export SLANG_BINARY_ARCHIVE_TAR=slang-${SLANG_TAG}-${SLANG_OS_NAME}-${SLANG_ARCH_NAME}.tar.gz
          echo "creating zip"
          zip -r ${SLANG_BINARY_ARCHIVE} bin/*/*/slangc bin/*/*/slangd bin/*/*/libslang.so bin/*/*/libslang-glslang.so bin/*/*/libgfx.so bin/*/*/libslang-llvm.so docs/*.md README.md LICENSE slang.h slang-com-helper.h slang-com-ptr.h slang-tag-version.h slang-gfx.h prelude/*.h
          echo "creating tar"
          tar -czf ${SLANG_BINARY_ARCHIVE_TAR} bin/*/*/slangc bin/*/*/slangd bin/*/*/libslang.so bin/*/*/libslang-glslang.so bin/*/*/libgfx.so bin/*/*/libslang-llvm.so docs/*.md README.md LICENSE slang.h slang-com-helper.h slang-com-ptr.h slang-tag-version.h slang-gfx.h prelude/*.h
          echo "::set-output name=SLANG_BINARY_ARCHIVE::${SLANG_BINARY_ARCHIVE}"
          echo "::set-output name=SLANG_BINARY_ARCHIVE_TAR::${SLANG_BINARY_ARCHIVE_TAR}"
      - name: UploadBinary
        uses: softprops/action-gh-release@v1
        with:
          files: |
            ${{ steps.build.outputs.SLANG_BINARY_ARCHIVE }}
            ${{ steps.build.outputs.SLANG_BINARY_ARCHIVE_TAR }}
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
back to top