aboutsummaryrefslogtreecommitdiff
path: root/deps/inja/.github/workflows/ci.yml
diff options
context:
space:
mode:
Diffstat (limited to 'deps/inja/.github/workflows/ci.yml')
-rw-r--r--deps/inja/.github/workflows/ci.yml261
1 files changed, 261 insertions, 0 deletions
diff --git a/deps/inja/.github/workflows/ci.yml b/deps/inja/.github/workflows/ci.yml
new file mode 100644
index 0000000..c5909c3
--- /dev/null
+++ b/deps/inja/.github/workflows/ci.yml
@@ -0,0 +1,261 @@
+# Based on: https://github.com/onqtam/doctest/blob/master/.github/workflows/main.yml
+
+name: CI
+
+on: [push, pull_request]
+
+jobs:
+ ci:
+ name: ${{ matrix.name }}
+ runs-on: ${{ matrix.os }}
+
+ env:
+ CMAKE_GENERATOR: Ninja
+
+ strategy:
+ fail-fast: false
+ matrix:
+ name: [
+ ubuntu-18.04-gcc-4.9,
+ ubuntu-18.04-gcc-5,
+ ubuntu-18.04-gcc-6,
+ ubuntu-18.04-gcc-7,
+ ubuntu-18.04-gcc-8,
+ ubuntu-18.04-gcc-9,
+ ubuntu-18.04-clang-3.5,
+ ubuntu-18.04-clang-3.8,
+ ubuntu-18.04-clang-4.0,
+ ubuntu-18.04-clang-5.0,
+ ubuntu-18.04-clang-6.0,
+ ubuntu-18.04-clang-7,
+ ubuntu-18.04-clang-8,
+ ubuntu-20.04-clang-9,
+ windows-2016-cl,
+ windows-2016-clang-cl,
+ windows-2016-clang,
+ windows-2016-gcc,
+ windows-2019-cl,
+ windows-2019-clang-cl,
+ windows-2019-clang,
+ windows-2019-gcc,
+ macOS-10.15-gcc-7,
+ macOS-10.15-gcc-8,
+ macOS-10.15-gcc-9,
+ macOS-latest-xcode-11.3,
+ macOS-latest-xcode-12.2,
+ ]
+
+ include:
+ - name: ubuntu-18.04-gcc-4.9
+ os: ubuntu-18.04
+ compiler: gcc
+ version: "4.9"
+
+ - name: ubuntu-18.04-gcc-5
+ os: ubuntu-18.04
+ compiler: gcc
+ version: "5"
+
+ - name: ubuntu-18.04-gcc-6
+ os: ubuntu-18.04
+ compiler: gcc
+ version: "6"
+
+ - name: ubuntu-18.04-gcc-7
+ os: ubuntu-18.04
+ compiler: gcc
+ version: "7"
+
+ - name: ubuntu-18.04-gcc-8
+ os: ubuntu-18.04
+ compiler: gcc
+ version: "8"
+
+ - name: ubuntu-18.04-gcc-9
+ os: ubuntu-18.04
+ compiler: gcc
+ version: "9"
+
+ - name: ubuntu-18.04-clang-3.5
+ os: ubuntu-18.04
+ compiler: clang
+ version: "3.5"
+
+ - name: ubuntu-18.04-clang-3.8
+ os: ubuntu-18.04
+ compiler: clang
+ version: "3.8"
+
+ - name: ubuntu-18.04-clang-4.0
+ os: ubuntu-18.04
+ compiler: clang
+ version: "4.0"
+
+ - name: ubuntu-18.04-clang-5.0
+ os: ubuntu-18.04
+ compiler: clang
+ version: "5.0"
+
+ - name: ubuntu-18.04-clang-6.0
+ os: ubuntu-18.04
+ compiler: clang
+ version: "6.0"
+
+ - name: ubuntu-18.04-clang-7
+ os: ubuntu-18.04
+ compiler: clang
+ version: "7"
+
+ - name: ubuntu-18.04-clang-8
+ os: ubuntu-18.04
+ compiler: clang
+ version: "8"
+
+ - name: ubuntu-20.04-clang-9
+ os: ubuntu-20.04
+ compiler: clang
+ version: "9"
+
+ - name: windows-2016-cl
+ os: windows-2016
+ compiler: cl
+
+ - name: windows-2016-clang-cl
+ os: windows-2016
+ compiler: clang-cl
+
+ - name: windows-2016-clang
+ os: windows-2016
+ compiler: clang
+
+ - name: windows-2019-cl
+ os: windows-2019
+ compiler: cl
+
+ - name: windows-2016-gcc
+ os: windows-2016
+ compiler: gcc
+
+ - name: windows-2019-clang-cl
+ os: windows-2019
+ compiler: clang-cl
+
+ - name: windows-2019-clang
+ os: windows-2019
+ compiler: clang
+
+ - name: windows-2019-gcc
+ os: windows-2019
+ compiler: gcc
+
+ - name: macOS-10.15-gcc-7
+ os: macOS-10.15
+ compiler: gcc
+ version: "7"
+
+ - name: macOS-10.15-gcc-8
+ os: macOS-10.15
+ compiler: gcc
+ version: "8"
+
+ - name: macOS-10.15-gcc-9
+ os: macOS-10.15
+ compiler: gcc
+ version: "9"
+
+ - name: macOS-latest-xcode-11.3
+ os: macOS-latest
+ compiler: xcode
+ version: "11.3"
+
+ - name: macOS-latest-xcode-12.2
+ os: macOS-latest
+ compiler: xcode
+ version: "12.2"
+
+ steps:
+ - uses: actions/checkout@v1
+
+ - name: Install (Linux)
+ if: runner.os == 'Linux'
+ run: |
+ # Required for libc6-dbg:i386 and g++-multilib packages which are
+ # needed for x86 builds.
+ sudo dpkg --add-architecture i386
+ # clang-3.7 and earlier are not available in Bionic anymore so we get
+ # them from the Xenial repositories instead.
+ sudo add-apt-repository "deb http://dk.archive.ubuntu.com/ubuntu/ xenial main"
+ sudo add-apt-repository "deb http://dk.archive.ubuntu.com/ubuntu/ xenial universe"
+
+ sudo apt-get update
+ # libc6-dbg:i386 is required for running valgrind on x86.
+ sudo apt-get install -y ninja-build valgrind libc6-dbg:i386 -o APT::Immediate-Configure=0
+ if [ "${{ matrix.compiler }}" = "gcc" ]; then
+ sudo apt-get install -y g++-${{ matrix.version }} g++-${{ matrix.version }}-multilib
+ echo "CC=gcc-${{ matrix.version }}" >> $GITHUB_ENV
+ echo "CXX=g++-${{ matrix.version }}" >> $GITHUB_ENV
+ else
+ sudo apt-get install -y clang-${{ matrix.version }} g++-multilib
+ echo "CC=clang-${{ matrix.version }}" >> $GITHUB_ENV
+ echo "CXX=clang++-${{ matrix.version }}" >> $GITHUB_ENV
+ fi
+
+ - name: Install (macOS)
+ if: runner.os == 'macOS'
+ run: |
+ brew install ninja
+ if [ "${{ matrix.compiler }}" = "gcc" ]; then
+ brew install gcc@${{ matrix.version }}
+ brew link gcc@${{ matrix.version }}
+ echo "CC=gcc-${{ matrix.version }}" >> $GITHUB_ENV
+ echo "CXX=g++-${{ matrix.version }}" >> $GITHUB_ENV
+ else
+ sudo xcode-select -switch /Applications/Xcode_${{ matrix.version }}.app
+ echo "CC=clang" >> $GITHUB_ENV
+ echo "CXX=clang++" >> $GITHUB_ENV
+ fi
+
+ - name: Install (Windows)
+ if: runner.os == 'Windows'
+ shell: powershell
+ run: |
+ Invoke-Expression (New-Object System.Net.WebClient).DownloadString('https://get.scoop.sh')
+ scoop install ninja --global
+ if ("${{ matrix.compiler }}".StartsWith("clang")) {
+ scoop install llvm --global
+ }
+ if ("${{ matrix.compiler }}" -eq "gcc") {
+ # Chocolatey GCC is broken on the windows-2019 image.
+ # See: https://github.com/DaanDeMeyer/doctest/runs/231595515
+ # See: https://github.community/t5/GitHub-Actions/Something-is-wrong-with-the-chocolatey-installed-version-of-gcc/td-p/32413
+ # scoop install gcc --global
+ choco install mingw
+ echo "CC=gcc" >> $GITHUB_ENV
+ echo "CXX=g++" >> $GITHUB_ENV
+ } elseif ("${{ matrix.compiler }}" -eq "clang") {
+ echo "CC=clang" >> $GITHUB_ENV
+ echo "CXX=clang++" >> $GITHUB_ENV
+ } else {
+ echo "CC=${{ matrix.compiler }}" >> $GITHUB_ENV
+ echo "CXX=${{ matrix.compiler }}" >> $GITHUB_ENV
+ }
+ # Scoop modifies the PATH so we make the modified PATH global.
+ echo "PATH=$env:PATH" >> $GITHUB_ENV
+
+ - name: Configure
+ if: runner.os == 'Windows'
+ run: .github\workflows\vsenv.bat -arch=x64 -host_arch=x64
+
+ - name: Build & Test Debug
+ run: |
+ cmake -E remove_directory build
+ cmake -B build -S . -DCMAKE_BUILD_TYPE=Debug
+ cmake --build build -j2
+ cd build && ctest -j2 --output-on-failure
+
+ - name: Build & Test Release
+ run: |
+ cmake -E remove_directory build
+ cmake -B build -S . -DCMAKE_BUILD_TYPE=Release
+ cmake --build build -j2
+ cd build && ctest -j2 --output-on-failure