1 2 .include <bsd.own.mk> 3 4 .include "../Makefile.inc" 5 6 ASAN=${GCCDIST}/libsanitizer 7 .PATH: ${ASAN}/asan ${ASAN}/interception ${ASAN}/sanitizer_common 8 9 ASAN_SRCS= \ 10 asan_allocator.cc \ 11 asan_allocator2.cc \ 12 asan_interceptors.cc \ 13 asan_posix.cc \ 14 asan_new_delete.cc \ 15 asan_rtl.cc \ 16 asan_stats.cc \ 17 asan_globals.cc \ 18 asan_thread_registry.cc \ 19 asan_fake_stack.cc \ 20 asan_linux.cc \ 21 asan_report.cc \ 22 asan_malloc_linux.cc \ 23 asan_poisoning.cc \ 24 asan_stack.cc \ 25 asan_thread.cc \ 26 asan_preinit.cc 27 28 INTERCEPTION_SRCS= \ 29 interception_linux.cc \ 30 interception_type_test.cc 31 32 SANITIZER_SRCS= \ 33 sanitizer_allocator.cc \ 34 sanitizer_common.cc \ 35 sanitizer_flags.cc \ 36 sanitizer_libc.cc \ 37 sanitizer_netbsd.cc \ 38 sanitizer_mac.cc \ 39 sanitizer_posix.cc \ 40 sanitizer_platform_limits_posix.cc \ 41 sanitizer_printf.cc \ 42 sanitizer_stackdepot.cc \ 43 sanitizer_stacktrace.cc \ 44 sanitizer_symbolizer.cc \ 45 sanitizer_symbolizer_linux.cc \ 46 sanitizer_win.cc 47 48 # The linux build does this to avoid preinit sections on shared libraries 49 CSHLIBFLAGS+= -DPIC 50 51 LIB= asan 52 SRCS= ${ASAN_SRCS} ${INTERCEPTION_SRCS} ${SANITIZER_SRCS} 53 CPPFLAGS+=-I${ASAN}/include -I${ASAN} 54 55 LDADD+= -lstdc++ -lpthread 56 DPADD+= ${LIBSTDCXX} ${LIBPTHREAD} 57 58 .include <bsd.lib.mk> 59