Add basic workflow on debian/ubuntu
to check for compilation failures on older cmake/compilers
Adapt .editorconfig
MODIFY
.editorconfig
.editorconfig
@@ -7,14 +7,10 @@ indent_style = tab
trim_trailing_whitespace = true
insert_final_newline = true
-[*.md]
+[*.{md,py}]
indent_style = space
indent_size = 4
-[*.sh]
+[*.{sh,yml}]
indent_style = space
indent_size = 2
-
-[*.py]
-indent_style = space
-indent_size = 4

ADD
.github/workflows/stable-compilation.yml
+name: Stable Compilation
+
+on:
+ push:
+ pull_request:
+ workflow_dispatch:
+
+defaults:
+ run:
+ shell: bash
+
+jobs:
+ docker:
+ name: ${{ matrix.image }}
+ runs-on: ubuntu-latest
+ container:
+ image: ${{ matrix.image }}
+
+ strategy:
+ fail-fast: false
+ matrix:
+ image:
+ - ubuntu:18.04 # CMake 3.10.2 - g++ 7.4.0 - LTS
+ - debian:10 # CMake 3.13.4 - g++ 8.3.0 - old
+ - ubuntu:20.04 # CMake 3.16.3 - g++ 9.3.0 - LTS
+ - ubuntu:21.04 # CMake 3.18.4 - g++ 10.3.0 - stable
+
+ steps:
+ - name: Cancel Previous Runs
+ uses: styfle/cancel-workflow-action@0.8.0
+
+ - name: Checkout
+ uses: actions/checkout@v2
+
+ - name: Install dependencies
+ run: |
+ export DEBIAN_FRONTEND="noninteractive"
+ apt-get update
+ apt-get install -y --no-install-recommends --no-install-suggests \
+ build-essential cmake ninja-build git \
+ libicu-dev libexpat1-dev
+
+ - name: Compile
+ run: |
+ mkdir build
+ cd build
+ # cmake < 3.13 does not support '-B'
+ cmake -G Ninja .. \
+ -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr
+ cmake --build .
+
+ - name: Install
+ run: |
+ export DESTDIR=$PWD/local-install
+ # cmake < 3.16 does not support '--install'
+ cmake --build build --target install
+
+ - name: Test
+ run: cmake --build build --target check

Add basic workflow on debian/ubuntu
to check for compilation failures on older cmake/compilers
Adapt .editorconfig