← Commit list

43e56639c

Mike Frysinger
Mike Frysinger
2016-02-12
SUCCESS Duration: 196s

Subject

build: add a sanitizer debug option

Binary

No binary (build failed)

Architecture & Compiler Flags

Architecture: x86_64-linux-gnu Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0

—

Build Log

(log yok)

Commit Diff GitHub →

Config.in+10 -0
@@ -688,6 +688,16 @@ config DEBUG_PESSIMIZE
in a much bigger executable that more closely matches the source
code.
+config DEBUG_SANITIZE
+ bool "Enable runtime sanitizers (ASAN/LSAN/USAN/etc...)"
+ default n
+ help
+ Say Y here if you want to enable runtime sanitizers. These help
+ catch bad memory accesses (e.g. buffer overflows), but will make
+ the executable larger and slow down runtime a bit.
+
+ If you aren't developing/testing busybox, say N here.
+
config UNIT_TEST
bool "Build unit tests"
default n
Makefile.flags+5 -0
@@ -75,6 +75,11 @@ else
CFLAGS += $(call cc-option,-Os,$(call cc-option,-O2,))
endif
endif
+ifeq ($(CONFIG_DEBUG_SANITIZE),y)
+CFLAGS += $(call cc-option,-fsanitize=address,)
+CFLAGS += $(call cc-option,-fsanitize=leak,)
+CFLAGS += $(call cc-option,-fsanitize=undefined,)
+endif
# If arch/$(ARCH)/Makefile did not override it (with, say, -fPIC)...
ARCH_FPIC ?= -fpic