mirror of
https://github.com/TerryCavanagh/VVVVVV.git
synced 2026-01-29 09:28:15 +03:00
This updates all references to SDL 2.0.22 to SDL 2.24.0, including the Docker container that I maintain for Linux CI. Be warned, this release of SDL updates the versioning scheme to be less dumb. The previous version is 2.0.22, this release is 2.24.0 (so the last number can be properly used for patch-level version releases).
191 lines
5.0 KiB
YAML
191 lines
5.0 KiB
YAML
name: CI
|
|
|
|
# Trigger this workflow on push or pull request
|
|
on: [push, pull_request]
|
|
|
|
env:
|
|
SRC_DIR_PATH: desktop_version
|
|
|
|
jobs:
|
|
build-mac:
|
|
name: Build (macos-latest)
|
|
|
|
runs-on: macos-latest
|
|
|
|
env:
|
|
CXXFLAGS: -I/usr/local/include/SDL2
|
|
LDFLAGS: -L/usr/local/lib
|
|
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
with:
|
|
submodules: true
|
|
|
|
- name: Install dependencies
|
|
run: brew install ninja sdl2
|
|
|
|
- name: CMake configure (default version)
|
|
run: |
|
|
mkdir ${SRC_DIR_PATH}/build && cd ${SRC_DIR_PATH}/build
|
|
cmake -GNinja ..
|
|
- name: Build (default version)
|
|
run: ninja -C ${SRC_DIR_PATH}/build
|
|
|
|
- name: CMake configure (official)
|
|
run: |
|
|
cd ${SRC_DIR_PATH}/build
|
|
cmake -DOFFICIAL_BUILD=ON ..
|
|
- name: Build (official)
|
|
run: |
|
|
ninja -C ${SRC_DIR_PATH}/build
|
|
|
|
- name: CMake configure (M&P)
|
|
run: |
|
|
cd ${SRC_DIR_PATH}/build
|
|
cmake -DOFFICIAL_BUILD=OFF -DMAKEANDPLAY=ON ..
|
|
- name: Build (M&P)
|
|
run: ninja -C ${SRC_DIR_PATH}/build
|
|
|
|
- name: CMake configure (no custom levels)
|
|
run: |
|
|
cd ${SRC_DIR_PATH}/build
|
|
cmake -DMAKEANDPLAY=OFF -DCUSTOM_LEVEL_SUPPORT=DISABLED ..
|
|
- name: Build (no custom levels)
|
|
run: ninja -C ${SRC_DIR_PATH}/build
|
|
|
|
- name: CMake configure (no editor)
|
|
run: |
|
|
cd ${SRC_DIR_PATH}/build
|
|
cmake -DCUSTOM_LEVEL_SUPPORT=NO_EDITOR ..
|
|
- name: Build (no editor)
|
|
run: ninja -C ${SRC_DIR_PATH}/build
|
|
|
|
build-lin:
|
|
name: Build (CentOS 7)
|
|
|
|
runs-on: ubuntu-latest
|
|
container: ghcr.io/infoteddy/vvvvvv-build@sha256:50a2f769db3ca180286e9a76c1bf06b7016544a78e1fc7a9a0cc1144c675ced1
|
|
|
|
env:
|
|
CXXFLAGS: -I/usr/local/include/SDL2
|
|
LDFLAGS: -L/usr/local/lib
|
|
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
with:
|
|
submodules: true
|
|
|
|
- name: CMake configure (default version)
|
|
run: |
|
|
mkdir ${SRC_DIR_PATH}/build && cd ${SRC_DIR_PATH}/build
|
|
cmake ..
|
|
- name: Build (default version)
|
|
run: make -j $(nproc) -C ${SRC_DIR_PATH}/build
|
|
|
|
- name: CMake configure (official)
|
|
run: |
|
|
cd ${SRC_DIR_PATH}/build
|
|
cmake -DOFFICIAL_BUILD=ON ..
|
|
- name: Build (official)
|
|
run: |
|
|
make -j $(nproc) -C ${SRC_DIR_PATH}/build
|
|
|
|
- name: CMake configure (M&P)
|
|
run: |
|
|
cd ${SRC_DIR_PATH}/build
|
|
cmake -DOFFICIAL_BUILD=OFF -DMAKEANDPLAY=ON ..
|
|
- name: Build (M&P)
|
|
run: make -j $(nproc) -C ${SRC_DIR_PATH}/build
|
|
|
|
- name: CMake configure (no custom levels)
|
|
run: |
|
|
cd ${SRC_DIR_PATH}/build
|
|
cmake -DMAKEANDPLAY=OFF -DCUSTOM_LEVEL_SUPPORT=DISABLED ..
|
|
- name: Build (no custom levels)
|
|
run: make -j $(nproc) -C ${SRC_DIR_PATH}/build
|
|
|
|
- name: CMake configure (no editor)
|
|
run: |
|
|
cd ${SRC_DIR_PATH}/build
|
|
cmake -DCUSTOM_LEVEL_SUPPORT=NO_EDITOR ..
|
|
- name: Build (no editor)
|
|
run: make -j $(nproc) -C ${SRC_DIR_PATH}/build
|
|
|
|
build-win:
|
|
name: Build (windows-latest)
|
|
|
|
runs-on: windows-latest
|
|
|
|
env:
|
|
SDL_VERSION: 2.0.22
|
|
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
with:
|
|
submodules: true
|
|
|
|
- name: Cache SDL
|
|
uses: actions/cache@v2
|
|
env:
|
|
cache-name: cache-sdl
|
|
with:
|
|
path: C:\SDL
|
|
key: ${{ runner.os }}-build-${{ env.cache-name }}
|
|
|
|
- name: Download SDL if not cached
|
|
run: |
|
|
if (-Not (Test-Path C:\SDL))
|
|
{
|
|
Invoke-WebRequest "https://github.com/libsdl-org/SDL/releases/download/release-$env:SDL_VERSION/SDL2-devel-$env:SDL_VERSION-VC.zip" -o C:\SDL.zip
|
|
Expand-Archive C:\SDL.zip -DestinationPath C:\
|
|
}
|
|
|
|
- name: CMake configure (default version)
|
|
run: |
|
|
mkdir $env:SRC_DIR_PATH/build
|
|
cd $env:SRC_DIR_PATH/build
|
|
$env:LDFLAGS = "/LIBPATH:C:\SDL2-$env:SDL_VERSION\lib\x86 "
|
|
cmake -G "Visual Studio 17 2022" -A Win32 `
|
|
-DSDL2_INCLUDE_DIRS="C:\SDL2-$env:SDL_VERSION\include" `
|
|
-DSDL2_LIBRARIES="SDL2;SDL2main" ..
|
|
- name: Build (default version)
|
|
run: |
|
|
cd $env:SRC_DIR_PATH/build
|
|
cmake --build .
|
|
|
|
- name: CMake configure (official)
|
|
run: |
|
|
cd $env:SRC_DIR_PATH/build
|
|
cmake -DOFFICIAL_BUILD=ON ..
|
|
- name: Build (official)
|
|
run: |
|
|
cd $env:SRC_DIR_PATH/build
|
|
cmake --build .
|
|
|
|
- name: CMake configure (M&P)
|
|
run: |
|
|
cd $env:SRC_DIR_PATH/build
|
|
cmake -DOFFICIAL_BUILD=OFF -DMAKEANDPLAY=ON ..
|
|
- name: Build (M&P)
|
|
run: |
|
|
cd $env:SRC_DIR_PATH/build
|
|
cmake --build .
|
|
|
|
- name: CMake configure (no custom levels)
|
|
run: |
|
|
cd $env:SRC_DIR_PATH/build
|
|
cmake -DMAKEANDPLAY=OFF -DCUSTOM_LEVEL_SUPPORT=DISABLED ..
|
|
- name: Build (no custom levels)
|
|
run: |
|
|
cd $env:SRC_DIR_PATH/build
|
|
cmake --build .
|
|
|
|
- name: CMake configure (no editor)
|
|
run: |
|
|
cd $env:SRC_DIR_PATH/build
|
|
cmake -DCUSTOM_LEVEL_SUPPORT=NO_EDITOR ..
|
|
- name: Build (no editor)
|
|
run: |
|
|
cd $env:SRC_DIR_PATH/build
|
|
cmake --build .
|