summaryrefslogblamecommitdiff
path: root/tools/ci/branches/ci_gcc6/.gitlab-ci.yml
blob: a30eac79113f00edfc3653435da639a01a445292 (plain) (tree)





























                                                               
                   







                        
                   
































                                                                                                           


























                                                                                                 































                                                                                                           

                                  











                                                                                                           














                                                                                                 































                                                                                                           



















                                                                                                           
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-6-i386:
  stage: build
  script:
  - ./tools/ci/jobs/gcc6.sh
  - ./tools/ci/scripts/runtests.sh
  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 gdb valgrind netcat-openbsd procps
  tags:
    - docker

gcc-6:
  stage: build
  script:
  - ./tools/ci/jobs/gcc6.sh
  - ./tools/ci/scripts/runtests.sh
  <<: *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 gdb valgrind netcat-openbsd procps

gcc-6_sdl2:
  stage: build
  script:
  - ./tools/ci/jobs/gcc6.sh --with-sdl2
  - ./tools/ci/scripts/runtests.sh
  <<: *job-push
  variables:
    PACKAGES: gcc-6 g++-6 
              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 gdb valgrind netcat-openbsd procps

gcc-6_sdl2_i386:
  stage: build
  script:
  - ./tools/ci/jobs/gcc6.sh --with-sdl2
  - ./tools/ci/scripts/runtests.sh
  <<: *job-push
  image: vicamo/debian:sid-i386
  variables:
    PACKAGES: gcc-6 g++-6 
              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 gdb valgrind netcat-openbsd procps

gcc-6_default:
  stage: build
  script:
  - ./tools/ci/jobs/any_compiler.sh --enable-werror
  - ./tools/ci/scripts/runtests.sh
  <<: *job-push
  variables:
    LOGFILE: gcc6.log
    CC: gcc-6
    CXX: g++-6
    CXXFLAGS: "-Wall -Wextra"
    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 gdb valgrind netcat-openbsd procps

gcc-6_sanitize:
  stage: build
  script:
  - ./tools/ci/jobs/gcc6_sanitize.sh
  - ./tools/ci/scripts/runtests.sh
  <<: *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 gdb valgrind netcat-openbsd procps
  tags:
    - docker

# configure test look like crashed
.gcc-6_sanitize_i386:
  stage: build
  script:
  - ./tools/ci/jobs/gcc6_sanitize.sh
  - ./tools/ci/scripts/runtests.sh
  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 gdb valgrind netcat-openbsd procps
  tags:
    - docker

gcc-6_sanitize_sdl2:
  stage: build
  script:
  - ./tools/ci/jobs/gcc6_sanitize.sh --with-sdl2
  - ./tools/ci/scripts/runtests.sh
  <<: *job-push
  variables:
    PACKAGES: gcc-6 g++-6 
              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 gdb valgrind netcat-openbsd procps
  tags:
    - docker

gcc-6_lto:
  stage: build
  script:
  - ./tools/ci/jobs/gcc6_lto.sh
  - ./tools/ci/scripts/runtests.sh
  <<: *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 gdb valgrind netcat-openbsd procps

gcc-6_lto_i386:
  stage: build
  script:
  - ./tools/ci/jobs/gcc6_lto.sh
  - ./tools/ci/scripts/runtests.sh
  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 gdb valgrind netcat-openbsd procps
  tags:
    - docker

gcc-6_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: gcc6.log
    CC: gcc-6
    CXX: g++-6
    CXXFLAGS: "-Wall -Wextra"
    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 gdb valgrind netcat-openbsd procps
  tags:
    - docker