stages: - build # with :; prevent from run it on windows before_script: - ":; uname -a" - ":; cat /etc/os-release" - ":; pwd" - ":; cat /proc/sys/kernel/core_pattern" - ":; mkdir logs || true" - ":; ${UPDATEREPOS}" - ":; ${DOCKERRETRY} ${PMUPDATE} >logs/apt.log" - ":; ${DOCKERRETRY} ${PMINSTALL} ${PACKAGES} >>logs/apt.log" - ":; ./tools/ci/scripts/clonesrc.sh" - ":; cd manaplus" image: debian:unstable variables: GET_SOURCES_ATTEMPTS: "5" ARTIFACT_DOWNLOAD_ATTEMPTS: "5" UPDATEREPOS: "tools/ci/scripts/updaterepos.sh" PMUPDATE: "apt-get update" PMINSTALL: "apt-get install -y -qq" DOCKERRETRY: "./tools/ci/scripts/dockerretry.sh" GIT_DEPTH: "1" .job-push: &job-push artifacts: paths: - logs when: always expire_in: 3 week dependencies: [] .job-always: &job-always artifacts: paths: - logs when: always expire_in: 3 week dependencies: [] gcc-6_sanitize_doctest_tests: stage: build script: - ./tools/ci/jobs/gcc6_sanitize_tests.sh --enable-unittests=doctest --without-dyecmd --without-manaplusgame - ldd ./src/manaplustests | grep "libasan" <<: *job-push variables: PACKAGES: gcc-6 g++-6 make autoconf automake autopoint gettext libxml2-dev libcurl4-gnutls-dev libpng-dev libsdl-gfx1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-net1.2-dev libsdl-ttf2.0-dev git valgrind tags: - docker gcc-6_sanitize_doctest_tests_i386: stage: build script: - ./tools/ci/jobs/gcc6_sanitize_tests.sh --enable-unittests=doctest --without-dyecmd --without-manaplusgame - ldd ./src/manaplustests | grep "libasan" image: vicamo/debian:sid-i386 <<: *job-push variables: PACKAGES: gcc-6 g++-6 make autoconf automake autopoint gettext libxml2-dev libcurl4-gnutls-dev libpng-dev libsdl-gfx1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-net1.2-dev libsdl-ttf2.0-dev git valgrind tags: - docker gcc-6_tests_simd: stage: build script: - ./tools/ci/jobs/gcc6_tests_simd.sh --without-dyecmd --without-manaplusgame <<: *job-push variables: PACKAGES: gcc-6 g++-6 make autoconf automake autopoint gettext libxml2-dev libcurl4-gnutls-dev libpng-dev libsdl-gfx1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-net1.2-dev libsdl-ttf2.0-dev git valgrind tags: - docker gcc-6_tests_lto: stage: build script: - ./tools/ci/jobs/gcc6_tests.sh --without-dyecmd --without-manaplusgame <<: *job-push variables: POST_CXXFLAGS: "-ffast-math -O9 -flto -fwhole-program -funswitch-loops" PACKAGES: gcc-6 g++-6 make autoconf automake autopoint gettext libxml2-dev libcurl4-gnutls-dev libpng-dev libsdl-gfx1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-net1.2-dev libsdl-ttf2.0-dev git valgrind tags: - docker gcc-6_tests_lto_i386: stage: build script: - ./tools/ci/jobs/gcc6_tests.sh --without-dyecmd --without-manaplusgame <<: *job-push image: vicamo/debian:sid-i386 variables: POST_CXXFLAGS: "-ffast-math -O9 -flto -fwhole-program -funswitch-loops" PACKAGES: gcc-6 g++-6 make autoconf automake autopoint gettext libxml2-dev libcurl4-gnutls-dev libpng-dev libsdl-gfx1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-net1.2-dev libsdl-ttf2.0-dev git valgrind tags: - docker gcc-6_tests: stage: build script: - ./tools/ci/jobs/gcc6_tests.sh --without-dyecmd --without-manaplusgame <<: *job-push variables: PACKAGES: gcc-6 g++-6 make autoconf automake autopoint gettext libxml2-dev libcurl4-gnutls-dev libpng-dev libsdl-gfx1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-net1.2-dev libsdl-ttf2.0-dev git valgrind tags: - docker gcc-6_tests_i386: stage: build script: - ./tools/ci/jobs/gcc6_tests.sh --without-dyecmd --without-manaplusgame image: vicamo/debian:sid-i386 <<: *job-push variables: PACKAGES: gcc-6 g++-6 make autoconf automake autopoint gettext libxml2-dev libcurl4-gnutls-dev libpng-dev libsdl-gfx1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-net1.2-dev libsdl-ttf2.0-dev git valgrind tags: - docker gcc-6_tests_glibcdebug: stage: build script: - ./tools/ci/jobs/gcc6_tests.sh --without-dyecmd --without-manaplusgame --enable-glibcdebug <<: *job-push variables: PACKAGES: gcc-6 g++-6 make autoconf automake autopoint gettext libxml2-dev libcurl4-gnutls-dev libpng-dev libsdl-gfx1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-net1.2-dev libsdl-ttf2.0-dev git valgrind tags: - docker gcc-6_tests_glibcdebug_i386: stage: build script: - ./tools/ci/jobs/gcc6_tests.sh --without-dyecmd --without-manaplusgame --enable-glibcdebug image: vicamo/debian:sid-i386 <<: *job-push variables: PACKAGES: gcc-6 g++-6 make autoconf automake autopoint gettext libxml2-dev libcurl4-gnutls-dev libpng-dev libsdl-gfx1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-net1.2-dev libsdl-ttf2.0-dev git valgrind tags: - docker gcc-6_sdl2_tests: stage: build script: - ./tools/ci/jobs/gcc6_sdl2_tests.sh --without-dyecmd --without-manaplusgame <<: *job-push variables: PACKAGES: gcc-6 g++-6 make autoconf automake autopoint gettext libxml2-dev libcurl4-gnutls-dev libpng-dev libsdl2-dev libsdl2-gfx-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-net-dev libsdl2-ttf-dev gcovr git valgrind tags: - docker gcc-6_sdl2_tests_i386: stage: build script: - ./tools/ci/jobs/gcc6_sdl2_tests.sh --without-dyecmd --without-manaplusgame image: vicamo/debian:sid-i386 <<: *job-push variables: PACKAGES: gcc-6 g++-6 make autoconf automake autopoint gettext libxml2-dev libcurl4-gnutls-dev libpng-dev libsdl2-dev libsdl2-gfx-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-net-dev libsdl2-ttf-dev git valgrind tags: - docker gcc-6_tests_valgrind: stage: build script: - ./tools/ci/jobs/gcc6_tests.sh --without-dyecmd --without-manaplusgame || true - echo test valgrind - valgrind -q --read-var-info=yes --track-origins=yes --malloc-fill=11 --free-fill=55 --show-reachable=yes --leak-check=full --leak-resolution=high --partial-loads-ok=yes --error-limit=no ./src/manaplustests 2>logs/valg.log - grep "invalid" logs/valg.log && exit 1 || true <<: *job-push variables: PACKAGES: gcc-6 g++-6 make autoconf automake autopoint gettext libxml2-dev libcurl4-gnutls-dev libpng-dev libsdl-gfx1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-net1.2-dev libsdl-ttf2.0-dev git valgrind tags: - docker gcc-6_tests_valgrind_i386: stage: build script: - ./tools/ci/jobs/gcc6_tests.sh --without-dyecmd --without-manaplusgame || true - echo test valgrind - valgrind -q --read-var-info=yes --track-origins=yes --malloc-fill=11 --free-fill=55 --show-reachable=yes --leak-check=full --leak-resolution=high --partial-loads-ok=yes --error-limit=no ./src/manaplustests 2>logs/valg.log - grep "invalid" logs/valg.log && exit 1 || true image: vicamo/debian:sid-i386 <<: *job-push variables: PACKAGES: gcc-6 g++-6 make autoconf automake autopoint gettext libxml2-dev libcurl4-gnutls-dev libpng-dev libsdl-gfx1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-net1.2-dev libsdl-ttf2.0-dev git valgrind tags: - docker gcc-6_tarball_tests: stage: build script: - ./tools/ci/jobs/gcc6_tarball_tests.sh --without-dyecmd --without-manaplusgame <<: *job-push variables: PACKAGES: gcc-6 g++-6 make autoconf automake autopoint gettext libxml2-dev libcurl4-gnutls-dev libpng-dev libsdl-gfx1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-net1.2-dev libsdl-ttf2.0-dev git valgrind