mirror of
https://github.com/getml/sqlgen.git
synced 2026-01-04 16:40:07 -06:00
Added a pipeline for linux-sqlite-cxx20
This commit is contained in:
66
.github/workflows/linux-sqlite-cxx20.yaml
vendored
Normal file
66
.github/workflows/linux-sqlite-cxx20.yaml
vendored
Normal file
@@ -0,0 +1,66 @@
|
||||
name: linux-sqlite-cxx20
|
||||
|
||||
on: [ pull_request, workflow_dispatch ]
|
||||
|
||||
env:
|
||||
VCPKG_BINARY_SOURCES: "clear;x-gha,readwrite"
|
||||
|
||||
jobs:
|
||||
linux:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- compiler: llvm
|
||||
compiler-version: 16
|
||||
- compiler: llvm
|
||||
compiler-version: 18
|
||||
- compiler: gcc
|
||||
compiler-version: 11
|
||||
additional-dep: "g++-11"
|
||||
- compiler: gcc
|
||||
compiler-version: 12
|
||||
- compiler: gcc
|
||||
compiler-version: 14
|
||||
name: "${{ github.job }} (${{ matrix.compiler }}-${{ matrix.compiler-version }})"
|
||||
runs-on: ubuntu-24.04
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: recursive
|
||||
fetch-depth: 0
|
||||
- name: Export GitHub Actions cache environment variables
|
||||
uses: actions/github-script@v7
|
||||
with:
|
||||
script: |
|
||||
core.exportVariable('ACTIONS_CACHE_URL', process.env.ACTIONS_CACHE_URL || '');
|
||||
core.exportVariable('ACTIONS_RUNTIME_TOKEN', process.env.ACTIONS_RUNTIME_TOKEN || '');
|
||||
- name: Setup ccache
|
||||
uses: hendrikmuhs/ccache-action@v1
|
||||
with:
|
||||
key: "${{ github.job }}-${{ matrix.compiler }}-${{ matrix.compiler-version }}"
|
||||
max-size: "2G"
|
||||
- name: Run vcpkg
|
||||
uses: lukka/run-vcpkg@v11
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
sudo apt update
|
||||
sudo apt install -y ninja-build ${{ matrix.additional-dep }}
|
||||
- name: Compile
|
||||
run: |
|
||||
if [[ "${{ matrix.compiler }}" == "llvm" ]]; then
|
||||
export CC=clang-${{ matrix.compiler-version }}
|
||||
export CXX=clang++-${{ matrix.compiler-version }}
|
||||
elif [[ "${{ matrix.compiler }}" == "gcc" ]]; then
|
||||
export CC=gcc-${{ matrix.compiler-version }}
|
||||
export CXX=g++-${{ matrix.compiler-version }}
|
||||
fi
|
||||
sudo ln -s $(which ccache) /usr/local/bin/$CC
|
||||
sudo ln -s $(which ccache) /usr/local/bin/$CXX
|
||||
$CXX --version
|
||||
cmake -S . -B build -G Ninja -DCMAKE_CXX_STANDARD=20 -DSQLGEN_BUILD_TESTS=ON -DSQLGEN_POSTGRES=OFF
|
||||
cmake --build build
|
||||
- name: Run tests
|
||||
run: |
|
||||
ctest --test-dir build --output-on-failure
|
||||
Reference in New Issue
Block a user