Add MemorySanitizer support

This commit is contained in:
Ben Noordhuis 2023-11-01 04:30:34 +01:00 committed by Charlie Gordon
parent 626e0d4e60
commit 325ca194b7

View File

@ -43,6 +43,8 @@ PREFIX?=/usr/local
#CONFIG_PROFILE=y #CONFIG_PROFILE=y
# use address sanitizer # use address sanitizer
#CONFIG_ASAN=y #CONFIG_ASAN=y
# use memory sanitizer
#CONFIG_MSAN=y
# include the code for BigFloat/BigDecimal, math mode and faster large integers # include the code for BigFloat/BigDecimal, math mode and faster large integers
CONFIG_BIGNUM=y CONFIG_BIGNUM=y
@ -142,6 +144,10 @@ ifdef CONFIG_ASAN
CFLAGS+=-fsanitize=address -fno-omit-frame-pointer CFLAGS+=-fsanitize=address -fno-omit-frame-pointer
LDFLAGS+=-fsanitize=address -fno-omit-frame-pointer LDFLAGS+=-fsanitize=address -fno-omit-frame-pointer
endif endif
ifdef CONFIG_MSAN
CFLAGS+=-fsanitize=memory -fno-omit-frame-pointer
LDFLAGS+=-fsanitize=memory -fno-omit-frame-pointer
endif
ifdef CONFIG_WIN32 ifdef CONFIG_WIN32
LDEXPORT= LDEXPORT=
else else
@ -176,12 +182,13 @@ endif
# examples # examples
ifeq ($(CROSS_PREFIX),) ifeq ($(CROSS_PREFIX),)
PROGS+=examples/hello
ifndef CONFIG_ASAN ifndef CONFIG_ASAN
PROGS+=examples/hello_module ifndef CONFIG_MSAN
endif PROGS+=examples/hello examples/hello_module examples/test_fib
ifdef CONFIG_SHARED_LIBS ifdef CONFIG_SHARED_LIBS
PROGS+=examples/test_fib examples/fib.so examples/point.so PROGS+=examples/fib.so examples/point.so
endif
endif
endif endif
endif endif