1global-incdirs-y += include 2 3srcs-y += snprintk.c 4srcs-y += strlcat.c 5srcs-y += strlcpy.c 6srcs-y += trace.c 7srcs-y += mempool.c 8srcs-y += nex_strdup.c 9srcs-y += consttime_memcmp.c 10srcs-y += memzero_explicit.c 11srcs-y += fault_mitigation.c 12srcs-y += qsort_helpers.c 13srcs-y += array.c 14srcs-y += base64.c 15ifneq (,$(filter y,$(CFG_CORE_SANITIZE_UNDEFINED) \ 16 $(CFG_TA_SANITIZE_UNDEFINED) \ 17 $(CFG_TA_SANITIZE_KADDRESS) \ 18 $(CFG_CORE_SANITIZE_KADDRESS))) 19ifneq (,$(filter $(COMPILER),clang)) 20$(error error: UBSan/KASan not supported with Clang) 21endif 22endif 23 24ifneq (,$(filter $(sm)-$(CFG_CORE_SANITIZE_UNDEFINED),core-y ldelf-y)) 25build-ubsan := y 26endif 27ifeq (,$(filter $(sm),core ldelf)) 28build-ubsan := $(CFG_TA_SANITIZE_UNDEFINED) 29endif 30srcs-$(build-ubsan) += ubsan.c 31cflags-remove-ubsan.c-y += -fsanitize=undefined 32 33ifneq (,$(filter $(sm)-$(CFG_CORE_SANITIZE_KADDRESS),core-y ldelf-y)) 34build-asan := y 35endif 36ifeq (,$(filter $(sm),core ldelf)) 37build-asan := $(CFG_TA_SANITIZE_KADDRESS) 38endif 39 40srcs-$(build-asan) += asan.c asan_test.c 41cflags-remove-asan.c-y += $(finstrument-functions) 42cflags-remove-asan.c-y += -fsanitize=kernel-address -fasan-% --param=asan-% 43 44ifneq (,$(filter ta_%,$(sm))) 45srcs-y += pthread_stubs.c 46endif 47 48subdirs-y += arch/$(ARCH) 49subdirs-y += ftrace 50