summaryrefslogtreecommitdiff
path: root/tools/ci/branches/ci_gcc7_tests/.gitlab-ci.yml
diff options
context:
space:
mode:
Diffstat (limited to 'tools/ci/branches/ci_gcc7_tests/.gitlab-ci.yml')
-rw-r--r--tools/ci/branches/ci_gcc7_tests/.gitlab-ci.yml415
1 files changed, 415 insertions, 0 deletions
diff --git a/tools/ci/branches/ci_gcc7_tests/.gitlab-ci.yml b/tools/ci/branches/ci_gcc7_tests/.gitlab-ci.yml
new file mode 100644
index 000000000..646e777df
--- /dev/null
+++ b/tools/ci/branches/ci_gcc7_tests/.gitlab-ci.yml
@@ -0,0 +1,415 @@
+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
+ - manaplus/logs
+ when: always
+ expire_in: 3 week
+ dependencies: []
+
+.job-always: &job-always
+ artifacts:
+ paths:
+ - logs
+ - manaplus/logs
+ when: always
+ expire_in: 3 week
+ dependencies: []
+
+gcc-7_sanitize_doctest_tests:
+ stage: build
+ script:
+ - ./tools/ci/jobs/gcc7_sanitize_tests.sh --enable-unittests=doctest --without-dyecmd --without-manaplusgame
+ - ldd ./src/manaplustests | grep "libasan"
+ <<: *job-push
+ variables:
+ PACKAGES: gcc-7 g++-7
+ 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
+ JOBS: 1
+ tags:
+ - docker
+
+gcc-7_sanitize_doctest_tests_i386:
+ stage: build
+ script:
+ - ./tools/ci/jobs/gcc7_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-7 g++-7
+ 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
+ JOBS: 1
+ tags:
+ - docker
+
+gcc-7_tests_simd:
+ stage: build
+ script:
+ - ./tools/ci/jobs/gcc7_tests_simd.sh --without-dyecmd --without-manaplusgame
+ <<: *job-push
+ variables:
+ PACKAGES: gcc-7 g++-7
+ 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-7_tests_O0:
+ stage: build
+ script:
+ - ./tools/ci/jobs/gcc7_tests_simd.sh --without-dyecmd --without-manaplusgame
+ <<: *job-push
+ variables:
+ POST_CXXFLAGS: "-O0"
+ PACKAGES: gcc-7 g++-7
+ 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-7_tests_O1:
+ stage: build
+ script:
+ - ./tools/ci/jobs/gcc7_tests_simd.sh --without-dyecmd --without-manaplusgame
+ <<: *job-push
+ variables:
+ POST_CXXFLAGS: "-O1"
+ PACKAGES: gcc-7 g++-7
+ 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-7_tests_lto:
+ stage: build
+ script:
+ - ./tools/ci/jobs/gcc7_tests.sh --without-dyecmd --without-manaplusgame
+ <<: *job-push
+ variables:
+ POST_CXXFLAGS: "-ffast-math -O9 -flto -fwhole-program -funswitch-loops"
+ PACKAGES: gcc-7 g++-7
+ 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-7_tests_lto_i386:
+ stage: build
+ script:
+ - ./tools/ci/jobs/gcc7_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-7 g++-7
+ 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-7_tests_i386:
+ stage: build
+ script:
+ - ./tools/ci/jobs/gcc7_tests.sh --without-dyecmd --without-manaplusgame
+ image: vicamo/debian:sid-i386
+ <<: *job-push
+ variables:
+ PACKAGES: gcc-7 g++-7
+ 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-7_tests:
+ stage: build
+ script:
+ - ./tools/ci/jobs/gcc7_tests.sh --without-dyecmd --without-manaplusgame --enable-glibcdebug
+ - ./tools/ci/jobs/gcc7_tests.sh --without-dyecmd --without-manaplusgame --enable-stldebug
+ <<: *job-push
+ variables:
+ PACKAGES: gcc-7 g++-7
+ 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-7_sdl2_tests_i386:
+ stage: build
+ script:
+ - ./tools/ci/jobs/gcc7_tests.sh --with-sdl2 --without-dyecmd --without-manaplusgame
+ image: vicamo/debian:sid-i386
+ <<: *job-push
+ variables:
+ PACKAGES: gcc-7 g++-7
+ 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-7_tests_valgrind:
+ stage: build
+ script:
+ - ./tools/ci/jobs/gcc7_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-7 g++-7
+ 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-7_tests_valgrind_i386:
+ stage: build
+ script:
+ - ./tools/ci/jobs/gcc7_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-7 g++-7
+ 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-7_separate_doctest:
+ stage: build
+ script:
+ - ./tools/ci/jobs/gcc7_silent.sh --enable-unittestsbin=doctest --without-manaplusgame --without-dyecmd
+ - ./tools/ci/scripts/separateunittests.sh
+ <<: *job-push
+ variables:
+ PACKAGES: gcc-7 g++-7
+ 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 python
+
+gcc-7_separate_doctest_sanitize:
+ stage: build
+ script:
+ - ./tools/ci/jobs/gcc7_silent.sh --enable-unittestsbin=doctest --without-manaplusgame --without-dyecmd
+ - ./tools/ci/scripts/separateunittests.sh
+ - ldd ./src/manaplustests | grep "libasan"
+ <<: *job-push
+ variables:
+ LSAN_OPTIONS: "suppressions=./tools/ci/scripts/lsansuppression_tests.txt"
+ POST_CXXFLAGS: "-fsanitize=address -fsanitize=undefined
+ -fsanitize=shift -fsanitize=integer-divide-by-zero -fsanitize=unreachable
+ -fsanitize=vla-bound -fsanitize=null -fsanitize=return
+ -fsanitize=signed-integer-overflow -fsanitize=bounds -fsanitize=alignment
+ -fsanitize=object-size -fsanitize=float-divide-by-zero -fsanitize=float-cast-overflow
+ -fsanitize=nonnull-attribute -fsanitize=returns-nonnull-attribute -fsanitize=bool
+ -fsanitize=enum -fsanitize=vptr -fsanitize=bounds-strict"
+ PACKAGES: gcc-7 g++-7
+ 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 python
+ tags:
+ - docker
+
+gcc-7_separate_doctest_sanitize_sdl2:
+ stage: build
+ script:
+ - ./tools/ci/jobs/gcc7_silent.sh --enable-unittestsbin=doctest --without-manaplusgame --without-dyecmd --with-sdl2
+ - ./tools/ci/scripts/separateunittests.sh
+ - ldd ./src/manaplustests | grep "libasan"
+ <<: *job-push
+ variables:
+ LSAN_OPTIONS: "suppressions=./tools/ci/scripts/lsansuppression_tests.txt"
+ POST_CXXFLAGS: "-fsanitize=address -fsanitize=undefined
+ -fsanitize=shift -fsanitize=integer-divide-by-zero -fsanitize=unreachable
+ -fsanitize=vla-bound -fsanitize=null -fsanitize=return
+ -fsanitize=signed-integer-overflow -fsanitize=bounds -fsanitize=alignment
+ -fsanitize=object-size -fsanitize=float-divide-by-zero -fsanitize=float-cast-overflow
+ -fsanitize=nonnull-attribute -fsanitize=returns-nonnull-attribute -fsanitize=bool
+ -fsanitize=enum -fsanitize=vptr -fsanitize=bounds-strict"
+ PACKAGES: gcc-7 g++-7
+ make autoconf automake autopoint gettext
+ libxml2-dev libcurl4-gnutls-dev libpng-dev
+ libsdl2-gfx-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-net-dev libsdl2-ttf-dev
+ git python
+ tags:
+ - docker
+
+gcc-7_separate_doctest_sanitize_i386:
+ stage: build
+ script:
+ - ./tools/ci/jobs/gcc7_silent.sh --enable-unittestsbin=doctest --without-manaplusgame --without-dyecmd
+ - ./tools/ci/scripts/separateunittests.sh
+ - ldd ./src/manaplustests | grep "libasan"
+ <<: *job-push
+ image: vicamo/debian:sid-i386
+ variables:
+ LSAN_OPTIONS: "suppressions=./tools/ci/scripts/lsansuppression_tests.txt"
+ POST_CXXFLAGS: "-fsanitize=address -fsanitize=undefined
+ -fsanitize=shift -fsanitize=integer-divide-by-zero -fsanitize=unreachable
+ -fsanitize=vla-bound -fsanitize=null -fsanitize=return
+ -fsanitize=signed-integer-overflow -fsanitize=bounds -fsanitize=alignment
+ -fsanitize=object-size -fsanitize=float-divide-by-zero -fsanitize=float-cast-overflow
+ -fsanitize=nonnull-attribute -fsanitize=returns-nonnull-attribute -fsanitize=bool
+ -fsanitize=enum -fsanitize=vptr -fsanitize=bounds-strict"
+ PACKAGES: gcc-7 g++-7
+ 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 python
+ tags:
+ - docker
+
+gcc-7_separate_doctest_sanitize_sdl2_i386:
+ stage: build
+ script:
+ - ./tools/ci/jobs/gcc7_silent.sh --enable-unittestsbin=doctest --without-manaplusgame --without-dyecmd --with-sdl2
+ - ./tools/ci/scripts/separateunittests.sh
+ - ldd ./src/manaplustests | grep "libasan"
+ <<: *job-push
+ image: vicamo/debian:sid-i386
+ variables:
+ LSAN_OPTIONS: "suppressions=./tools/ci/scripts/lsansuppression_tests.txt"
+ POST_CXXFLAGS: "-fsanitize=address -fsanitize=undefined
+ -fsanitize=shift -fsanitize=integer-divide-by-zero -fsanitize=unreachable
+ -fsanitize=vla-bound -fsanitize=null -fsanitize=return
+ -fsanitize=signed-integer-overflow -fsanitize=bounds -fsanitize=alignment
+ -fsanitize=object-size -fsanitize=float-divide-by-zero -fsanitize=float-cast-overflow
+ -fsanitize=nonnull-attribute -fsanitize=returns-nonnull-attribute -fsanitize=bool
+ -fsanitize=enum -fsanitize=vptr -fsanitize=bounds-strict"
+ PACKAGES: gcc-7 g++-7
+ make autoconf automake autopoint gettext
+ libxml2-dev libcurl4-gnutls-dev libpng-dev
+ libsdl2-gfx-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-net-dev libsdl2-ttf-dev
+ git python
+ tags:
+ - docker
+
+gcc-7_all_and_unittestsbin:
+ stage: build
+ script:
+ - ./tools/ci/jobs/gcc7_silent.sh --enable-unittestsbin
+ - ./tools/ci/scripts/runtests.sh
+ <<: *job-push
+ variables:
+ PACKAGES: gcc-7 g++-7
+ 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 gdb valgrind netcat-openbsd procps
+
+gcc-7_systemcatch_tests:
+ stage: build
+ script:
+ - ./tools/ci/jobs/gcc7_tests.sh --enable-unittests=systemcatch --without-dyecmd --without-manaplusgame
+ <<: *job-push
+ variables:
+ PACKAGES: gcc-7 g++-7
+ 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
+ catch
+ tags:
+ - docker
+
+gcc-7_systemdoctest_tests:
+ stage: build
+ script:
+ - ./tools/ci/jobs/gcc7_tests.sh --enable-unittests=systemdoctest --without-dyecmd --without-manaplusgame
+ <<: *job-push
+ variables:
+ PACKAGES: gcc-7 g++-7
+ 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
+ doctest-dev
+ tags:
+ - docker
+
+gcc-7_unsigned_char_tests:
+ stage: build
+ script:
+ - ./tools/ci/jobs/gcc7_tests.sh --without-dyecmd --without-manaplusgame
+ <<: *job-push
+ variables:
+ POST_CXXFLAGS: "-funsigned-char"
+ PACKAGES: gcc-7 g++-7
+ 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-7_sdl2_unsigned_char_tests:
+ stage: build
+ script:
+ - ./tools/ci/jobs/gcc7_tests.sh --with-sdl2 --without-dyecmd --without-manaplusgame
+ <<: *job-push
+ variables:
+ POST_CXXFLAGS: "-funsigned-char"
+ PACKAGES: gcc-7 g++-7
+ 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