summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
diff options
context:
space:
mode:
authorDaiki Ueno <ueno@gnu.org>2021-09-10 17:08:52 +0200
committerDaiki Ueno <ueno@gnu.org>2021-09-10 17:08:52 +0200
commit970aeb621c8487e1b685f4d71852b29139396246 (patch)
tree6b2e3ca9205c5b62195adf4ce3cf47dce08be47b /.gitlab-ci.yml
parent687787b1651be522c9af2a028498c7dbdc6708ae (diff)
downloadgnutls-970aeb621c8487e1b685f4d71852b29139396246.tar.gz
.gitlab-ci.yml: new ASan job with -DAGGRESSIVE_REALLOC
This would exercise the same logic currently covered with fedora-valgrind-aggressive in each MR. Signed-off-by: Daiki Ueno <ueno@gnu.org>
Diffstat (limited to '.gitlab-ci.yml')
-rw-r--r--.gitlab-ci.yml35
1 files changed, 35 insertions, 0 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 946c085c70..c22fc28961 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -235,6 +235,41 @@ UB+ASAN-Werror.Fedora.x86_64.gcc:
except:
- tags
+# Same as UB+ASAN-Werror.Fedora.x86_64.gcc, except -DAGGRESSIVE_REALLOC is set
+UB+ASAN-Werror-aggressive.Fedora.x86_64.gcc:
+ extends:
+ - .test
+ - .fedora
+ needs:
+ - fedora/bootstrap
+ script:
+ - export UBSAN_OPTIONS=print_stacktrace=1
+ - export LSAN_OPTIONS=suppressions=$(pwd)/devel/lsan.supp
+ - export CFLAGS="-std=c99 -O1 -g -Wno-cpp -Werror -fno-omit-frame-pointer -fsanitize=undefined,bool,alignment,null,enum,bounds-strict,address,leak,nonnull-attribute -fno-sanitize-recover=all -fsanitize-address-use-after-scope -DAGGRESSIVE_REALLOC"
+ - export CXXFLAGS="$CFLAGS"
+ - dash ./configure --cache-file $CCACHE_FILE --disable-guile --disable-doc --disable-hardware-acceleration
+ - sed -i 's/-Werror/-Wno-parentheses -Werror/g' src/Makefile
+ - make -j$BUILDJOBS
+ # Use $BUILDJOBS since the fuzzers should use mainly CPU (no blocking I/O)
+ - make -j$BUILDJOBS check -C fuzz
+ - make -j$BUILDJOBS check -C fuzz GNUTLS_CPUID_OVERRIDE=0x1
+ - make -j$BUILDJOBS check -C fuzz GNUTLS_CPUID_OVERRIDE=0x2
+ - make -j$BUILDJOBS check -C fuzz GNUTLS_CPUID_OVERRIDE=0x4
+ - make -j$BUILDJOBS check -C fuzz GNUTLS_CPUID_OVERRIDE=0x8
+ - make -j$BUILDJOBS check -C fuzz GNUTLS_CPUID_OVERRIDE=0x20
+ - make -j$CHECKJOBS check -C tests
+ - dash ./configure --cache-file $CCACHE_FILE --disable-guile --disable-doc --disable-hardware-acceleration --with-default-trust-store-pkcs11="pkcs11:" --with-system-priority-file=/etc/crypto-policies/back-ends/gnutls.config --with-default-priority-string=@SYSTEM
+ - make clean
+ - sed -i 's/-Werror/-Wno-parentheses -Werror/g' src/Makefile
+ - make -j$BUILDJOBS
+ # Use $BUILDJOBS since most of the job is building all tests, then just running 4 tests
+ - make -j$BUILDJOBS check -C tests TESTS="trust-store p11-kit-load.sh priority-init2 set-default-prio" SUBDIRS=.
+ tags:
+ - shared
+ - linux
+ except:
+ - tags
+
##############################################################################
########################### Fedora pipelines #################################
##############################################################################