Skip to content

Add support for CMake 3.28.6 in test runner environment setup #109

Add support for CMake 3.28.6 in test runner environment setup

Add support for CMake 3.28.6 in test runner environment setup #109

name: Evaluator File Parity
on:
push:
branches: [ "**" ]
pull_request:
jobs:
linux-file-parity:
runs-on: ubuntu-22.04
env:
NOBIFY_USE_LIBCURL: "1"
NOBIFY_USE_LIBARCHIVE: "1"
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install system deps
run: |
sudo apt-get update
sudo apt-get install -y --no-install-recommends \
build-essential \
curl \
libcurl4-openssl-dev \
libarchive-dev \
pkg-config \
python3-pip
- name: Pin CMake 3.28.x
run: |
python3 -m pip install --upgrade pip
python3 -m pip install cmake==3.28.6
cmake --version
- name: Verify mandatory deps
run: |
pkg-config --exists libcurl
pkg-config --exists libarchive
pkg-config --modversion libcurl
pkg-config --modversion libarchive
- name: Build test runner
run: |
mkdir -p build
cc -D_GNU_SOURCE -std=c11 -Wall -Wextra -pedantic -Ivendor src_v2/build/nob_test.c -o build/nob_v2_test
- name: Check result type conventions
run: |
bash test_v2/evaluator/check_result_type_conventions.sh
- name: Run aggregate smoke suite (test-v2)
run: |
./build/nob_v2_test test-v2
windows-file-parity:
runs-on: windows-2022
defaults:
run:
shell: msys2 {0}
env:
NOBIFY_USE_LIBCURL: "1"
NOBIFY_USE_LIBARCHIVE: "1"
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup MSYS2
uses: msys2/setup-msys2@v2
with:
msystem: MINGW64
update: true
install: >-
mingw-w64-x86_64-toolchain
mingw-w64-x86_64-curl
mingw-w64-x86_64-libarchive
mingw-w64-x86_64-pkgconf
mingw-w64-x86_64-cmake
- name: Pin CMake 3.28.x
shell: pwsh
run: |
$ErrorActionPreference = 'Stop'
$zip = "$env:RUNNER_TEMP/cmake-3.28.6-windows-x86_64.zip"
$url = "https://github.com/Kitware/CMake/releases/download/v3.28.6/cmake-3.28.6-windows-x86_64.zip"
Invoke-WebRequest -Uri $url -OutFile $zip
Expand-Archive -Path $zip -DestinationPath "$env:RUNNER_TEMP/cmake-3.28.6"
"$env:RUNNER_TEMP/cmake-3.28.6/cmake-3.28.6-windows-x86_64/bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
- name: Verify cmake + deps
run: |
cmake --version
pacman -Qi mingw-w64-x86_64-curl >/dev/null
pacman -Qi mingw-w64-x86_64-libarchive >/dev/null
pacman -Qi mingw-w64-x86_64-pkgconf >/dev/null
- name: Build test runner
run: |
mkdir -p build
cc -D_GNU_SOURCE -std=c11 -Wall -Wextra -pedantic -Ivendor src_v2/build/nob_test.c -o build/nob_v2_test.exe
- name: Check result type conventions
run: |
bash test_v2/evaluator/check_result_type_conventions.sh
- name: Run aggregate smoke suite (test-v2)
run: |
./build/nob_v2_test.exe test-v2