summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitlab-ci.yml42
-rwxr-xr-xtools/ci/jobs/gcc49_sanitize.sh54
2 files changed, 96 insertions, 0 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index a9bb9b3f4..a9f4c21b7 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -811,6 +811,48 @@ gcc-6_sanitize_i386:
tags:
- docker
+gcc-4.9_sanitize:
+ stage: build
+ script:
+ - ./tools/ci/jobs/gcc49_sanitize.sh
+ - ./tools/ci/scripts/runtests.sh
+ image: debian:jessie
+ <<: *job-push
+ variables:
+ PACKAGES: gcc-4.9 g++-4.9
+ 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
+ gdb valgrind netcat-openbsd procps
+
+gcc-4.9_sanitize_i386:
+ stage: build
+ script:
+ - ./tools/ci/jobs/gcc49_sanitize.sh
+ - ./tools/ci/scripts/runtests.sh
+ image: vicamo/debian:jessie-i386
+ <<: *job-push
+ variables:
+ PACKAGES: gcc-4.9 g++-4.9
+ 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
+ gdb valgrind netcat-openbsd procps
+
+gcc-4.9_sdl2_sanitize:
+ stage: build
+ script:
+ - ./tools/ci/jobs/gcc49_sanitize.sh --with-sdl2
+ - ./tools/ci/scripts/runtests.sh
+ image: debian:jessie
+ <<: *job-push
+ variables:
+ PACKAGES: gcc-4.9 g++-4.9
+ 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
+ gdb valgrind netcat-openbsd procps
+
gcc-6_tests_simd:
stage: build
script:
diff --git a/tools/ci/jobs/gcc49_sanitize.sh b/tools/ci/jobs/gcc49_sanitize.sh
new file mode 100755
index 000000000..5610399d0
--- /dev/null
+++ b/tools/ci/jobs/gcc49_sanitize.sh
@@ -0,0 +1,54 @@
+#!/bin/bash
+
+export CC=gcc-4.9
+export CXX=g++-4.9
+
+if [ "$NEWCC" != "" ]; then
+ export CC="$NEWCC"
+fi
+if [ "$NEWCXX" != "" ]; then
+ export CXX="$NEWCXX"
+fi
+
+export LOGFILE=gcc49.log
+
+source ./tools/ci/scripts/init.sh
+
+export CXXFLAGS="$CXXFLAGS -ggdb3 -O2 -ffast-math \
+-fsanitize=address \
+-fno-omit-frame-pointer -funswitch-loops \
+-Wvariadic-macros -Wvla -Wredundant-decls \
+-Wpacked-bitfield-compat -Wtrampolines \
+-Wsuggest-attribute=noreturn -Wunused -Wstrict-aliasing=2 \
+-fstrict-aliasing -Wunreachable-code -Wabi \
+-Wvolatile-register-var -Winvalid-pch -Wredundant-decls \
+-Wnormalized=nfkc -Wmissing-format-attribute -Wmissing-noreturn \
+-Wswitch-default -Wsign-promo -Waddress -Wmissing-declarations \
+-Wctor-dtor-privacy -Wstrict-null-sentinel -Wlogical-op \
+-Wcast-align -Wpointer-arith -Wundef \
+-Wmissing-include-dirs -Winit-self -pedantic -Wall \
+-Wextra -fstrict-overflow -Wstrict-overflow=1 -Wunknown-pragmas \
+-Wwrite-strings -Wstack-protector -Wshadow -Wunused-macros -Wsynth \
+-Wbuiltin-macro-redefined -Wctor-dtor-privacy -Wdeprecated \
+-Wendif-labels -Wformat=1 -Wimport -Wnon-virtual-dtor -Wpsabi \
+-Wsign-promo -Wwrite-strings -D_FORTIFY_SOURCE=2 -Wc++11-compat -std=c++0x \
+-Wdelete-non-virtual-dtor -Wmaybe-uninitialized -Wunused-local-typedefs \
+-Wvector-operation-performance -Wfree-nonheap-object -Winvalid-memory-model \
+-Wnarrowing -Wzero-as-null-pointer-constant -funsafe-loop-optimizations \
+-Wabi-tag -Waggressive-loop-optimizations -Wclobbered -Wempty-body \
+-Wignored-qualifiers -Wliteral-suffix -Wmissing-field-initializers \
+-Woverlength-strings -Wpedantic -Wsign-compare -Wsizeof-pointer-memaccess \
+-Wsuggest-attribute=format -Wtype-limits -Wuninitialized \
+-Wunused-but-set-parameter -Wunused-but-set-variable -Wunused-function \
+-Wunused-label -Wunused-parameter -Wunused-value -Wunused-variable -ftrapv \
+-fsched-pressure \
+-Wconditionally-supported -Wdate-time -Woverloaded-virtual \
+-fno-var-tracking $POST_CXXFLAGS"
+
+do_init
+run_configure --enable-werror $*
+run_make
+
+source ./tools/ci/scripts/exit.sh
+
+exit 0