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
 | 
						|
        - 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
 | 
						|
        - "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"
 |