Skip to content

Quick Build and Check #35

Quick Build and Check

Quick Build and Check #35

Workflow file for this run

# .github/workflows/quick.yaml
name: Quick Build and Check
on:
workflow_dispatch:
inputs:
upload:
description: Upload Results
type: boolean
jobs:
build:
name: Build and Check on Ubuntu ${{matrix.compiler.os}}${{matrix.isa}} with ${{matrix.compiler.label}}
strategy:
fail-fast: FALSE
matrix:
isa: [
'', -arm ]
compiler:
- { label: gcc10, os: '22.04', gcc: gcc-10, gxx: g++-10 }
- { label: gcc11, os: '22.04', gcc: gcc, gxx: g++ }
- { label: gcc12, os: '24.04', gcc: gcc-12, gxx: g++-12 }
- { label: gcc13, os: '24.04', gcc: gcc, gxx: g++ }
- { label: gcc14, os: '24.04', gcc: gcc-14, gxx: g++-14 }
- { label: clang14, os: '22.04', gcc: clang, gxx: clang++ }
- { label: clang15, os: '22.04', gcc: clang-15, gxx: clang++-15 }
- { label: clang16, os: '24.04', gcc: clang-16, gxx: clang++-16 }
- { label: clang17, os: '24.04', gcc: clang-17, gxx: clang++-17 }
- { label: clang18, os: '24.04', gcc: clang, gxx: clang++ }
runs-on: ubuntu-${{matrix.compiler.os}}${{matrix.isa}}
defaults:
run: { shell: bash }
steps:
- name: Machine Information
run: |
exec 2>&1
set -x
lscpu; free -h; df -H .
- name: System Information
run: |
exec 2>&1
date; uname -a; uptime
set -x
systemd-detect-virt || :
cat /etc/os-release
ls -C /boot || :
- name: Context Information
run: |
exec 2>&1
tty || :; id; printf %s\\n SHELL="$SHELL" PATH="$PATH"
set -x
pwd
ps -e --sort ppid,pid -o ppid,pid,user:12,group:12,comm:24,rsz:11,vsz:11,thcount,bsdstart,state,tname
- name: Build Tools Information
run: |
exec 2>&1
make --version; ${{matrix.compiler.gcc}} --version
- name: Checkout
uses: actions/checkout@v4
with: { ref: master }
- name: Run Make
run: |
exec 2>&1
set -x
make -j4 GCC=${{matrix.compiler.gcc}} GXX=${{matrix.compiler.gxx}}
- name: Run Quick Check
run: |
exec 2>&1
make GCC=${{matrix.compiler.gcc}} GXX=${{matrix.compiler.gxx}} run
- name: Upload Results
if: (inputs.upload)
uses: actions/upload-artifact@v4
with:
name: build-${{matrix.compiler.label}}-${{matrix.compiler.os}}${{matrix.isa}}
path: build