• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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