[ci] major update: #18
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: GitHub CI | |
on: | |
- push | |
- pull_request | |
jobs: | |
windowsBuild: | |
name: Windows Build | |
runs-on: windows-2019 | |
strategy: | |
fail-fast: false | |
matrix: | |
CONFIGURATION: | |
- Debug | |
- Release | |
TARGET_CPU: | |
- x86 | |
- amd64 | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@v4 | |
- name: Install | |
shell: cmd | |
run: | | |
call ci\github-actions\set-env.bat ${{matrix.TARGET_CPU}} | |
call ci\github-actions\install-windows.bat | |
git clone --depth 1 https://github.com/vovkos/axl | |
- name: Build and test | |
shell: cmd | |
run: | | |
set CONFIGURATION=${{matrix.CONFIGURATION}} | |
set THIS_DIR=%CD% | |
set THIS_DIR_CMAKE=%THIS_DIR:\=/% | |
call ci\github-actions\set-env.bat msvc16 ${{matrix.TARGET_CPU}} | |
mkdir axl\build | |
cd axl\build | |
cmake .. %CMAKE_CONFIGURE_FLAGS% || exit | |
cmake --build . %CMAKE_BUILD_FLAGS% || exit | |
cd %THIS_DIR% | |
echo set (AXL_CMAKE_DIR %THIS_DIR_CMAKE%/axl/cmake %THIS_DIR_CMAKE%/axl/build/cmake) >> paths.cmake | |
mkdir build | |
cd build | |
cmake .. %CMAKE_CONFIGURE_FLAGS% || exit | |
cmake --build . %CMAKE_BUILD_FLAGS% || exit | |
ctest --output-on-failure -C %CONFIGURATION% || exit | |
linuxBuild: | |
name: Linux Build | |
runs-on: ubuntu-22.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
CONFIGURATION: | |
- Debug | |
- Release | |
TARGET_CPU: | |
- x86 | |
- amd64 | |
COMPILER: | |
- clang | |
- gcc | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@v4 | |
- name: Install | |
shell: bash | |
run: | | |
export TARGET_CPU=${{matrix.TARGET_CPU}} | |
source ./ci/github-actions/install-linux.sh | |
git clone --depth 1 https://github.com/vovkos/axl | |
- name: Build and test | |
shell: bash | |
run: | | |
THIS_DIR=$(pwd) | |
export CC=$(which ${{matrix.COMPILER}}) | |
export CXX=$(which ${{matrix.COMPILER}}++) | |
mkdir axl/build | |
pushd axl/build | |
cmake .. -DTARGET_CPU=${{matrix.TARGET_CPU}} -DCMAKE_BUILD_TYPE=${{matrix.CONFIGURATION}} | |
make | |
popd | |
echo "set (AXL_CMAKE_DIR $THIS_DIR/axl/cmake $THIS_DIR/axl/build/cmake)" >> paths.cmake | |
mkdir build | |
cd build | |
cmake .. -DTARGET_CPU=${{matrix.TARGET_CPU}} -DCMAKE_BUILD_TYPE=${{matrix.CONFIGURATION}} | |
make | |
ctest --output-on-failure | |
macOsBuild: | |
name: macOS Build | |
runs-on: macos-13 | |
strategy: | |
fail-fast: false | |
matrix: | |
CONFIGURATION: | |
- Debug | |
- Release | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@v4 | |
- name: Install | |
shell: bash | |
run: | | |
pwd | |
source ./ci/github-actions/install-osx.sh | |
git clone --depth 1 https://github.com/vovkos/axl | |
- name: Build and test | |
shell: bash | |
run: | | |
THIS_DIR=$(pwd) | |
mkdir axl/build | |
pushd axl/build | |
cmake .. -DCMAKE_BUILD_TYPE=${{matrix.CONFIGURATION}} | |
make | |
popd | |
echo "set (AXL_CMAKE_DIR $THIS_DIR/axl/cmake $THIS_DIR/axl/build/cmake)" >> paths.cmake | |
mkdir build | |
cd build | |
cmake .. -DCMAKE_BUILD_TYPE=${{matrix.CONFIGURATION}} | |
make | |
ctest --output-on-failure |