1name: debian-sapi-generator-tool 2on: push 3jobs: 4 build: 5 runs-on: ubuntu-latest 6 container: debian:10.13 7 steps: 8 - uses: actions/checkout@v3 9 10 - name: Cache dependencies 11 uses: actions/cache@v3 12 with: 13 key: debian-10.13-clang16 14 path: | 15 ${{github.workspace}}/build/_deps 16 17 - name: Install build tools 18 run: | 19 apt-get update 20 env DEBIAN_FRONTEND=noninteractive \ 21 apt-get install -qy --no-install-recommends \ 22 build-essential \ 23 ca-certificates \ 24 cmake \ 25 file \ 26 git \ 27 gnupg \ 28 libc6-dev \ 29 lsb-release \ 30 make \ 31 ninja-build \ 32 software-properties-common \ 33 wget 34 wget https://apt.llvm.org/llvm.sh 35 chmod +x llvm.sh 36 ./llvm.sh 16 all 37 38 - name: Configure CMake 39 run: | 40 mkdir -p "$GITHUB_WORKSPACE/build" 41 cmake \ 42 -S "$GITHUB_WORKSPACE" \ 43 -B "$GITHUB_WORKSPACE/build" \ 44 -G Ninja \ 45 -DCMAKE_BUILD_TYPE=Release \ 46 -DSAPI_ENABLE_CLANG_TOOL=ON \ 47 -DSAPI_ENABLE_CLANG_TOOL_STATIC=ON 48 49 - name: Build 50 run: | 51 cmake \ 52 --build "$GITHUB_WORKSPACE/build" \ 53 --config Release \ 54 --target sapi_generator_tool 55 ( \ 56 cd "$GITHUB_WORKSPACE/build"; \ 57 mv sandboxed_api/tools/clang_generator/sapi_generator_tool \ 58 sapi_generator_tool-linux-x86_64; \ 59 ) 60 61 - name: Upload Build Artifact 62 uses: actions/upload-artifact@v3.1.2 63 with: 64 name: sapi_generator_tool-linux 65 path: ${{github.workspace}}/build/sapi_generator_tool-linux-x86_64 66 67