1 1.15 kamil # $NetBSD: Makefile,v 1.15 2020/09/14 15:01:58 kamil Exp $ 2 1.12 kamil 3 1.12 kamil UNSUPPORTED_COMPILER.clang= # defined 4 1.12 kamil NOSANITIZER= # defined 5 1.13 kamil NOCOMPAT= # defined 6 1.1 christos 7 1.1 christos .include <bsd.own.mk> 8 1.1 christos 9 1.1 christos .include "../Makefile.inc" 10 1.4 christos .include "../Makefile.sanitizer" 11 1.1 christos 12 1.4 christos .PATH: ${SANITIZER}/tsan 13 1.1 christos 14 1.10 mrg # XXXmknative 15 1.1 christos TSAN_SRCS= \ 16 1.8 mrg tsan_clock.cc \ 17 1.8 mrg tsan_debugging.cc \ 18 1.10 mrg tsan_external.cc \ 19 1.8 mrg tsan_fd.cc \ 20 1.8 mrg tsan_flags.cc \ 21 1.8 mrg tsan_ignoreset.cc \ 22 1.8 mrg tsan_interceptors.cc \ 23 1.8 mrg tsan_interceptors_mac.cc \ 24 1.8 mrg tsan_interface_ann.cc \ 25 1.8 mrg tsan_interface_atomic.cc \ 26 1.8 mrg tsan_interface.cc \ 27 1.8 mrg tsan_interface_java.cc \ 28 1.8 mrg tsan_libdispatch_mac.cc \ 29 1.8 mrg tsan_malloc_mac.cc \ 30 1.8 mrg tsan_md5.cc \ 31 1.8 mrg tsan_mman.cc \ 32 1.8 mrg tsan_mutex.cc \ 33 1.8 mrg tsan_mutexset.cc \ 34 1.8 mrg tsan_new_delete.cc \ 35 1.8 mrg tsan_platform_linux.cc \ 36 1.8 mrg tsan_platform_mac.cc \ 37 1.8 mrg tsan_platform_posix.cc \ 38 1.8 mrg tsan_platform_windows.cc \ 39 1.8 mrg tsan_report.cc \ 40 1.8 mrg tsan_rtl.cc \ 41 1.8 mrg tsan_rtl_mutex.cc \ 42 1.8 mrg tsan_rtl_proc.cc \ 43 1.8 mrg tsan_rtl_report.cc \ 44 1.8 mrg tsan_rtl_thread.cc \ 45 1.8 mrg tsan_stack_trace.cc \ 46 1.8 mrg tsan_stat.cc \ 47 1.8 mrg tsan_suppressions.cc \ 48 1.8 mrg tsan_symbolize.cc \ 49 1.8 mrg tsan_sync.cc 50 1.7 mrg 51 1.14 kamil .if ${MACHINE_ARCH} == "x86_64" 52 1.14 kamil TSAN_SRCS+= tsan_rtl_amd64.S 53 1.14 kamil .elif ${MACHINE_ARCH} == "aarch64" 54 1.14 kamil TSAN_SRCS+= tsan_rtl_aarch64.S 55 1.14 kamil .elif ${MACHINE_ARCH} == "mips64el" 56 1.14 kamil TSAN_SRCS+= tsan_rtl_mips64.S 57 1.14 kamil .elif ${MACHINE_ARCH} == "powerpc64" 58 1.14 kamil TSAN_SRCS+= tsan_rtl_ppc64.S 59 1.5 christos .else 60 1.14 kamil .error Unsupported 61 1.5 christos .endif 62 1.5 christos 63 1.2 christos LIB= tsan 64 1.4 christos SRCS+= ${TSAN_SRCS} 65 1.12 kamil LIBDPLIBS+= rt ${NETBSDSRCDIR}/lib/librt 66 1.12 kamil LIBDPLIBS+= m ${NETBSDSRCDIR}/lib/libm 67 1.15 kamil LIBDPLIBS+= pthread ${NETBSDSRCDIR}/lib/libpthread 68 1.9 mrg CPPFLAGS+=-DCAN_SANITIZE_UB=0 69 1.11 kamil COPTS.tsan_interceptors.cc += -Wno-unused-function 70 1.1 christos 71 1.1 christos .include <bsd.lib.mk> 72