summaryrefslogtreecommitdiff
path: root/.github/workflows/release-linux-glibc-2-27.yml
blob: 8fcbecd0d8dfdda8862e0ba2eeba26f8430f0dbb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
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:
    runs-on: ubuntu-latest
    steps:
      - name: Check out the repo
        uses: actions/checkout@v2
        with:
          submodules: 'true'
          fetch-depth: '0'

      - name: build docker image
        run: docker build -t ubuntu-18.04-gcc-9 ./.github/workflows/dockerfiles/ubuntu-18.04-x64

      # build the binary in docker image
      - name: Run the build process with Docker
        uses: addnab/docker-run-action@v3
        with:
            image: ubuntu-18.04-gcc-9
            options: -v ${{ github.workspace }}:/home/app
            run: |
              cd /home/app
              git config --global --add safe.directory /home/app
              export CC=gcc
              export CONFIGURATION=release
              export ARCH=x64
              export TARGETARCH=x64
              export TARGETARCH=x64
              export GLIBC_COMPATIBLE=1
              /bin/bash ./github_build.sh

      - name: CreatePackages
        id: build
        run: |
            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}-glibc-2.27.zip
            export SLANG_BINARY_ARCHIVE_TAR=slang-${SLANG_TAG}-${SLANG_OS_NAME}-${SLANG_ARCH_NAME}-glibc-2.27.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 "SLANG_BINARY_ARCHIVE=${SLANG_BINARY_ARCHIVE}" >> $GITHUB_OUTPUT
            echo "SLANG_BINARY_ARCHIVE_TAR=${SLANG_BINARY_ARCHIVE_TAR}" >> $GITHUB_OUTPUT
      - 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 }}