summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNicolas Williams <nico@cryptonector.com>2016-01-17 12:09:43 -0600
committerNicolas Williams <nico@cryptonector.com>2016-01-17 13:06:27 -0600
commitd228490162b2892a3f461b4ff1f1e1937de703c4 (patch)
treed45f76a1540bb15262ed40b6879372e66116d597
parentb92a12cf6c32b09783fd712361b2a7b1fb1527ca (diff)
Add --enable-ubsan (undefined behavior sanitizer)
-rw-r--r--Makefile.am4
-rw-r--r--configure.ac5
2 files changed, 9 insertions, 0 deletions
diff --git a/Makefile.am b/Makefile.am
index 8a6ace42..2a3aded4 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -56,6 +56,10 @@ endif
include_HEADERS = src/jv.h src/jq.h
+if ENABLE_UBSAN
+AM_CFLAGS += -fsanitize=undefined
+endif
+
### Running tests under Valgrind
if ENABLE_ASAN
diff --git a/configure.ac b/configure.ac
index 03aa71d2..4f640822 100644
--- a/configure.ac
+++ b/configure.ac
@@ -95,6 +95,10 @@ dnl faster.
AC_ARG_ENABLE([asan],
AC_HELP_STRING([--enable-asan], [enable address sanitizer]))
+dnl Undefined Behavior Sanitizer
+AC_ARG_ENABLE([ubsan],
+ AC_HELP_STRING([--enable-ubsan], [enable undefined behavior sanitizer]))
+
dnl Code coverage
AC_ARG_ENABLE([gcov],
AC_HELP_STRING([--enable-gcov], [enable gcov code coverage tool]))
@@ -137,6 +141,7 @@ EOF
AM_CONDITIONAL([ENABLE_VALGRIND], [test "x$enable_valgrind" != xno])
AM_CONDITIONAL([ENABLE_ASAN], [test "x$enable_asan" = xyes])
+AM_CONDITIONAL([ENABLE_UBSAN], [test "x$enable_ubsan" = xyes])
AM_CONDITIONAL([ENABLE_GCOV], [test "x$enable_gcov" = xyes])
AM_CONDITIONAL([ENABLE_DOCS], [test "x$enable_docs" != xno])
AM_CONDITIONAL([ENABLE_ERROR_INJECTION], [test "x$enable_error_injection" = xyes])