Skip to content

orm: stabilize public API, fix examples, and inline templates #25

orm: stabilize public API, fix examples, and inline templates

orm: stabilize public API, fix examples, and inline templates #25

Workflow file for this run

name: build
on:
push:
branches: [main, dev]
pull_request:
jobs:
linux:
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
compiler: [gcc, clang]
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive
- name: Set up ${{ matrix.compiler }}
run: |
if [ "${{ matrix.compiler }}" = "gcc" ]; then
sudo apt-get update
sudo apt-get install -y g++-12
echo "CXX=g++-12" >> $GITHUB_ENV
echo "CC=gcc-12" >> $GITHUB_ENV
else
sudo apt-get update
sudo apt-get install -y clang
echo "CXX=clang++" >> $GITHUB_ENV
echo "CC=clang" >> $GITHUB_ENV
fi
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y cmake make ninja-build \
libboost-all-dev \
nlohmann-json3-dev \
libspdlog-dev \
libmysqlcppconn-dev
- name: Configure (Release)
run: |
cmake -S . -B build -G Ninja \
-DCMAKE_BUILD_TYPE=Release \
-DVIX_BUILD_EXAMPLES=ON \
-DVIX_BUILD_TESTS=ON \
-DVIX_ORM_USE_MYSQL=ON \
-DVIX_ORM_BUILD_EXAMPLES=OFF \
-DVIX_ORM_BUILD_TESTS=OFF
- name: Build
run: cmake --build build -j
- name: Run tests
run: |
ctest --test-dir build --output-on-failure || true