From ba49561f9a596a9b4d95113c3b3db3518568dd51 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Mon, 26 Jun 2017 19:41:05 +0300 Subject: add gcc7 builds into .gitlab-ci.yml --- .gitlab-ci.yml | 451 ++++++++++++++++++++++++++++++---- tools/ci/flags/gcc7.sh | 3 +- tools/ci/jobs/gcc7_sdl2_tests_gcov.sh | 34 +++ tools/ci/jobs/gcc7_silent.sh | 32 +++ tools/ci/jobs/gcc7_tests.sh | 33 +++ tools/ci/jobs/gcc7_tests_gcov.sh | 34 +++ tools/ci/jobs/gcc7_tests_simd.sh | 38 +++ 7 files changed, 570 insertions(+), 55 deletions(-) create mode 100755 tools/ci/jobs/gcc7_sdl2_tests_gcov.sh create mode 100755 tools/ci/jobs/gcc7_silent.sh create mode 100755 tools/ci/jobs/gcc7_tests.sh create mode 100755 tools/ci/jobs/gcc7_tests_gcov.sh create mode 100755 tools/ci/jobs/gcc7_tests_simd.sh diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ff8e62661..dd996ecc7 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -97,6 +97,22 @@ gcc-6-i386: tags: - docker +gcc-7-i386: + stage: prebuild + script: + - ./tools/ci/jobs/gcc7.sh + - ./tools/ci/scripts/runtests.sh + 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 + gdb valgrind netcat-openbsd procps + tags: + - docker + clang-3.9: stage: prebuild script: @@ -123,6 +139,19 @@ gcc-6: 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-7: + stage: prebuild + script: + - ./tools/ci/jobs/gcc7.sh + - ./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 + gdb valgrind netcat-openbsd procps + gcc-6_default: stage: prebuild script: @@ -140,6 +169,23 @@ gcc-6_default: 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-7_default: + stage: prebuild + script: + - ./tools/ci/jobs/any_compiler.sh --enable-werror + - ./tools/ci/scripts/runtests.sh + <<: *job-push + variables: + LOGFILE: gcc6.log + CC: gcc-7 + CXX: g++-7 + CXXFLAGS: "-Wall -Wextra" + 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 + gdb valgrind netcat-openbsd procps + gcc-4.4: stage: prebuild script: @@ -237,37 +283,37 @@ gcc-5_sdl2: libsdl2-gfx-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-net-dev libsdl2-ttf-dev gdb valgrind netcat-openbsd procps -gcc-6_game_only: +gcc-7_game_only: stage: prebuild script: - - ./tools/ci/jobs/gcc6.sh --without-dyecmd + - ./tools/ci/jobs/gcc7.sh --without-dyecmd - ./tools/ci/scripts/runtests.sh <<: *job-push variables: - PACKAGES: gcc-6 g++-6 + 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 gdb valgrind netcat-openbsd procps -gcc-6_dyecmd_only: +gcc-7_dyecmd_only: stage: prebuild script: - - ./tools/ci/jobs/gcc6.sh --without-manaplusgame + - ./tools/ci/jobs/gcc7.sh --without-manaplusgame <<: *job-push variables: - PACKAGES: gcc-6 g++-6 + 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 -gcc-6_unittestsbin: +gcc-7_unittestsbin: stage: prebuild script: - - ./tools/ci/jobs/gcc6_silent.sh --enable-unittestsbin --without-manaplusgame --without-dyecmd + - ./tools/ci/jobs/gcc7_silent.sh --enable-unittestsbin --without-manaplusgame --without-dyecmd <<: *job-push variables: - PACKAGES: gcc-6 g++-6 + 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 @@ -472,6 +518,39 @@ gcc-6_sanitize_doctest_tests_i386: tags: - docker +# out of memory +.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 + valgrind + tags: + - docker + +# out of memory +.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 + valgrind + tags: + - docker + gcc-5_sanitize_no_opengl_tests: stage: build script: @@ -550,6 +629,38 @@ gcc-6_sanitize_i386: tags: - docker +gcc-7_sanitize: + stage: build + script: + - ./tools/ci/jobs/gcc7_sanitize.sh + - ./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 + gdb valgrind netcat-openbsd procps + tags: + - docker + +# out of memory +.gcc-7_sanitize_i386: + stage: build + script: + - ./tools/ci/jobs/gcc7_sanitize.sh + - ./tools/ci/scripts/runtests.sh + 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 + gdb valgrind netcat-openbsd procps + tags: + - docker + .fedora_gcc-snapshot_sanitize_tests: stage: build script: @@ -684,6 +795,20 @@ gcc-6_tests_simd: 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 + valgrind + tags: + - docker + gcc-6_tests_lto: stage: build script: @@ -715,6 +840,37 @@ gcc-6_tests_lto_i386: 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 + 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 + valgrind + tags: + - docker + gcc-5_tests: stage: build script: @@ -744,13 +900,13 @@ gcc-5_tests_i386: tags: - docker -gcc-6_tests_gcov: +gcc-7_tests_gcov: stage: build script: - - ./tools/ci/jobs/gcc6_tests_gcov.sh --without-dyecmd --without-manaplusgame + - ./tools/ci/jobs/gcc7_tests_gcov.sh --without-dyecmd --without-manaplusgame <<: *job-push variables: - PACKAGES: gcc-6 g++-6 + 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 @@ -759,6 +915,35 @@ gcc-6_tests_gcov: 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 + 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 + valgrind + tags: + - docker + gcc-6_tests_i386: stage: build script: @@ -788,13 +973,27 @@ gcc-6_tests_glibcdebug: tags: - docker -gcc-6_pugixml_tests: +gcc-7_tests_glibcdebug: stage: build script: - - ./tools/ci/jobs/gcc6_tests.sh --without-dyecmd --without-manaplusgame --enable-libxml=pugixml + - ./tools/ci/jobs/gcc7_tests.sh --without-dyecmd --without-manaplusgame --enable-glibcdebug <<: *job-push variables: - PACKAGES: gcc-6 g++-6 + 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 + valgrind + tags: + - docker + +gcc-7_pugixml_tests: + stage: build + script: + - ./tools/ci/jobs/gcc7_tests.sh --without-dyecmd --without-manaplusgame --enable-libxml=pugixml + <<: *job-push + variables: + PACKAGES: gcc-7 g++-7 make autoconf automake autopoint gettext libpugixml-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 @@ -802,14 +1001,14 @@ gcc-6_pugixml_tests: tags: - docker -gcc-6_pugixml_tests_i386: +gcc-7_pugixml_tests_i386: stage: build script: - - ./tools/ci/jobs/gcc6_tests.sh --without-dyecmd --without-manaplusgame --enable-libxml=pugixml + - ./tools/ci/jobs/gcc7_tests.sh --without-dyecmd --without-manaplusgame --enable-libxml=pugixml image: vicamo/debian:sid-i386 <<: *job-push variables: - PACKAGES: gcc-6 g++-6 + PACKAGES: gcc-7 g++-7 make autoconf automake autopoint gettext libpugixml-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 @@ -832,10 +1031,40 @@ gcc-6_tests_glibcdebug_i386: tags: - docker -gcc-6_sdl2_tests_gcov: +gcc-7_tests_glibcdebug_i386: + stage: build + script: + - ./tools/ci/jobs/gcc7_tests.sh --without-dyecmd --without-manaplusgame --enable-glibcdebug + 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 + valgrind + tags: + - docker + +gcc-7_sdl2_tests_gcov: + stage: build + script: + - ./tools/ci/jobs/gcc7_sdl2_tests_gcov.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 + libsdl2-dev libsdl2-gfx-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-net-dev libsdl2-ttf-dev + gcovr + valgrind + tags: + - docker + +gcc-6_sdl2_tests: stage: build script: - - ./tools/ci/jobs/gcc6_sdl2_tests_gcov.sh --without-dyecmd --without-manaplusgame + - ./tools/ci/jobs/gcc6_sdl2_tests.sh --without-dyecmd --without-manaplusgame <<: *job-push variables: PACKAGES: gcc-6 g++-6 @@ -862,6 +1091,21 @@ gcc-6_sdl2_tests_i386: 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 + valgrind + tags: + - docker + gcc-5_sdl2_tests_glibcdebug: stage: build script: @@ -992,14 +1236,49 @@ gcc-6_tests_valgrind_i386: tags: - docker -gcc-6_tests_jmalloc: +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 + 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 + valgrind + tags: + - docker + +gcc-7_tests_jmalloc: stage: build script: - ls ${MALLOC} - - LD_PRELOAD=${MALLOC} ./tools/ci/jobs/gcc6_tests.sh --without-dyecmd --without-manaplusgame + - LD_PRELOAD=${MALLOC} ./tools/ci/jobs/gcc7_tests.sh --without-dyecmd --without-manaplusgame <<: *job-push variables: - PACKAGES: gcc-6 g++-6 + 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 @@ -1008,15 +1287,15 @@ gcc-6_tests_jmalloc: tags: - docker -gcc-6_tests_jmalloc_i386: +gcc-7_tests_jmalloc_i386: stage: build script: - ls ${MALLOC} - - LD_PRELOAD=${MALLOC} ./tools/ci/jobs/gcc6_tests.sh --without-dyecmd --without-manaplusgame + - LD_PRELOAD=${MALLOC} ./tools/ci/jobs/gcc7_tests.sh --without-dyecmd --without-manaplusgame <<: *job-push image: vicamo/debian:sid-i386 variables: - PACKAGES: gcc-6 g++-6 + 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 @@ -1025,6 +1304,37 @@ gcc-6_tests_jmalloc_i386: tags: - docker +gcc-7_lto: + stage: build + script: + - ./tools/ci/jobs/gcc7_lto.sh + - ./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 + gdb valgrind netcat-openbsd procps + POST_CXXFLAGS: "-Wno-null-dereference" + +gcc-7_lto_i386: + stage: build + script: + - ./tools/ci/jobs/gcc7_lto.sh + - ./tools/ci/scripts/runtests.sh + 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 + gdb valgrind netcat-openbsd procps + POST_CXXFLAGS: "-Wno-null-dereference" + tags: + - docker + gcc-6_lto: stage: build script: @@ -1573,14 +1883,14 @@ clang-3.8_i386: tags: - docker -gcc-6_all_and_unittestsbin: +gcc-7_all_and_unittestsbin: stage: build script: - - ./tools/ci/jobs/gcc6_silent.sh --enable-unittestsbin + - ./tools/ci/jobs/gcc7_silent.sh --enable-unittestsbin - ./tools/ci/scripts/runtests.sh <<: *job-push variables: - PACKAGES: gcc-6 g++-6 + 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 @@ -1867,54 +2177,67 @@ gcc-6_cilkplus: 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-6_pugixml: +gcc-7_cilkplus: stage: build script: - - ./tools/ci/jobs/gcc6.sh --enable-libxml=pugixml + - ./tools/ci/jobs/gcc7.sh --enable-cilkplus - ./tools/ci/scripts/runtests.sh <<: *job-push variables: - PACKAGES: gcc-6 g++-6 + 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 + gdb valgrind netcat-openbsd procps + +gcc-7_pugixml: + stage: build + script: + - ./tools/ci/jobs/gcc7.sh --enable-libxml=pugixml + - ./tools/ci/scripts/runtests.sh + <<: *job-push + variables: + PACKAGES: gcc-7 g++-7 make autoconf automake autopoint gettext libpugixml-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-6_pugixml_i386: +gcc-7_pugixml_i386: stage: build script: - - ./tools/ci/jobs/gcc6.sh --enable-libxml=pugixml + - ./tools/ci/jobs/gcc7.sh --enable-libxml=pugixml - ./tools/ci/scripts/runtests.sh image: vicamo/debian:sid-i386 <<: *job-push variables: - PACKAGES: gcc-6 g++-6 + PACKAGES: gcc-7 g++-7 make autoconf automake autopoint gettext libpugixml-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-6_pugixml_sdl2: +gcc-7_pugixml_sdl2: stage: build script: - - ./tools/ci/jobs/gcc6.sh --with-sdl2 --enable-libxml=pugixml + - ./tools/ci/jobs/gcc7.sh --with-sdl2 --enable-libxml=pugixml - ./tools/ci/scripts/runtests.sh <<: *job-push variables: - PACKAGES: gcc-6 g++-6 + PACKAGES: gcc-7 g++-7 make autoconf automake autopoint gettext libpugixml-dev libcurl4-gnutls-dev libpng-dev libsdl2-gfx-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-net-dev libsdl2-ttf-dev gdb valgrind netcat-openbsd procps -gcc-6_pugixml_sdl2_i386: +gcc-7_pugixml_sdl2_i386: stage: build script: - - ./tools/ci/jobs/gcc6.sh --with-sdl2 --enable-libxml=pugixml + - ./tools/ci/jobs/gcc7.sh --with-sdl2 --enable-libxml=pugixml - ./tools/ci/scripts/runtests.sh <<: *job-push variables: - PACKAGES: gcc-6 g++-6 + PACKAGES: gcc-7 g++-7 make autoconf automake autopoint gettext libpugixml-dev libcurl4-gnutls-dev libpng-dev libsdl2-gfx-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-net-dev libsdl2-ttf-dev @@ -1923,11 +2246,11 @@ gcc-6_pugixml_sdl2_i386: gcc_portable: stage: build script: - - ./tools/ci/jobs/gcc6.sh --with-opengl --enable-tmwa --enable-portable=yes + - ./tools/ci/jobs/gcc7.sh --with-opengl --enable-tmwa --enable-portable=yes - ./tools/ci/scripts/runtests.sh <<: *job-push variables: - PACKAGES: gcc-6 g++-6 + 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 @@ -1946,14 +2269,14 @@ clang-3.9_sdl2: libsdl2-gfx-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-net-dev libsdl2-ttf-dev gdb valgrind netcat-openbsd procps -gcc-6_no_asserts: +gcc-7_no_asserts: stage: build script: - - ./tools/ci/jobs/gcc6.sh --disable-asserts + - ./tools/ci/jobs/gcc7.sh --disable-asserts - ./tools/ci/scripts/runtests.sh <<: *job-push variables: - PACKAGES: gcc-6 g++-6 + 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 @@ -2007,6 +2330,26 @@ gcc-6_default_i386: tags: - docker +gcc-7_default_i386: + stage: build + script: + - ./tools/ci/jobs/any_compiler.sh --enable-werror + - ./tools/ci/scripts/runtests.sh + <<: *job-push + image: vicamo/debian:sid-i386 + variables: + LOGFILE: gcc7.log + CC: gcc-7 + CXX: g++-7 + CXXFLAGS: "-Wall -Wextra" + 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 + gdb valgrind netcat-openbsd procps + tags: + - docker + gcc-5_default: stage: build script: @@ -2868,28 +3211,28 @@ clang-tidy_sdl2: tags: - docker -gcc-6_openglerrors_i386: +gcc-7_openglerrors_i386: stage: build script: - - ./tools/ci/jobs/gcc6.sh --enable-openglerrors + - ./tools/ci/jobs/gcc7.sh --enable-openglerrors - ./tools/ci/scripts/runtests.sh <<: *job-push image: vicamo/debian:sid-i386 variables: - PACKAGES: gcc-6 g++-6 + 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 gdb valgrind netcat-openbsd procps -gcc-6_openglerrors: +gcc-7_openglerrors: stage: build script: - - ./tools/ci/jobs/gcc6.sh --enable-openglerrors + - ./tools/ci/jobs/gcc7.sh --enable-openglerrors - ./tools/ci/scripts/runtests.sh <<: *job-push variables: - PACKAGES: gcc-6 g++-6 + 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 @@ -5083,8 +5426,8 @@ pages: dependencies: - doxygen - gitstats - - gcc-6_tests_gcov - - gcc-6_sdl2_tests_gcov + - gcc-7_tests_gcov + - gcc-7_sdl2_tests_gcov variables: PACKAGES: git-core python artifacts: diff --git a/tools/ci/flags/gcc7.sh b/tools/ci/flags/gcc7.sh index 8acc95740..cbe3022b8 100755 --- a/tools/ci/flags/gcc7.sh +++ b/tools/ci/flags/gcc7.sh @@ -78,7 +78,8 @@ export CXXFLAGS="${CXXFLAGS} -Wdeprecated" export CXXFLAGS="${CXXFLAGS} -Wdeprecated-declarations" # not for C++ #export CXXFLAGS="${CXXFLAGS} -Wdesignated-init" -export CXXFLAGS="${CXXFLAGS} -Wdisabled-optimization" +# show useless warnings +#export CXXFLAGS="${CXXFLAGS} -Wdisabled-optimization" # not for C++ #export CXXFLAGS="${CXXFLAGS} -Wdiscarded-array-qualifiers" #export CXXFLAGS="${CXXFLAGS} -Wdiscarded-qualifiers" diff --git a/tools/ci/jobs/gcc7_sdl2_tests_gcov.sh b/tools/ci/jobs/gcc7_sdl2_tests_gcov.sh new file mode 100755 index 000000000..c6d1bcba9 --- /dev/null +++ b/tools/ci/jobs/gcc7_sdl2_tests_gcov.sh @@ -0,0 +1,34 @@ +#!/bin/bash + +export CC=gcc-7 +export CXX=g++-7 + +if [ "$NEWCC" != "" ]; then + export CC="$NEWCC" +fi +if [ "$NEWCXX" != "" ]; then + export CXX="$NEWCXX" +fi + +export LOGFILE=gcc7.log + +source ./tools/ci/scripts/init.sh + +export CXXFLAGS="$CXXFLAGS -pedantic -ggdb3 -O2 -pipe -Wstrict-aliasing=2 \ +-Wstrict-overflow=1 -Wformat=1 -D_FORTIFY_SOURCE=2 \ +-std=gnu++1z -Wformat=1 \ +-Wno-attributes" + +source ./tools/ci/flags/gcc7.sh + +export CXXFLAGS="$CXXFLAGS $POST_CXXFLAGS" + +do_init +run_configure --enable-unittests=yes --with-sdl2 --with-gcov $* +export SDL_VIDEODRIVER=dummy +run_make_check +run_gcov gcov-7 gcc-7_SDL2 + +source ./tools/ci/scripts/exit.sh + +exit 0 diff --git a/tools/ci/jobs/gcc7_silent.sh b/tools/ci/jobs/gcc7_silent.sh new file mode 100755 index 000000000..cf4397004 --- /dev/null +++ b/tools/ci/jobs/gcc7_silent.sh @@ -0,0 +1,32 @@ +#!/bin/bash + +export CC=gcc-7 +export CXX=g++-7 + +if [ "$NEWCC" != "" ]; then + export CC="$NEWCC" +fi +if [ "$NEWCXX" != "" ]; then + export CXX="$NEWCXX" +fi + +export LOGFILE=gcc7.log + +source ./tools/ci/scripts/init.sh + +export CXXFLAGS="$CXXFLAGS -pedantic -ggdb3 -O2 -pipe -Wstrict-aliasing=2 \ +-Wstrict-overflow=1 -Wformat=1 -D_FORTIFY_SOURCE=2 \ +-std=gnu++1z -Wformat=1 \ +-Wno-attributes -fno-omit-frame-pointer" + +source ./tools/ci/flags/gcc7.sh + +export CXXFLAGS="$CXXFLAGS $POST_CXXFLAGS" + +do_init +run_configure $* +run_make + +source ./tools/ci/scripts/exit.sh + +exit 0 diff --git a/tools/ci/jobs/gcc7_tests.sh b/tools/ci/jobs/gcc7_tests.sh new file mode 100755 index 000000000..0354f82f7 --- /dev/null +++ b/tools/ci/jobs/gcc7_tests.sh @@ -0,0 +1,33 @@ +#!/bin/bash + +export CC=gcc-7 +export CXX=g++-7 + +if [ "$NEWCC" != "" ]; then + export CC="$NEWCC" +fi +if [ "$NEWCXX" != "" ]; then + export CXX="$NEWCXX" +fi + +export LOGFILE=gcc7.log + +source ./tools/ci/scripts/init.sh + +export CXXFLAGS="$CXXFLAGS -pedantic -ggdb3 -O2 -pipe -Wstrict-aliasing=2 \ +-Wstrict-overflow=1 -Wformat=1 -D_FORTIFY_SOURCE=2 \ +-std=gnu++1z -Wformat=1 \ +-Wno-attributes" + +source ./tools/ci/flags/gcc7.sh + +export CXXFLAGS="$CXXFLAGS $POST_CXXFLAGS" + +do_init +run_configure --enable-unittests=yes $* +export SDL_VIDEODRIVER=dummy +run_make_check + +source ./tools/ci/scripts/exit.sh + +exit 0 diff --git a/tools/ci/jobs/gcc7_tests_gcov.sh b/tools/ci/jobs/gcc7_tests_gcov.sh new file mode 100755 index 000000000..a0619d86b --- /dev/null +++ b/tools/ci/jobs/gcc7_tests_gcov.sh @@ -0,0 +1,34 @@ +#!/bin/bash + +export CC=gcc-7 +export CXX=g++-7 + +if [ "$NEWCC" != "" ]; then + export CC="$NEWCC" +fi +if [ "$NEWCXX" != "" ]; then + export CXX="$NEWCXX" +fi + +export LOGFILE=gcc7.log + +source ./tools/ci/scripts/init.sh + +export CXXFLAGS="$CXXFLAGS -pedantic -ggdb3 -O2 -pipe -Wstrict-aliasing=2 \ +-Wstrict-overflow=1 -Wformat=1 -D_FORTIFY_SOURCE=2 \ +-std=gnu++1z -Wformat=1 \ +-Wno-attributes" + +source ./tools/ci/flags/gcc7.sh + +export CXXFLAGS="$CXXFLAGS $POST_CXXFLAGS" + +do_init +run_configure --enable-unittests=yes --with-gcov $* +export SDL_VIDEODRIVER=dummy +run_make_check +run_gcov gcov-7 gcc-7 + +source ./tools/ci/scripts/exit.sh + +exit 0 diff --git a/tools/ci/jobs/gcc7_tests_simd.sh b/tools/ci/jobs/gcc7_tests_simd.sh new file mode 100755 index 000000000..4809cb27a --- /dev/null +++ b/tools/ci/jobs/gcc7_tests_simd.sh @@ -0,0 +1,38 @@ +#!/bin/bash + +export CC=gcc-7 +export CXX=g++-7 + +if [ "$NEWCC" != "" ]; then + export CC="$NEWCC" +fi +if [ "$NEWCXX" != "" ]; then + export CXX="$NEWCXX" +fi + +export LOGFILE=gcc7.log + +source ./tools/ci/scripts/init.sh + +# remove -flto -fwhole-program because gcc bug with lto + target attribute + +export CXXFLAGS="$CXXFLAGS -pedantic -ggdb3 -O5 -pipe -Wstrict-aliasing=2 \ +-Wstrict-overflow=1 -Wformat=1 -D_FORTIFY_SOURCE=2 \ +-ffast-math -funswitch-loops \ +-funsafe-loop-optimizations \ +-march=native -fsched-pressure +-std=gnu++1z -Wformat=1 \ +-fno-var-tracking -Wno-attributes" + +source ./tools/ci/flags/gcc7.sh + +export CXXFLAGS="$CXXFLAGS $POST_CXXFLAGS" + +do_init +run_configure --enable-unittests=yes $* +export SDL_VIDEODRIVER=dummy +run_make_check + +source ./tools/ci/scripts/exit.sh + +exit 0 -- cgit v1.2.3-70-g09d2