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_CORE_SANITIZE_KADDRESS))) 18ifneq (,$(filter $(COMPILER),clang)) 19$(error error: UBSan/KASan not supported with Clang) 20endif 21endif 22 23ifneq (,$(filter $(sm)-$(CFG_CORE_SANITIZE_UNDEFINED),core-y ldelf-y)) 24build-ubsan := y 25endif 26ifeq (,$(filter $(sm),core ldelf)) 27build-ubsan := $(CFG_TA_SANITIZE_UNDEFINED) 28endif 29srcs-$(build-ubsan) += ubsan.c 30cflags-remove-ubsan.c-y += -fsanitize=undefined 31 32build-asan := n 33ifneq (,$(filter $(sm)-$(CFG_CORE_SANITIZE_KADDRESS),core-y ldelf-y)) 34build-asan := y 35endif 36 37srcs-$(build-asan) += asan.c asan_test.c 38cflags-remove-asan.c-y += $(finstrument-functions) 39cflags-remove-asan.c-y += -fsanitize=kernel-address -fasan-% --param=asan-% 40 41ifneq (,$(filter ta_%,$(sm))) 42srcs-y += pthread_stubs.c 43endif 44 45subdirs-y += arch/$(ARCH) 46subdirs-y += ftrace 47