perlin-shadows/.forgejo/workflows/build.yaml
Michael Bradley e53cc64dc9
Some checks failed
Build / Format (push) Failing after 19s
Build / Lint (push) Successful in 1m37s
Build / Build (push) Successful in 38s
Fix typo in CMake cache
2025-02-23 13:25:38 -05:00

53 lines
1.6 KiB
YAML

---
on: [push]
name: Build
jobs:
format:
name: Format
runs-on: ubuntu-22.04
steps:
- name: Check out the code
uses: actions/checkout@v4
- name: Install clang-format
run: |
sudo apt-get update
sudo apt-get -y install clang-format
- name: Check the code's formatting
run: clang-format --dry-run src/*.h src/*.cpp 2>&1 | tee fmt.log; [ ! -s fmt.log ]
lint:
name: Lint
runs-on: ubuntu-22.04
steps:
- name: Check out the code
uses: actions/checkout@v4
- name: Install clang-tidy and the toolchain
run: |
sudo apt-get update
sudo apt-get -y install clang-tidy cmake freeglut3-dev libglew-dev libglm-dev
- name: Set up the build environment
run: cmake -S . -B cmake-build-debug -DCMAKE_EXPORT_COMPILE_COMMANDS=ON
- name: Have clang-tidy lint for errors
run: clang-tidy -p cmake-build-debug src/*.cpp src/*.h --warnings-as-errors='*'
build:
name: Build
runs-on: ubuntu-22.04
steps:
- name: Check out the code
uses: actions/checkout@v4
- name: Install the toolchain
run: |
sudo apt-get update
sudo apt-get -y install cmake freeglut3-dev libglew-dev libglm-dev
- name: Set up the build environment
run: cmake -S . -B cmake-build-debug
- name: Compile the code
run: cmake --build cmake-build-debug
- name: Save executable
uses: forgejo/upload-artifact@v4
with:
name: bin.zip
path: cmake-build-debug/perlin-shadows