|
|
|
stages:
|
|
|
|
- build
|
|
|
|
|
|
|
|
Debian:
|
|
|
|
tags:
|
|
|
|
- docker
|
|
|
|
- linux
|
|
|
|
image: debian:bullseye
|
|
|
|
cache:
|
|
|
|
key: apt-cache
|
|
|
|
paths:
|
|
|
|
- apt-cache/
|
|
|
|
before_script:
|
|
|
|
- export APT_CACHE_DIR=`pwd`/apt-cache && mkdir -pv $APT_CACHE_DIR
|
|
|
|
- apt-get update -yq
|
|
|
|
- apt-get -o dir::cache::archives="$APT_CACHE_DIR" install -y cmake build-essential libboost-filesystem-dev libboost-program-options-dev libboost-system-dev libboost-iostreams-dev libavcodec-dev libavformat-dev libavutil-dev libswscale-dev libswresample-dev libsdl2-dev libqt5opengl5-dev libopenal-dev libopenscenegraph-dev libunshield-dev libtinyxml-dev libmygui-dev libbullet-dev
|
|
|
|
stage: build
|
|
|
|
script:
|
|
|
|
- cores_to_use=$((`nproc`-2)); if (( $cores_to_use < 1 )); then cores_to_use=1; fi
|
|
|
|
- mkdir build; cd build; cmake -DCMAKE_BUILD_TYPE=MinSizeRel ../
|
|
|
|
- make -j$cores_to_use
|
|
|
|
- DESTDIR=artifacts make install
|
|
|
|
artifacts:
|
|
|
|
paths:
|
|
|
|
- build/artifacts/
|
|
|
|
|
|
|
|
MacOS:
|
|
|
|
tags:
|
|
|
|
- macos
|
|
|
|
- xcode
|
|
|
|
except:
|
|
|
|
- branches # because our CI VMs are not public, MRs can't use them and timeout
|
|
|
|
stage: build
|
|
|
|
allow_failure: true
|
|
|
|
script:
|
|
|
|
- rm -fr build/* # remove anything in the build directory
|
|
|
|
- CI/before_install.osx.sh
|
|
|
|
- CI/before_script.osx.sh
|
|
|
|
- cd build; make -j2 package
|
|
|
|
artifacts:
|
|
|
|
paths:
|
|
|
|
- build/OpenMW-*.dmg
|
|
|
|
|
|
|
|
Windows:
|
|
|
|
tags:
|
|
|
|
- windows
|
|
|
|
stage: build
|
|
|
|
allow_failure: true
|
|
|
|
script:
|
|
|
|
- Set-Variable -Name "time" -Value (date -Format "%H:%m")
|
|
|
|
- echo ${time}
|
|
|
|
- echo "started by ${GITLAB_USER_NAME}"
|
|
|
|
# TODO: to anyone wanting to do further work here, we need to figure out how to get the below working
|
|
|
|
# TODO: on gitlab's new shared windows runners. They currently don't have bash or anything else installed
|
|
|
|
# TODO: it is currently just a bare windows 10 with powershell.
|
|
|
|
# - env # turn on for debugging
|
|
|
|
# - sh %CI_PROJECT_DIR%/CI/before_script.msvc.sh -c Release -p x64 -v 2017 -V
|
|
|
|
# - SET msBuildLocation="C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin\msbuild.exe"
|
|
|
|
# - call %msBuildLocation% MSVC2017_64\OpenMW.sln /t:Build /p:Configuration=Release /m:%NUMBER_OF_PROCESSORS%
|
|
|
|
# - 7z a OpenMW_MSVC2017_64_%CI_BUILD_REF_NAME%_%CI_BUILD_ID%.zip %CI_PROJECT_DIR%\MSVC2017_64\Release\
|
|
|
|
cache:
|
|
|
|
paths:
|
|
|
|
- deps
|
|
|
|
artifacts:
|
|
|
|
paths:
|
|
|
|
- "*.zip"
|