aboutsummaryrefslogtreecommitdiffstats
path: root/fuzzing/build_fuzzers.sh
diff options
context:
space:
mode:
Diffstat (limited to 'fuzzing/build_fuzzers.sh')
-rwxr-xr-xfuzzing/build_fuzzers.sh33
1 files changed, 33 insertions, 0 deletions
diff --git a/fuzzing/build_fuzzers.sh b/fuzzing/build_fuzzers.sh
new file mode 100755
index 0000000..9788c68
--- /dev/null
+++ b/fuzzing/build_fuzzers.sh
@@ -0,0 +1,33 @@
+#!/bin/sh
+#
+# Builds the fuzzers
+#
+# By Paul Dreik 20200923
+set -exu
+
+CATCHROOT=$(readlink -f $(dirname $0)/..)
+
+
+BUILDDIR=$CATCHROOT/build-fuzzers
+mkdir -p $BUILDDIR
+cd $BUILDDIR
+
+if which /usr/lib/ccache/clang++ >/dev/null 2>&1 ; then
+ CXX=/usr/lib/ccache/clang++
+else
+ CXX=clang++
+fi
+
+cmake $CATCHROOT \
+ -DCMAKE_CXX_COMPILER=$CXX \
+ -DCMAKE_CXX_FLAGS="-fsanitize=fuzzer-no-link,address,undefined -O3 -g" \
+ -DCATCH_DEVELOPMENT_BUILD=On \
+ -DCATCH_BUILD_EXAMPLES=Off \
+ -DCATCH_BUILD_EXTRA_TESTS=Off \
+ -DCATCH_BUILD_TESTING=Off \
+ -DBUILD_TESTING=Off \
+ -DCATCH_ENABLE_WERROR=Off \
+ -DCATCH_BUILD_FUZZERS=On
+
+cmake --build . -j $(nproc)
+