| Jiayu Liu | c6f18a5 | 2022-05-22 04:01:43 +0800 | [diff] [blame] | 1 | name: 'Build with CMake' |
| 2 | |
| 3 | on: |
| 4 | push: |
| 5 | branches: [ '*' ] |
| 6 | pull_request: |
| 7 | branches: [ '*' ] |
| 8 | |
| Jens Geyer | 68b9e87 | 2026-03-22 12:43:53 +0100 | [diff] [blame] | 9 | concurrency: |
| 10 | group: ${{ github.workflow }}-${{ github.ref }} |
| 11 | cancel-in-progress: true |
| 12 | |
| Jiayu Liu | c6f18a5 | 2022-05-22 04:01:43 +0800 | [diff] [blame] | 13 | env: |
| 14 | BUILD_DEPS: bison flex g++ libboost-all-dev libevent-dev libssl-dev make cmake |
| 15 | |
| Varun Sharma | bd1e5db | 2022-09-14 07:31:30 -0700 | [diff] [blame] | 16 | permissions: |
| 17 | contents: read |
| 18 | |
| Jiayu Liu | c6f18a5 | 2022-05-22 04:01:43 +0800 | [diff] [blame] | 19 | jobs: |
| 20 | compiler: |
| Sven Roederer | 502a46a | 2024-07-06 05:56:05 +0200 | [diff] [blame] | 21 | runs-on: ubuntu-22.04 |
| Jiayu Liu | c6f18a5 | 2022-05-22 04:01:43 +0800 | [diff] [blame] | 22 | steps: |
| Jens Geyer | 68b9e87 | 2026-03-22 12:43:53 +0100 | [diff] [blame] | 23 | - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd |
| Jiayu Liu | c6f18a5 | 2022-05-22 04:01:43 +0800 | [diff] [blame] | 24 | |
| 25 | - name: Install dependencies |
| Jens Geyer | 68b9e87 | 2026-03-22 12:43:53 +0100 | [diff] [blame] | 26 | timeout-minutes: 10 |
| Jiayu Liu | c6f18a5 | 2022-05-22 04:01:43 +0800 | [diff] [blame] | 27 | run: | |
| 28 | sudo apt-get update -yq |
| 29 | sudo apt-get install -y --no-install-recommends $BUILD_DEPS |
| 30 | |
| 31 | - name: Generate makefile using CMake |
| Jens Geyer | 68b9e87 | 2026-03-22 12:43:53 +0100 | [diff] [blame] | 32 | timeout-minutes: 10 |
| Jiayu Liu | c6f18a5 | 2022-05-22 04:01:43 +0800 | [diff] [blame] | 33 | run: | |
| 34 | mkdir cmake_build |
| 35 | cd cmake_build |
| Jens Geyer | a085b0e | 2024-11-14 23:03:46 +0100 | [diff] [blame] | 36 | cmake .. -DBUILD_LIBRARIES=OFF |
| Jiayu Liu | c6f18a5 | 2022-05-22 04:01:43 +0800 | [diff] [blame] | 37 | |
| 38 | - name: Run make |
| Jens Geyer | 68b9e87 | 2026-03-22 12:43:53 +0100 | [diff] [blame] | 39 | timeout-minutes: 30 |
| Jiayu Liu | c6f18a5 | 2022-05-22 04:01:43 +0800 | [diff] [blame] | 40 | run: | |
| 41 | cd cmake_build |
| 42 | cmake --build . |
| 43 | |
| 44 | - name: Run test |
| Jens Geyer | 68b9e87 | 2026-03-22 12:43:53 +0100 | [diff] [blame] | 45 | timeout-minutes: 30 |
| Jiayu Liu | c6f18a5 | 2022-05-22 04:01:43 +0800 | [diff] [blame] | 46 | run: | |
| 47 | cd cmake_build |
| Jens Geyer | 68b9e87 | 2026-03-22 12:43:53 +0100 | [diff] [blame] | 48 | ctest -j$(nproc --ignore=2) |
| copilot-swe-agent[bot] | c3ced62 | 2025-11-18 18:09:06 +0000 | [diff] [blame] | 49 | |
| 50 | - name: Upload LastTest log |
| 51 | if: always() |
| Jens Geyer | 68b9e87 | 2026-03-22 12:43:53 +0100 | [diff] [blame] | 52 | uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f |
| copilot-swe-agent[bot] | c3ced62 | 2025-11-18 18:09:06 +0000 | [diff] [blame] | 53 | with: |
| 54 | name: cmake-LastTest-log |
| 55 | path: cmake_build/Testing/Temporary/LastTest.log |
| 56 | if-no-files-found: warn |