Skip to content

filter: windows: Use w/o case API for string #572

filter: windows: Use w/o case API for string

filter: windows: Use w/o case API for string #572

Workflow file for this run

name: Build PR(s) and master branch.
on:
workflow_dispatch:
push:
branches:
- master
pull_request:
branches:
- master
types: [opened, reopened, synchronize]
jobs:
build-windows:
name: Build sources on amd64 for ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [windows-latest, windows-2019]
permissions:
contents: read
steps:
- uses: actions/checkout@v3
with:
submodules: true
- name: Build on ${{ matrix.os }} with vs-2019
run: |
.\scripts\win_build.bat
- name: Run unit tests.
run: |
ctest --rerun-failed --output-on-failure -C Debug --test-dir .\tests\
build-centos:
name: CentOS 7 build to confirm no issues once used downstream
runs-on: ubuntu-latest
container: centos:7
permissions:
contents: read
steps:
- name: Set up base image dependencies
run: |
yum -y update && \
yum install -y ca-certificates cmake gcc gcc-c++ git make wget && \
wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm && \
rpm -ivh epel-release-latest-7.noarch.rpm && \
yum install -y cmake3
shell: bash
- name: Clone repo with submodules (1.8.3 version of Git)
run: |
git clone --recursive https://github.com/calyptia/cmetrics.git
shell: bash
- name: Run compilation
run: |
cmake3 -DCMT_TESTS=on -DCMT_DEV=on .
make
shell: bash
working-directory: cmetrics
build-unix-arm64:
name: Build sources on arm64 for ${{ matrix.os }} - ${{ matrix.compiler }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest]
compiler: [ gcc, clang ]
permissions:
contents: read
steps:
- uses: actions/checkout@v3
with:
submodules: true
- name: Build on ${{ matrix.os }} with ${{ matrix.compiler }}
uses: uraimo/run-on-arch-action@v2.5.0
with:
arch: aarch64
distro: ubuntu20.04
run: |
apt-get update && \
apt-get install -y --no-install-recommends \
build-essential \
cmake \
file \
make
export CC=${{ env.compiler }}
cmake -DCMT_TESTS=On .
make all
CTEST_OUTPUT_ON_FAILURE=1 make test
env:
CC: ${{ matrix.compiler }}
build-unix-amd64:
name: Build sources on amd64 for ${{ matrix.os }} - ${{ matrix.compiler }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest]
compiler: [ gcc, clang ]
permissions:
contents: read
steps:
- uses: actions/checkout@v3
with:
submodules: true
- name: Build on ${{ matrix.os }} with ${{ matrix.compiler }}
run: |
echo "CC = $CC, CXX = $CXX"
cmake -DCMT_TESTS=On .
make all
CTEST_OUTPUT_ON_FAILURE=1 make test
env:
CC: ${{ matrix.compiler }}
build-analysis-tests:
name: Build with various code analysis tools
strategy:
fail-fast: false
matrix:
preset:
- clang-sanitize-address
- clang-sanitize-memory
- clang-sanitize-undefined
- clang-sanitize-dataflow
- clang-sanitize-safe-stack
- valgrind
permissions:
contents: read
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
submodules: true
- uses: docker://lpenz/ghaction-cmake:0.19
with:
preset: ${{ matrix.preset }}
# dependencies_debian: ''
cmakeflags: '-DCMT_TESTS=On -DCMT_DEV=on .'
build_command: make all