-
Notifications
You must be signed in to change notification settings - Fork 714
49 lines (42 loc) · 1.56 KB
/
compile.yml
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
name: compile
on: [push, pull_request]
jobs:
stable:
runs-on: ubuntu-24.04
strategy:
fail-fast: false
matrix:
release:
- "ubuntu:20.04"
- "ubuntu:22.04"
- "ubuntu:24.04"
- "ubuntu:rolling""
- "debian:oldstable-slim"
- "debian:stable-slim"
- "debian:testing-slim"
- "debian:unstable-slim"
steps:
- uses: actions/checkout@v4
- name: Prepare ${{ matrix.release }} container
run: |
podman version
podman run --name stable -di --userns=keep-id:uid=1000,gid=1000 -v "$PWD":/home -w /home ${{ matrix.release }} bash
podman exec -i stable uname -a
podman exec -i stable id
echo 'APT::Install-Recommends "false";' | podman exec -i -u root stable tee "/etc/apt/apt.conf.d/local.conf"
podman exec -i -u root stable apt-get update
podman exec -e DEBIAN_FRONTEND='noninteractive' -i -u root stable apt-get install -qy gcc clang cmake make ninja-build
- name: Configure & Build with gcc
run: |
podman exec -i stable rm -rf build
podman exec -i stable cmake -DCMAKE_BUILD_TYPE=Debug -D CMAKE_C_COMPILER=gcc -B build
podman exec -i stable cmake --build build
- name: Configure & Build with clang
run: |
podman exec -i stable rm -rf build
podman exec -i stable cmake -DCMAKE_BUILD_TYPE=Debug -D CMAKE_C_COMPILER=clang -B build
podman exec -i stable cmake --build build
- name: Show logs
if: ${{ failure() }}
run: |
cat build/CMakeFiles/CMakeOutput.log