summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorAllen Webb <allenwebb@google.com>2018-12-05 16:07:49 -0800
committerchrome-bot <chrome-bot@chromium.org>2018-12-11 13:00:58 -0800
commit24d29fb0f5579a18846f2729d40102da9ce0b1b9 (patch)
tree9c8a779a9417ba774d807a794296e070ecd9cc70 /Makefile
parente28470f82d0b7da30db435bd451cb3beeb79aa71 (diff)
downloadchrome-ec-24d29fb0f5579a18846f2729d40102da9ce0b1b9.tar.gz
Makefiles: Add support for MSAN and UBSAN.
This adds support for building fuzz targets with memory and undefined behavior sanitizers. BRANCH=None BUG=chromium:911310 TEST=USE="ubsan fuzzer" ./build_packages \ --board=amd64-generic --skip_chroot_upgrade chromeos-ec && (cd ../platform/ec && unset BOARD && make -j buildall buildfuzztests) Change-Id: Ic7f4c1d7fcc1f6347f091b98567167066787cb9c Signed-off-by: Allen Webb <allenwebb@google.com> Reviewed-on: https://chromium-review.googlesource.com/1364326 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Reviewed-by: Mike Frysinger <vapier@chromium.org>
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile6
1 files changed, 6 insertions, 0 deletions
diff --git a/Makefile b/Makefile
index 232f0cd6de..dabe3e9b20 100644
--- a/Makefile
+++ b/Makefile
@@ -44,6 +44,12 @@ BOOTBLOCK ?=
# the EC image (if no touchpad firmware is provided, just output blank hashes).
TOUCHPAD_FW ?=
+# If TEST_FUZZ is set make sure at least one sanitizer is enabled.
+ifeq ($(TEST_FUZZ)_$(TEST_ASAN)$(TEST_MSAN)$(TEST_UBSAN),y_)
+$(warning No sanitizer was specified defaulting to address sanitization.)
+override TEST_ASAN:=y
+endif
+
include Makefile.toolchain
# Define the traditional first target. The dependencies of this are near the