Compile minimal library and openssl compat: script: - make autoreconf && ./configure --with-included-libtasn1 --disable-doc --disable-dtls-srtp-support --disable-alpn-support --disable-rsa-export --disable-heartbeat-support --disable-srp-authentication --disable-psk-authentication --disable-anon-authentication --disable-dhe --disable-ecdhe --disable-openpgp-authentication --disable-ocsp --disable-session-tickets --disable-openssl-compatibility --disable-non-suiteb-curves --disable-nls --disable-crywrap --disable-libdane --without-p11-kit --without-tpm --disable-ssl3-support --disable-ssl2-support --without-zlib --disable-doc --disable-tests --enable-openssl-compatibility && make -j4 tags: - nettle3 - linux except: - tags Build and Check with asan: script: - make autoreconf && CFLAGS="-fsanitize=address -g -O2" LDFLAGS="-static-libasan" ./configure --disable-doc --enable-code-coverage --disable-valgrind-tests --disable-non-suiteb-curves --disable-guile && make -j4 && make check -j4 && make local-code-coverage-output tags: - nettle3 - lcov - linux except: - tags artifacts: expire_in: 1 week when: on_failure paths: - tests/*.log - tests/*/*.log Build and Check with C99 and ubsan: script: - make autoreconf && CFLAGS="-fsanitize=undefined -fno-sanitize-recover -g -std=c99 -O2" LDFLAGS="-static-libubsan" ./configure --disable-doc --disable-valgrind-tests --disable-non-suiteb-curves --disable-guile --enable-code-coverage && make -j4 && make check -j4 && make local-code-coverage-output tags: - ubsan - lcov - nettle3 - linux except: - tags artifacts: expire_in: 1 week when: on_failure paths: - tests/*.log - tests/*/*.log Build and Check - separate build dir (x86): script: - make autoreconf && mkdir -p build && cd build && ../configure --disable-non-suiteb-curves --enable-seccomp-tests --disable-doc --disable-valgrind-tests --enable-code-coverage && make -j4 && make check -j4 && make local-code-coverage-output tags: - x86 - lcov - nettle3 - linux except: - tags artifacts: expire_in: 1 week when: on_failure paths: - build/tests/*.log - build/tests/*/*.log Build and Check - without SSL 3.0: script: - make autoreconf && mkdir -p build && cd build && ../configure --disable-ssl3-support --disable-ssl2-support --disable-non-suiteb-curves --enable-seccomp-tests --disable-doc --disable-valgrind-tests --enable-code-coverage && make -j4 && make check -j4 && make local-code-coverage-output tags: - lcov - nettle3 - linux except: - tags artifacts: expire_in: 1 week when: on_failure paths: - build/tests/*.log - build/tests/*/*.log Build with ABI-check (x86-64): script: - make autoreconf && mkdir -p build && cd build && ../configure --disable-doc --disable-cxx --disable-guile --disable-non-suiteb-curves && make -j4 && make abi-check tags: - x86-64 - nettle3 - abi-checker - linux except: - tags Build and Check - clang: script: - make autoreconf && CC=clang ./configure --disable-non-suiteb-curves --enable-seccomp-tests --disable-doc --disable-valgrind-tests && make -j4 && make check -C tests -j4 tags: - nettle3 - linux except: - tags artifacts: expire_in: 1 week when: on_failure paths: - tests/*.log - tests/*/*.log Build and Check in FIPS140-2 mode: script: - make autoreconf && mkdir -p build && cd build && ../configure --disable-non-suiteb-curves --enable-fips140-mode --disable-doc --disable-valgrind-tests && make -j4 && make check -j4 tags: - nettle3 - linux except: - tags artifacts: when: on_failure paths: - build/tests/*.log - build/tests/*/*.log Release build for windows DLLs: script: - make autoreconf && rm -f tests/suite/mini-eagain2.c && mingw32-configure --enable-local-libopts --without-p11-kit --disable-non-suiteb-curves --disable-doc --disable-valgrind-tests && mingw32-make -j4 && mingw32-make -C tests check -j4 tags: - nettle3 - wine - mingw - linux only: - tags artifacts: expire_in: 6 months paths: - src/*.exe - lib/.libs/*.dll - lib/.libs/*.a - lib/*.def - lib/includes/gnutls/*.h - lib/gnutls.pc Build and Check for windows in separate build dir: script: - make autoreconf && rm -f tests/suite/mini-eagain2.c && mkdir -p build && cd build && mingw32-configure --enable-local-libopts --without-p11-kit --disable-non-suiteb-curves --disable-doc --disable-valgrind-tests && mingw32-make -j4 && mingw32-make -C tests check -j4 tags: - nettle3 - wine - mingw - linux except: - tags artifacts: expire_in: 1 week when: on_failure paths: - build/tests/*.log - build/tests/*/*.log Build and Check with valgrind: script: - make autoreconf && rm -f tests/suite/mini-eagain2.c && ./configure --disable-non-suiteb-curves --enable-code-coverage --disable-doc && make -j4 && make check -j4 && make local-code-coverage-output tags: - nettle3 - lcov - linux except: - tags artifacts: expire_in: 1 week when: on_failure paths: - tests/*.log - tests/*/*.log Build and Check on FreeBSD: script: - gmake autoreconf && rm -f tests/suite/mini-eagain2.c && LIBS="-L/usr/local/lib" ./configure --disable-doc --disable-valgrind-tests && gmake -j4 && gmake check -j4 tags: - freebsd except: - tags artifacts: expire_in: 1 week when: on_failure paths: - tests/*.log - tests/*/*.log