Daniel Kolesa
5e9aefb52a
apparently macos c++ stdlib is missing c++20 features (particularly string_view doesn't seem to accept two pointers in a constructor) and mingw is only present as gcc9 in ubuntu 20.04 (too old)
88 lines
2.6 KiB
YAML
88 lines
2.6 KiB
YAML
name: CI
|
|
|
|
on: push
|
|
|
|
jobs:
|
|
linux:
|
|
name: Linux
|
|
runs-on: ubuntu-20.04
|
|
|
|
env:
|
|
TARGET: '${{ matrix.config.target }}'
|
|
CC: '${{ matrix.config.cc }}'
|
|
BUILDTYPE: '${{ matrix.config.buildtype }}'
|
|
|
|
strategy:
|
|
matrix:
|
|
config:
|
|
# x86_64: test gcc, clang, + release mode to catch assert bugs
|
|
- { target: x86_64-linux-gnu, cc: gcc-10, buildtype: debugoptimized }
|
|
- { target: x86_64-linux-gnu, cc: gcc-10, buildtype: release }
|
|
- { target: x86_64-linux-gnu, cc: clang, buildtype: debugoptimized }
|
|
# 32-bit x86
|
|
- { target: i686-linux-gnu, cc: gcc-10, buildtype: debugoptimized }
|
|
# all powerpc
|
|
- { target: powerpc64le-linux-gnu, cc: gcc-10, buildtype: debugoptimized }
|
|
- { target: powerpc64-linux-gnu, cc: gcc-10, buildtype: debugoptimized }
|
|
- { target: powerpc-linux-gnu, cc: gcc-10, buildtype: debugoptimized }
|
|
# aarch64 and arm
|
|
- { target: aarch64-linux-gnu, cc: gcc-10, buildtype: debugoptimized }
|
|
- { target: arm-linux-gnueabi, cc: gcc-10, buildtype: debugoptimized }
|
|
# riscv64 and s390x
|
|
- { target: riscv64-linux-gnu, cc: gcc-10, buildtype: debugoptimized }
|
|
- { target: s390x-linux-gnu, cc: gcc-10, buildtype: debugoptimized }
|
|
# mips, m68k
|
|
- { target: mips-linux-gnu, cc: gcc-10, buildtype: debugoptimized }
|
|
- { target: m68k-linux-gnu, cc: gcc-10, buildtype: debug }
|
|
# x86_64 windows cross, release mode
|
|
# there is no gcc10 mingw64 crosscompiler yet and gcc9 is too old
|
|
#- { target: x86_64-w64-mingw32, cc: gcc-10, buildtype: release }
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
with:
|
|
persist-credentials: false
|
|
|
|
- name: Prepare environment
|
|
run: sh ./.ci/install-env
|
|
|
|
- name: Build and test cubescript
|
|
run: sh ./.ci/build-cs
|
|
|
|
windows:
|
|
name: Windows
|
|
runs-on: windows-2019
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
with:
|
|
persist-credentials: false
|
|
|
|
- name: Prepare environment
|
|
run: bash ./.ci/install-env-windows
|
|
|
|
- name: Build and test cubescript
|
|
run: bash ./.ci/build-cs-windows
|
|
|
|
# mac:
|
|
# name: MacOS
|
|
# runs-on: macos-10.15
|
|
|
|
# env:
|
|
# TARGET: 'darwin'
|
|
# CC: 'clang'
|
|
|
|
# steps:
|
|
# - name: Checkout
|
|
# uses: actions/checkout@v2
|
|
# with:
|
|
# persist-credentials: false
|
|
|
|
# - name: Prepare environment
|
|
# run: sh ./.ci/install-env
|
|
|
|
# - name: Build and test cubescript
|
|
# run: sh ./.ci/build-cs
|