xref: /minix3/external/gpl3/gcc/lib/libtsan/Makefile (revision 0a6a1f1d05b60e214de2f05a7310ddd1f0e590e7)
1# $NetBSD: Makefile,v 1.2 2015/01/07 03:49:13 christos Exp $
2
3.include <bsd.own.mk>
4
5.include "../Makefile.inc"
6
7TSAN=${GCCDIST}/libsanitizer
8.PATH: ${TSAN}/tsan ${TSAN}/interception ${TSAN}/sanitizer_common
9
10TSAN_SRCS= \
11	tsan_clock.cc  \
12	tsan_fd.cc  \
13	tsan_flags.cc  \
14	tsan_interceptors.cc  \
15	tsan_interface.cc  \
16	tsan_interface_ann.cc  \
17	tsan_interface_atomic.cc  \
18	tsan_interface_java.cc  \
19	tsan_md5.cc  \
20	tsan_mman.cc  \
21	tsan_mutex.cc  \
22	tsan_mutexset.cc  \
23	tsan_platform_linux.cc  \
24	tsan_platform_mac.cc  \
25	tsan_report.cc  \
26	tsan_rtl.cc  \
27	tsan_rtl_amd64.S  \
28	tsan_rtl_mutex.cc  \
29	tsan_rtl_report.cc  \
30	tsan_rtl_thread.cc  \
31	tsan_stat.cc  \
32	tsan_suppressions.cc  \
33	tsan_symbolize.cc  \
34	tsan_symbolize_addr2line_linux.cc  \
35	tsan_sync.cc
36
37INTERCEPTION_SRCS= \
38	interception_linux.cc \
39	interception_type_test.cc
40
41SANITIZER_SRCS= \
42	sanitizer_allocator.cc \
43	sanitizer_common.cc \
44	sanitizer_flags.cc \
45	sanitizer_libc.cc \
46	sanitizer_netbsd.cc \
47	sanitizer_mac.cc \
48	sanitizer_posix.cc \
49	sanitizer_platform_limits_posix.cc \
50	sanitizer_printf.cc \
51	sanitizer_stackdepot.cc \
52	sanitizer_stacktrace.cc \
53	sanitizer_symbolizer.cc \
54	sanitizer_symbolizer_linux.cc \
55	sanitizer_win.cc
56
57# The linux build does this to avoid preinit sections on shared libraries
58CSHLIBFLAGS+= -DPIC
59
60LIB=	tsan
61SRCS=	${TSAN_SRCS} ${INTERCEPTION_SRCS} ${SANITIZER_SRCS}
62CPPFLAGS+=-I${TSAN}/include -I${TSAN}
63
64LDADD+=	-lstdc++ -lpthread
65DPADD+= ${LIBSTDCXX} ${LIBPTHREAD}
66
67.include <bsd.lib.mk>
68