Skip to content

Add collections builtin methods #204

Add collections builtin methods

Add collections builtin methods #204

Workflow file for this run

name: CI-linux-build
on:
push:
branches:
- master
- main
paths-ignore:
- 'docs/**'
- '**.md'
pull_request:
branches:
- master
- main
paths-ignore:
- 'docs/**'
- '**.md'
jobs:
linux-build:
runs-on: ubuntu-latest
strategy:
fail-fast: false
max-parallel: 8
matrix:
compiler: [g++-9, g++-10, g++-11, clang++-12, clang++-13, clang++-14]
base-flags: ["", -DJINJA2CPP_CXX_STANDARD=17]
build-config: [Release, Debug]
build-shared: [TRUE, FALSE]
include:
- compiler: g++-9
extra-flags: -DJINJA2CPP_STRICT_WARNINGS=OFF
- compiler: g++-10
extra-flags: -DJINJA2CPP_STRICT_WARNINGS=OFF
- compiler: g++-11
extra-flags: -DJINJA2CPP_STRICT_WARNINGS=OFF
steps:
- uses: actions/checkout@v3
- name: Setup environment
env:
INPUT_COMPILER: ${{ matrix.compiler }}
INPUT_BASE_FLAGS: ${{ matrix.base-flags }}
INPUT_BASE_CONFIG: ${{ matrix.build-config }}
INPUT_EXTRA_FLAGS: ${{ matrix.extra-flags }}
run: |
sudo apt-get update
sudo apt-get install -y cmake build-essential ${INPUT_COMPILER}
- name: Prepare build
env:
INPUT_COMPILER: ${{ matrix.compiler }}
INPUT_BASE_FLAGS: ${{ matrix.base-flags }}
INPUT_BASE_CONFIG: ${{ matrix.build-config }}
INPUT_EXTRA_FLAGS: ${{ matrix.extra-flags }}
run: |
set -ex
export BUILD_TARGET=all
export CMAKE_OPTS=-DCMAKE_VERBOSE_MAKEFILE=OFF
if [[ "${INPUT_COMPILER}" != "" ]]; then export CXX=${INPUT_COMPILER}; fi
export BUILD_CONFIG=${INPUT_BASE_CONFIG}
$CXX --version
export EXTRA_FLAGS="${INPUT_BASE_FLAGS} ${INPUT_EXTRA_FLAGS}"
- name: Build
env:
INPUT_BASE_CONFIG: ${{ matrix.build-config }}
INPUT_BASE_FLAGS: ${{ matrix.base-flags }}
INPUT_BUILD_SHARED: ${{ matrix.build-shared }}
INPUT_COMPILER: ${{ matrix.compiler }}
INPUT_EXTRA_FLAGS: ${{ matrix.extra-flags }}
run: |
set -ex
export BUILD_TARGET=all
export CMAKE_OPTS=-DCMAKE_VERBOSE_MAKEFILE=ON
if [[ "${INPUT_COMPILER}" != "" ]]; then export CXX=${INPUT_COMPILER}; fi
export BUILD_CONFIG=${INPUT_BASE_CONFIG}
$CXX --version
cmake --version
export EXTRA_FLAGS="${INPUT_BASE_FLAGS} ${INPUT_EXTRA_FLAGS}"
mkdir -p .build && cd .build
cmake $CMAKE_OPTS -DCMAKE_BUILD_TYPE=$BUILD_CONFIG -DCMAKE_CXX_FLAGS=$CMAKE_CXX_FLAGS -DJINJA2CPP_DEPS_MODE=internal -DJINJA2CPP_STRICT_WARNINGS=OFF -DJINJA2CPP_BUILD_SHARED=$INPUT_BUILD_SHARED $EXTRA_FLAGS .. && cmake --build . --config $BUILD_CONFIG --target all -- -j4
- name: Test
env:
BUILD_CONFIG: ${{ matrix.build-config }}
run: |
cd .build && ctest -C $BUILD_CONFIG -V