Add action to run validation on every commit
All checks were successful
Validate the build / Validate-With-Modern-Clang (push) Successful in 24s

Adds some flags to the makefile to make it build on alpine with a
different libc
This commit is contained in:
omicron 2025-03-30 23:34:12 +02:00
parent 5cdb60d395
commit 873c59452c
2 changed files with 51 additions and 1 deletions

View File

@ -0,0 +1,50 @@
name: Validate the build
run-name: ${{ gitea.actor }} is validating code with clang 19
on: [push]
jobs:
Validate-With-Modern-Clang:
runs-on: ubuntu-latest
container:
image: node:18-alpine
steps:
- run: echo "Starting validation process"
- name: Install dependencies
run: |
apk add --no-cache git make bash
# Install LLVM/Clang 19 from edge repository
echo "http://dl-cdn.alpinelinux.org/alpine/edge/main" >> /etc/apk/repositories
echo "http://dl-cdn.alpinelinux.org/alpine/edge/community" >> /etc/apk/repositories
apk update
apk add --no-cache llvm19 clang19 clang19-analyzer compiler-rt valgrind
# Verify versions
echo "---------------------"
echo "Clang version:"
which clang-19
which clang
clang --version
echo "---------------------"
echo "Valgrind version:"
valgrind --version
echo "---------------------"
- name: Check out repository code
uses: actions/checkout@v4
- name: Show file structure
run: |
echo "pwd:" $(pwd)
echo --
ls -lah
echo --
tree
- name: Validate code
run: |
echo "Validating code with make validate..."
make validate
- run: echo "Validation status is ${{ job.status }}."

View File

@ -2,7 +2,7 @@
CC=clang
LD=clang
CFLAGS=-Wall -Wextra -Wpedantic -O0 -g3 -std=c23 -fno-omit-frame-pointer -fno-optimize-sibling-calls
CFLAGS=-Wall -Wextra -Wpedantic -O0 -g3 -std=c23 -fno-omit-frame-pointer -fno-optimize-sibling-calls -D_POSIX_C_SOURCE=200809L
LDFLAGS?=
SOURCES = $(shell find src/ -type f -name '*.c')