|
|
|
|
version: 2
|
|
|
|
|
jobs:
|
|
|
|
|
linux_x86_64:
|
|
|
|
|
docker:
|
|
|
|
|
- image: debian:stretch-backports
|
|
|
|
|
working_directory: ~/repo
|
|
|
|
|
steps:
|
|
|
|
|
- checkout
|
|
|
|
|
- run: echo deb http://deb.debian.org/debian stretch-backports-sloppy main >> /etc/apt/sources.list.d/debian-backports.list
|
|
|
|
|
- run: apt-get update -y
|
|
|
|
|
- run: apt-get install -y g++ libsdl2-dev libsdl2-mixer-dev libsdl2-ttf-dev git rpm
|
|
|
|
|
- run: apt-get install -y -t 'stretch-backports*' cmake libsodium-dev
|
|
|
|
|
- run: cmake -S. -Bbuild .. -DNIGHTLY_BUILD=ON
|
|
|
|
|
- run: cmake --build build -j $(nproc)
|
|
|
|
|
- run: cmake --build build --target package
|
|
|
|
|
- store_artifacts: {path: ./build/devilutionx, destination: devilutionx_linux_x86_64}
|
|
|
|
|
linux_x86_64_test:
|
|
|
|
|
docker:
|
|
|
|
|
- image: debian:stable
|
|
|
|
|
working_directory: ~/repo
|
|
|
|
|
steps:
|
|
|
|
|
- checkout
|
|
|
|
|
- run: apt-get update -y
|
|
|
|
|
- run: apt-get install -y g++ libsdl2-dev libsdl2-mixer-dev libsdl2-ttf-dev git cmake libsodium-dev libgtest-dev lcov curl
|
|
|
|
|
- run: cmake -S. -Bbuild -DRUN_TESTS=ON
|
|
|
|
|
- run: cmake --build build -j $(nproc)
|
|
|
|
|
- run: cmake --build build -j $(nproc) --target test
|
|
|
|
|
- run: bash <(curl -s https://codecov.io/bash)
|
|
|
|
|
linux_x86_64_sdl1:
|
|
|
|
|
docker:
|
|
|
|
|
- image: debian:stretch-backports
|
|
|
|
|
working_directory: ~/repo
|
|
|
|
|
steps:
|
|
|
|
|
- checkout
|
|
|
|
|
- run: echo deb http://deb.debian.org/debian stretch-backports-sloppy main >> /etc/apt/sources.list.d/debian-backports.list
|
|
|
|
|
- run: apt-get update -y
|
|
|
|
|
- run: apt-get install -y g++ libsdl-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev git rpm
|
|
|
|
|
- run: apt-get install -y -t 'stretch-backports*' cmake libsodium-dev
|
|
|
|
|
- run: cmake -S. -Bbuild .. -DNIGHTLY_BUILD=ON -DUSE_SDL1=ON
|
|
|
|
|
- run: cmake --build build -j $(nproc)
|
|
|
|
|
- run: cmake --build build --target package
|
|
|
|
|
- store_artifacts: {path: ./build/devilutionx, destination: devilutionx_linux_x86_64_sdl1}
|
|
|
|
|
linux_x86:
|
|
|
|
|
docker:
|
|
|
|
|
- image: debian:stretch-backports
|
|
|
|
|
working_directory: ~/repo
|
|
|
|
|
steps:
|
|
|
|
|
- checkout
|
|
|
|
|
- run: echo deb http://deb.debian.org/debian stretch-backports-sloppy main >> /etc/apt/sources.list.d/debian-backports.list
|
|
|
|
|
- run: dpkg --add-architecture i386
|
|
|
|
|
- run: apt-get update -y
|
|
|
|
|
- run: apt-get install -y g++-multilib libsdl2-dev:i386 libsdl2-mixer-dev:i386 libsdl2-ttf-dev:i386 libsodium-dev git rpm
|
|
|
|
|
- run: apt-get install -y -t 'stretch-backports*' cmake libsodium-dev:i386
|
|
|
|
|
- run: cmake -S. -Bbuild -DNIGHTLY_BUILD=ON -DCMAKE_TOOLCHAIN_FILE=../CMake/32bit.cmake
|
|
|
|
|
- run: cmake --build build -j $(nproc)
|
|
|
|
|
- run: cmake --build build --target package
|
|
|
|
|
- store_artifacts: {path: ./build/devilutionx, destination: devilutionx_linux_x86}
|
|
|
|
|
windows_x86:
|
|
|
|
|
docker:
|
|
|
|
|
- image: debian:stable
|
|
|
|
|
working_directory: ~/repo
|
|
|
|
|
steps:
|
|
|
|
|
- checkout
|
|
|
|
|
- run: apt-get update -y
|
|
|
|
|
- run: apt-get install -y cmake gcc-mingw-w64-i686 g++-mingw-w64-i686 wget git sudo
|
|
|
|
|
- run: Packaging/windows/mingw-prep.sh
|
|
|
|
|
- run: cmake -S. -Bbuild -DNIGHTLY_BUILD=ON -DCMAKE_TOOLCHAIN_FILE=../CMake/mingwcc.cmake
|
|
|
|
|
- run: cmake --build build -j $(nproc)
|
|
|
|
|
- run: cmake --build build --target package
|
|
|
|
|
- store_artifacts: {path: ./build/devilutionx.exe, destination: devilutionx_x86.exe}
|
|
|
|
|
- store_artifacts: {path: ./build/devilutionx.zip, destination: devilutionx_x86.zip}
|
|
|
|
|
windows_x64:
|
|
|
|
|
docker:
|
|
|
|
|
- image: ubuntu:20.04
|
|
|
|
|
environment:
|
|
|
|
|
TZ: "America/Los_Angeles"
|
|
|
|
|
working_directory: ~/repo
|
|
|
|
|
environment:
|
|
|
|
|
TZ: "America/Los_Angeles"
|
|
|
|
|
steps:
|
|
|
|
|
- checkout
|
|
|
|
|
- run: apt-get update -y
|
|
|
|
|
- run: DEBIAN_FRONTEND="noninteractive" TZ="America/Los_Angeles" apt-get install -y cmake gcc-mingw-w64-x86-64 g++-mingw-w64-x86-64 wget git sudo
|
|
|
|
|
- run: Packaging/windows/mingw-prep64.sh
|
|
|
|
|
- run: cmake -S. -Bbuild -DNIGHTLY_BUILD=ON -DCMAKE_TOOLCHAIN_FILE=../CMake/mingwcc64.cmake
|
|
|
|
|
- run: cmake --build build -j $(nproc)
|
|
|
|
|
- run: cmake --build build --target package
|
|
|
|
|
- store_artifacts: {path: ./build/devilutionx.exe, destination: devilutionx_x64.exe}
|
|
|
|
|
- store_artifacts: {path: ./build/devilutionx.zip, destination: devilutionx_x64.zip}
|
|
|
|
|
switch:
|
|
|
|
|
docker:
|
|
|
|
|
- image: devkitpro/devkita64:20200528
|
|
|
|
|
working_directory: ~/repo
|
|
|
|
|
steps:
|
|
|
|
|
- checkout
|
|
|
|
|
- run: echo deb http://deb.debian.org/debian stretch-backports main > /etc/apt/sources.list.d/debian-backports.list
|
|
|
|
|
- run: echo deb http://deb.debian.org/debian stretch-backports-sloppy main >> /etc/apt/sources.list.d/debian-backports.list
|
|
|
|
|
- run: apt-get update && apt-get install -y -t 'stretch-backports*' cmake
|
|
|
|
|
- run: dkp-pacman -Syu --noconfirm
|
|
|
|
|
# Install cmake files (https://github.com/devkitPro/docker/issues/3)
|
|
|
|
|
- run: dkp-pacman -S --needed --noconfirm --quiet devkitpro-pkgbuild-helpers
|
|
|
|
|
- run: cmake -S. -Bbuild .. -DBINARY_RELEASE=ON -DCMAKE_TOOLCHAIN_FILE=../CMake/switch/devkita64-libnx.cmake
|
|
|
|
|
- run: cmake --build build -j $(nproc)
|
|
|
|
|
- store_artifacts: {path: ./build/devilutionx.nro, destination: devilutionx.nro}
|
|
|
|
|
amigaos-m68k:
|
|
|
|
|
docker:
|
|
|
|
|
- image: amigadev/crosstools:m68k-amigaos
|
|
|
|
|
working_directory: ~/repo
|
|
|
|
|
steps:
|
|
|
|
|
- checkout
|
|
|
|
|
- run: Packaging/amiga/prep.sh
|
|
|
|
|
- run: PKG_CONFIG_PATH=/opt/m68k-amigaos/lib/pkgconfig/:/opt/m68k-amigaos/share/pkgconfig/ cmake -S. -Bbuild -DM68K_CPU=68040 -DM68K_FPU=hard -DM68K_COMMON="-s -ffast-math -O3 -noixemul -D__BIG_ENDIAN__ -D__AMIGA__ -fpermissive" ..
|
|
|
|
|
- run: cd build && make -j$(nproc)
|
|
|
|
|
- store_artifacts: {path: ./build/devilutionx, destination: devilutionx_m68k}
|
|
|
|
|
|
|
|
|
|
workflows:
|
|
|
|
|
version: 2
|
|
|
|
|
testflow:
|
|
|
|
|
jobs:
|
|
|
|
|
- linux_x86_64
|
|
|
|
|
- linux_x86_64_test
|
|
|
|
|
- linux_x86
|
|
|
|
|
- windows_x86
|
|
|
|
|
- windows_x64
|
|
|
|
|
- linux_x86_64_sdl1
|
|
|
|
|
- switch
|
|
|
|
|
- amigaos-m68k
|