Skip to content

Reworking scan API for more generic (re-)use #548

Reworking scan API for more generic (re-)use

Reworking scan API for more generic (re-)use #548

Workflow file for this run

name: Build
on:
push:
paths-ignore:
- 'docs/**'
- '.github/ISSUE_TEMPLATE/**'
- '.github/*.yml'
- 'LICENSE.txt'
- '*.md'
- '*.sh'
branches:
- master
- edge
pull_request:
branches:
- master
- edge
concurrency:
group: ${{ github.ref }}
cancel-in-progress: true
env:
CTEST_OUTPUT_ON_FAILURE: 1
jobs:
ubuntu_matrix:
strategy:
fail-fast: false
matrix:
compiler:
[
"GCC 10",
"Clang 10",
# (CI related error) "Clang 11",
"Clang 12"
]
name: "Ubuntu Linux 20.04 (${{ matrix.compiler }})"
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v4
- name: ccache
uses: hendrikmuhs/ccache-action@v1
with:
key: "ccache-ubuntu_2004-${{ matrix.compiler }}"
max-size: 256M
- name: "Update package database"
run: sudo apt -q update
- name: "install dependencies"
env:
COMPILER: "${{ matrix.compiler }}"
run: ./scripts/install-deps.sh
- name: "create build directory"
run: mkdir build
- name: "cmake"
env:
COMPILER: "${{ matrix.compiler }}"
run: |
BUILD_DIR="build" \
CMAKE_BUILD_TYPE="RelWithDebInfo" \
./scripts/ci-prepare.sh
- name: "build"
run: cmake --build build/ -- -j3
- name: "test"
run: ./build/src/libunicode/unicode_test
ubuntu_matrix_22:
strategy:
fail-fast: false
matrix:
compiler:
[
"GCC 10",
"GCC 13",
# (CI related error) "Clang 11",
"Clang 15"
]
# gcc 13 only in github runners and not inside official repo
name: "Ubuntu Linux 22.04 (${{ matrix.compiler }})"
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: ccache
uses: hendrikmuhs/ccache-action@v1
with:
key: "ccache-ubuntu_2204-${{ matrix.compiler }}"
max-size: 256M
- name: "Update package database"
run: sudo apt -q update
- name: "install dependencies"
env:
COMPILER: "${{ matrix.compiler }}"
run: ./scripts/install-deps.sh
- name: "create build directory"
run: mkdir build
- name: "cmake"
env:
COMPILER: "${{ matrix.compiler }}"
run: |
BUILD_DIR="build" \
CMAKE_BUILD_TYPE="RelWithDebInfo" \
./scripts/ci-prepare.sh
- name: "build"
run: cmake --build build/ -- -j3
- name: "test"
run: ./build/src/libunicode/unicode_test
- name: "benchmark"
run: ./build/src/libunicode/libunicode_benchmark
unknown_os:
name: "Unknown OS"
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: ccache
uses: hendrikmuhs/ccache-action@v1
with:
key: "ccache-ubuntu_2004-unknown-os"
max-size: 256M
- name: "Update package database"
run: sudo apt -q update
- name: "install dependencies"
run: |
set -ex
sudo apt install -q -y ninja-build gcc build-essential cmake debhelper dpkg-dev g++ libc6-dev
OS_OVERRIDE=UNKNOWN ./scripts/install-deps.sh
- name: "cmake"
run: cmake --preset linux-gcc-release
- name: "build"
run: cmake --build --preset linux-gcc-release -j3
- name: "test"
run: ctest --preset linux-gcc-release
windows:
name: "Windows"
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- name: "vcpkg: Install dependencies"
uses: lukka/[email protected]
id: runvcpkg
with:
vcpkgDirectory: ${{ runner.workspace }}/vcpkg/
vcpkgGitCommitId: 80403036a665cb8fcc1a1b3e17593d20b03b2489
- name: "List cmake presets"
run: cmake --list-presets
- name: "Generate build files"
run: cmake --preset windows-cl-release -DCMAKE_TOOLCHAIN_FILE="${{ runner.workspace }}\vcpkg\scripts\buildsystems\vcpkg.cmake"
- name: "Build"
run: cmake --build --preset windows-cl-release
- name: "test"
run: ctest --preset windows-cl-release
Fedora:
name: Fedora
runs-on: ubuntu-22.04
container: fedora:rawhide
steps:
- uses: actions/checkout@v4
- name: Install build dependencies
run: |
dnf install -y curl
PREPARE_ONLY_EMBEDS=OFF SYSDEP_ASSUME_YES=ON ./scripts/install-deps.sh
dnf install -y unicode-ucd
- name: CMake build
run: |
cmake --preset linux-gcc-debug -DLIBUNICODE_UCD_DIR=/usr/share/unicode/ucd
cmake --build --preset linux-gcc-debug -j$(nproc)
- name: test
run: |
ctest --preset linux-gcc-debug