134 lines
4.1 KiB
YAML
134 lines
4.1 KiB
YAML
variables:
|
|
GIT_SUBMODULE_STRATEGY: normal
|
|
|
|
stages:
|
|
- test
|
|
- build
|
|
- pages
|
|
|
|
tests:
|
|
stage: test
|
|
before_script:
|
|
- apt-get update -qq
|
|
- apt-get install -y -qq libsdl1.2-dev libpng-dev libsdl-ttf2.0-dev libsdl-image1.2-dev liblua5.3-dev
|
|
script:
|
|
- "CFLAGS=-fsanitize=address LDFLAGS=-fsanitize=address OPTIM=0 make check || exit 1"
|
|
artifacts:
|
|
reports:
|
|
junit: test-report.xml
|
|
|
|
checkversions:
|
|
stage: test
|
|
allow_failure: true
|
|
script:
|
|
- "make -C 3rdparty/ checkversions && test ! -f 3rdparty/check-version-failed || exit 1"
|
|
|
|
job_linux:
|
|
stage: build
|
|
before_script:
|
|
- apt-get update -qq && apt-get install -y -qq zip
|
|
- apt-get install -y -qq libsdl1.2-dev libpng-dev libsdl-ttf2.0-dev libsdl-image1.2-dev liblua5.3-dev
|
|
- apt-get install -y -qq libsdl2-dev libsdl2-image-dev libsdl2-ttf-dev doxygen graphviz
|
|
script:
|
|
- "make -j3 || exit 1"
|
|
- "make ziprelease || exit 1"
|
|
- "API=sdl2 make -j3 && API=sdl2 make ziprelease || exit 1"
|
|
- "make docarchive || exit 1"
|
|
after_script:
|
|
- "echo $CI_JOB_ID > LINUX_JOB_ID"
|
|
artifacts:
|
|
paths:
|
|
- "*.zip"
|
|
- "grafx2*.tgz"
|
|
- "VERSION"
|
|
- "LINUX_JOB_ID"
|
|
|
|
pages:
|
|
stage: pages
|
|
script:
|
|
- "NOLUA=1 API=x11 make htmldoc"
|
|
- "mkdir -p public/htmldoc && cp doc/html/* public/htmldoc/"
|
|
- "cp share/grafx2/gfx2.png public/"
|
|
- "./.gitlab-page.sh"
|
|
- "cd public && tar xzf ../grafx2*doxygen.tgz"
|
|
artifacts:
|
|
paths:
|
|
- public
|
|
only:
|
|
- master
|
|
- gitlab-pages
|
|
|
|
job_win32:
|
|
stage: build
|
|
before_script:
|
|
- apt-get update -qq && apt-get install -y -qq zip dos2unix gpg
|
|
- apt-get install -y -qq gcc-mingw-w64-i686 g++-mingw-w64-i686 mingw-w64-tools nsis
|
|
script:
|
|
- "WIN32CROSS=1 make 3rdparty -j2 || exit 1"
|
|
- "WIN32CROSS=1 make -j2 || exit 1"
|
|
- "WIN32CROSS=1 make ziprelease || exit 1"
|
|
- "WIN32CROSS=1 make win32installer || exit 1"
|
|
- "WIN32CROSS=1 API=win32 make -j2 || exit 1"
|
|
- "WIN32CROSS=1 API=win32 make ziprelease || exit 1"
|
|
- "WIN32CROSS=1 API=win32 make win32installer || exit 1"
|
|
- "WIN32CROSS=1 API=sdl2 make 3rdparty -j2 || exit 1"
|
|
- "WIN32CROSS=1 API=sdl2 make -j2 || exit 1"
|
|
- "WIN32CROSS=1 API=sdl2 make ziprelease || exit 1"
|
|
- "WIN32CROSS=1 API=sdl2 make win32installer || exit 1"
|
|
after_script:
|
|
- "echo $CI_JOB_ID > WIN32_JOB_ID"
|
|
artifacts:
|
|
paths:
|
|
- "*.zip"
|
|
- "install/grafx2*.exe"
|
|
- "WIN32_JOB_ID"
|
|
|
|
job_atari:
|
|
stage: build
|
|
before_script:
|
|
- apt-get update -qq && apt-get install -y -qq zip dos2unix lsb-release gpg
|
|
- "sh ./.install-cross-mint.sh"
|
|
script:
|
|
- "ATARICROSS=1 make 3rdparty -j2 || exit 1"
|
|
- "ATARICROSS=1 make -j2 || exit 1"
|
|
- "ATARICROSS=1 make ziprelease || exit 1"
|
|
after_script:
|
|
- "echo $CI_JOB_ID > ATARI_JOB_ID"
|
|
artifacts:
|
|
paths:
|
|
- "*.zip"
|
|
- "ATARI_JOB_ID"
|
|
|
|
job_gp2x:
|
|
stage: build
|
|
before_script:
|
|
- dpkg --add-architecture i386
|
|
- apt-get update -qq && apt-get install -y -qq zip dos2unix
|
|
- apt-get install -y -qq multiarch-support libc6:i386
|
|
- "sh ./.install-gp2x-toolchain.sh"
|
|
script:
|
|
- "NOLUA=1 GP2XCROSS=1 make -j2 grafx2 || exit 1"
|
|
- "NOLUA=1 GP2XCROSS=1 make ziprelease || exit 1"
|
|
after_script:
|
|
- "echo $CI_JOB_ID > GP2X_JOB_ID"
|
|
artifacts:
|
|
paths:
|
|
- "*.zip"
|
|
- "GP2X_JOB_ID"
|
|
|
|
job_switch:
|
|
stage: build
|
|
image: devkitpro/devkita64
|
|
before_script:
|
|
- apt-get update -qq && apt-get install -y -qq build-essential libpng-dev zip dos2unix
|
|
- "export PATH=$PATH:$DEVKITPRO/portlibs/switch/bin"
|
|
script:
|
|
- "SWITCH=1 make -j2 grafx2 || exit 1"
|
|
- "SWITCH=1 make ziprelease || exit 1"
|
|
after_script:
|
|
- "echo $CI_JOB_ID > SWITCH_JOB_ID"
|
|
artifacts:
|
|
paths:
|
|
- "*.zip"
|
|
- "SWITCH_JOB_ID"
|