2024-03-10 10:48:11 +01:00
|
|
|
name: CI - Build
|
2019-10-05 22:25:07 +02:00
|
|
|
|
|
|
|
on:
|
|
|
|
pull_request:
|
|
|
|
push:
|
|
|
|
branches:
|
|
|
|
- master
|
|
|
|
|
2020-12-13 22:32:44 +01:00
|
|
|
env:
|
|
|
|
CTEST_OUTPUT_ON_FAILURE: 1
|
|
|
|
|
2023-02-26 22:36:33 +01:00
|
|
|
concurrency:
|
|
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
|
|
cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
|
|
|
|
|
2019-10-05 22:25:07 +02:00
|
|
|
jobs:
|
2020-12-05 21:57:47 +01:00
|
|
|
emscripten:
|
|
|
|
name: Emscripten
|
|
|
|
|
2024-03-10 10:29:41 +01:00
|
|
|
uses: ./.github/workflows/ci-emscripten.yml
|
|
|
|
secrets: inherit
|
2020-12-05 21:57:47 +01:00
|
|
|
|
2019-10-05 22:25:07 +02:00
|
|
|
linux:
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
include:
|
2023-09-17 19:47:55 +02:00
|
|
|
- name: Clang - Debug
|
2024-01-16 20:38:42 +01:00
|
|
|
compiler: clang-15
|
|
|
|
cxxcompiler: clang++-15
|
2023-08-28 19:04:36 +02:00
|
|
|
libraries: libsdl2-dev
|
2023-09-17 19:47:55 +02:00
|
|
|
- name: Clang - Release
|
2024-01-16 20:38:42 +01:00
|
|
|
compiler: clang-15
|
|
|
|
cxxcompiler: clang++-15
|
2023-09-17 19:47:55 +02:00
|
|
|
libraries: libsdl2-dev
|
|
|
|
extra-cmake-parameters: -DCMAKE_BUILD_TYPE=RelWithDebInfo -DOPTION_USE_ASSERTS=OFF
|
2023-04-27 20:15:09 +02:00
|
|
|
- name: GCC - SDL2
|
|
|
|
compiler: gcc
|
2021-02-19 19:34:40 +01:00
|
|
|
cxxcompiler: g++
|
2023-08-28 19:04:36 +02:00
|
|
|
libraries: libsdl2-dev
|
2023-04-27 20:15:09 +02:00
|
|
|
- name: GCC - Dedicated
|
|
|
|
compiler: gcc
|
2021-03-03 18:26:09 +01:00
|
|
|
cxxcompiler: g++
|
2023-12-06 13:30:47 +01:00
|
|
|
libraries: grfcodec
|
2023-05-07 19:22:30 +02:00
|
|
|
extra-cmake-parameters: -DOPTION_DEDICATED=ON -DCMAKE_CXX_FLAGS_INIT="-DRANDOM_DEBUG" -DCMAKE_DISABLE_PRECOMPILE_HEADERS=ON
|
2023-08-28 19:04:36 +02:00
|
|
|
# Compile without SDL / SDL2, as that should compile fine too.
|
2023-04-27 20:15:09 +02:00
|
|
|
|
|
|
|
name: Linux (${{ matrix.name }})
|
2020-12-13 22:32:44 +01:00
|
|
|
|
2024-03-10 10:29:41 +01:00
|
|
|
uses: ./.github/workflows/ci-linux.yml
|
|
|
|
secrets: inherit
|
2023-08-20 17:16:08 +02:00
|
|
|
|
2024-03-10 10:29:41 +01:00
|
|
|
with:
|
|
|
|
compiler: ${{ matrix.compiler }}
|
|
|
|
cxxcompiler: ${{ matrix.cxxcompiler }}
|
|
|
|
libraries: ${{ matrix.libraries }}
|
|
|
|
extra-cmake-parameters: ${{ matrix.extra-cmake-parameters }}
|
2023-12-06 13:30:47 +01:00
|
|
|
|
2020-12-13 22:32:44 +01:00
|
|
|
macos:
|
2019-10-05 22:25:07 +02:00
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
2020-12-13 22:32:44 +01:00
|
|
|
include:
|
2024-03-10 09:33:47 +01:00
|
|
|
- arch: arm64
|
|
|
|
full_arch: arm64
|
2020-12-13 22:32:44 +01:00
|
|
|
|
2023-04-27 20:15:09 +02:00
|
|
|
name: Mac OS (${{ matrix.arch }})
|
|
|
|
|
2024-03-10 10:29:41 +01:00
|
|
|
uses: ./.github/workflows/ci-macos.yml
|
|
|
|
secrets: inherit
|
2021-02-21 01:03:39 +01:00
|
|
|
|
2024-03-10 10:29:41 +01:00
|
|
|
with:
|
|
|
|
arch: ${{ matrix.arch }}
|
|
|
|
full_arch: ${{ matrix.full_arch }}
|
2019-10-05 22:25:07 +02:00
|
|
|
|
2020-12-13 22:32:44 +01:00
|
|
|
windows:
|
2019-10-05 22:25:07 +02:00
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
2020-12-13 22:32:44 +01:00
|
|
|
matrix:
|
2024-03-10 10:29:41 +01:00
|
|
|
include:
|
|
|
|
- os: windows-latest
|
|
|
|
arch: x86
|
|
|
|
- os: windows-latest
|
|
|
|
arch: x64
|
2021-02-20 22:40:20 +01:00
|
|
|
|
2024-03-10 10:48:11 +01:00
|
|
|
name: Windows (${{ matrix.arch }})
|
2019-10-05 22:25:07 +02:00
|
|
|
|
2024-03-10 10:29:41 +01:00
|
|
|
uses: ./.github/workflows/ci-windows.yml
|
|
|
|
secrets: inherit
|
2021-05-10 14:48:04 +02:00
|
|
|
|
2024-03-10 10:29:41 +01:00
|
|
|
with:
|
|
|
|
os: ${{ matrix.os }}
|
|
|
|
arch: ${{ matrix.arch }}
|
2021-06-10 23:54:52 +02:00
|
|
|
|
2021-05-10 14:48:04 +02:00
|
|
|
check_annotations:
|
|
|
|
name: Check Annotations
|
|
|
|
needs:
|
|
|
|
- emscripten
|
|
|
|
- linux
|
|
|
|
- macos
|
|
|
|
- windows
|
|
|
|
|
|
|
|
if: always() && github.event_name == 'pull_request'
|
|
|
|
|
2021-05-20 19:12:33 +02:00
|
|
|
runs-on: ubuntu-latest
|
2021-05-10 14:48:04 +02:00
|
|
|
|
|
|
|
steps:
|
|
|
|
- name: Check annotations
|
2024-01-25 22:22:33 +01:00
|
|
|
uses: OpenTTD/actions/annotation-check@v5
|