| image: centos:7 |
| |
| before_script: |
| - yum install -y git make bison autoconf libtool automake gettext-devel glibc-devel gcc valgrind clang libasan-static libubsan |
| |
| # See http://doc.gitlab.com/ce/ci/yaml/ for documentation. |
| Build and Check (x86-64): |
| script: |
| - git submodule update --init && make autoreconf && ./configure --disable-doc && make -j4 && make -j4 check |
| except: |
| - tags |
| tags: |
| - shared |
| Build and Check (x86): |
| script: |
| - yum install -y libgcc.i686 glibc-devel.i686 |
| - git submodule update --init && make autoreconf && |
| PKG_CONFIG_PATH="/usr/lib/pkgconfig/" CFLAGS="-O2 -g -m32" LDFLAGS="-m32" ./configure --build=i686-redhat-linux --target=i686-redhat-linux --disable-doc && make -j4 && make -j4 check |
| except: |
| - tags |
| tags: |
| - shared |
| Build and Check with clang: |
| script: |
| - git submodule update --init && make autoreconf && CC=clang |
| ./configure --disable-doc --disable-valgrind-tests && make -j4 && make check -j4 |
| except: |
| - tags |
| tags: |
| - shared |
| Build and Check with asan: |
| script: |
| - git submodule update --init && make autoreconf && CFLAGS="-fsanitize=address -g |
| -O2" LDFLAGS="-static-libasan" ./configure --disable-doc --disable-valgrind-tests && make -j4 && make check -j4 |
| except: |
| - tags |
| tags: |
| - shared |
| Build and Check with ubsan: |
| image: fedora:24 |
| script: |
| - yum install -y git make autoconf libtool automake gettext-devel glibc-devel gcc valgrind clang libasan-static libubsan |
| - git submodule update --init && make autoreconf && CFLAGS="-fsanitize=undefined -fno-sanitize-recover -g |
| -O2" ./configure --disable-doc --disable-valgrind-tests && make -j4 && make check -j4 |
| tags: |
| - shared |
| except: |
| - tags |
| MinGW32: |
| image: fedora:24 |
| script: |
| - dnf install -y wine.i686 mingw32-gcc util-linux |
| - mount -t binfmt_misc binfmt_misc /proc/sys/fs/binfmt_misc |
| - echo ':DOSWin:M::MZ::/usr/bin/wine:' > /proc/sys/fs/binfmt_misc/register |
| - make autoreconf && rm -f tests/suite/mini-eagain2.c && mkdir -p build && cd build && |
| mingw32-configure --disable-doc --disable-valgrind-tests && |
| mingw32-make -j$(nproc) && mingw32-make -C tests check -j$(nproc) |
| tags: |
| - shared |
| - docker |
| except: |
| - tags |
| artifacts: |
| expire_in: 1 week |
| when: on_failure |
| paths: |
| - build/*.log |
| - build/tests/*.log |
| - build/tests/*/*.log |
| |