mirror of
https://gitlab.com/gnuwget/wget2.git
synced 2026-02-01 14:41:08 +00:00
124 lines
3.0 KiB
YAML
124 lines
3.0 KiB
YAML
variables:
|
|
BUILD_IMAGES_PROJECT: gnuwget/build-images
|
|
DEBIAN_BUILD: buildenv-debian-stretch
|
|
FEDORA_BUILD: buildenv-f25
|
|
CENTOS7_BUILD: buildenv-centos7
|
|
GET_SOURCES_ATTEMPTS: "3"
|
|
CONFIGURE_BASE_FLAGS: --enable-assert
|
|
|
|
|
|
# We organize the CI runners as thus:
|
|
# 1. Debian Stretch Build:
|
|
# * ASan and UBSan builds
|
|
# * make syntax-check
|
|
# * make distcheck
|
|
#
|
|
# 2. Fedora 25 Build
|
|
# * LLVM/Clang Build
|
|
# * Valgrind Tests
|
|
#
|
|
# 3. CentOS7 Build
|
|
# * Build with musl / newlib
|
|
# * Minimal Build (All features disabled)
|
|
#
|
|
# This way we split most of the different build options across different
|
|
# platforms as well. Other builds we would like to have:
|
|
#
|
|
# 1. Windows
|
|
# 2. OSX
|
|
# 3. Documentation Generation and Gitlab pages
|
|
# 4. Code coverage stats
|
|
|
|
# In this build we combine
|
|
# * syntax-check
|
|
# * ASan, UBSan, Msan
|
|
# * distcheck
|
|
Debian GNU/Linux build:
|
|
image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$DEBIAN_BUILD
|
|
script:
|
|
- ./bootstrap && touch .manywarnings
|
|
- ./configure $CONFIGURE_BASE_FLAGS --enable-fsanitize-asan --enable-fsanitize-ubsan -C
|
|
- make -j$(nproc) distcheck
|
|
- ./configure -C --enable-fsanitize-msan
|
|
- make clean check
|
|
tags:
|
|
- shared
|
|
artifacts:
|
|
expire_in: 2 weeks
|
|
when: on_failure
|
|
paths:
|
|
- tests/*.log
|
|
|
|
clang/Fedora:
|
|
image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$FEDORA_BUILD
|
|
script:
|
|
- export CC=clang
|
|
- ./bootstrap && touch .manywarnings
|
|
- ./configure $CONFIGURE_BASE_FLAGS --enable-valgrind-tests
|
|
- make -j$(nproc) check
|
|
tags:
|
|
- shared
|
|
except:
|
|
- tags
|
|
artifacts:
|
|
expire_in: 2 weeks
|
|
when: on_failure
|
|
paths:
|
|
- tests/*
|
|
|
|
#Centos7 build:
|
|
# image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$CENTOS7_BUILD
|
|
# script:
|
|
# - sed -i 's/AM_GNU_GETTEXT_VERSION(0.19.3)/AM_GNU_GETTEXT_VERSION(0.18.2)/g' configure.ac
|
|
# - ./bootstrap && ./configure --enable-gcc-warnings --disable-doc && make -j$(nproc) check
|
|
# tags:
|
|
# - shared
|
|
# artifacts:
|
|
# expire_in: 2 weeks
|
|
# when: on_failure
|
|
# paths:
|
|
# - tests/*.log
|
|
# - compat_reports/
|
|
|
|
pages:
|
|
image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$DEBIAN_BUILD
|
|
script:
|
|
- ./bootstrap
|
|
- CFLAGS="-g -O0" ./configure
|
|
- make -j$(nproc) check-coverage
|
|
- mkdir -p public
|
|
- rm -rf public/coverage
|
|
- mv lcov public/coverage
|
|
- rm -rf public/reference
|
|
- mv docs/html public/reference
|
|
tags:
|
|
- shared
|
|
artifacts:
|
|
when: on_success
|
|
paths:
|
|
- public
|
|
only:
|
|
- master
|
|
|
|
#MinGW64:
|
|
# image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$FEDORA_BUILD
|
|
# before_script:
|
|
# - mount -t binfmt_misc binfmt_misc /proc/sys/fs/binfmt_misc &&
|
|
# echo ':DOSWin:M::MZ::/usr/bin/wine64:' > /proc/sys/fs/binfmt_misc/register
|
|
# script:
|
|
# - ./bootstrap
|
|
# - mingw64-configure --disable-valgrind-tests --disable-doc
|
|
# - mingw64-make -j$(nproc)
|
|
# - mingw64-make -j$(nproc) check
|
|
# tags:
|
|
# - shared
|
|
# - docker
|
|
# except:
|
|
# - tags
|
|
# artifacts:
|
|
# expire_in: 2 weeks
|
|
# when: on_failure
|
|
# paths:
|
|
# - ./*.log
|
|
# - tests/*.log
|