summaryrefslogtreecommitdiffstats
path: root/build-scripts/test-sanitizers
diff options
context:
space:
mode:
Diffstat (limited to 'build-scripts/test-sanitizers')
-rwxr-xr-xbuild-scripts/test-sanitizers17
1 files changed, 17 insertions, 0 deletions
diff --git a/build-scripts/test-sanitizers b/build-scripts/test-sanitizers
new file mode 100755
index 00000000..476f198a
--- /dev/null
+++ b/build-scripts/test-sanitizers
@@ -0,0 +1,17 @@
+#!/bin/bash
+set -e
+sudo apt-get update
+sudo apt-get -y install \
+ autoconf build-essential zlib1g-dev libjpeg-dev libgnutls28-dev libssl-dev
+./configure \
+ CFLAGS="-fsanitize=address -fsanitize=undefined -g" \
+ CXXFLAGS="-fsanitize=address -fsanitize=undefined -g" \
+ LDFLAGS="-fsanitize=address -fsanitize=undefined" \
+ CC=clang CXX="clang++ --std=c++11" \
+ --enable-crypto-native --enable-crypto-openssl --enable-crypto-gnutls \
+ --enable-werror --disable-shared --enable-show-failed-test-output
+make -j$(nproc) -k
+for i in $(./qpdf/build/qpdf --show-crypto); do
+ echo "*** Running tests with crypto provider $i"
+ env QPDF_CRYPTO_PROVIDER=$i make -k check
+done