Makefile revision 331838
1295349Sdim# $FreeBSD: stable/11/lib/libclang_rt/asan_dynamic/Makefile 331838 2018-03-31 11:38:16Z dim $
2295349Sdim
3295349Sdim.include <bsd.init.mk>
4295349Sdim
5295349SdimSHLIB_NAME=	libclang_rt.asan-${CRTARCH}.so
6295349Sdim.undef NO_PIC # sorry...
7295349Sdim
8331838SdimCFLAGS+=	-DASAN_DYNAMIC=1
9331838Sdim
10310618SdimSRCS+=		asan/asan_activation.cc
11310618SdimSRCS+=		asan/asan_allocator.cc
12310618SdimSRCS+=		asan/asan_debugging.cc
13316423SdimSRCS+=		asan/asan_descriptions.cc
14316423SdimSRCS+=		asan/asan_errors.cc
15310618SdimSRCS+=		asan/asan_fake_stack.cc
16310618SdimSRCS+=		asan/asan_flags.cc
17310618SdimSRCS+=		asan/asan_globals.cc
18310618SdimSRCS+=		asan/asan_interceptors.cc
19331838SdimSRCS+=		asan/asan_interceptors_memintrinsics.cc
20310618SdimSRCS+=		asan/asan_linux.cc
21310618SdimSRCS+=		asan/asan_malloc_linux.cc
22310618SdimSRCS+=		asan/asan_memory_profile.cc
23310618SdimSRCS+=		asan/asan_new_delete.cc
24310618SdimSRCS+=		asan/asan_poisoning.cc
25310618SdimSRCS+=		asan/asan_posix.cc
26331838SdimSRCS+=		asan/asan_premap_shadow.cc
27310618SdimSRCS+=		asan/asan_report.cc
28310618SdimSRCS+=		asan/asan_rtl.cc
29331838SdimSRCS+=		asan/asan_shadow_setup.cc
30310618SdimSRCS+=		asan/asan_stack.cc
31310618SdimSRCS+=		asan/asan_stats.cc
32310618SdimSRCS+=		asan/asan_suppressions.cc
33310618SdimSRCS+=		asan/asan_thread.cc
34310618SdimSRCS+=		interception/interception_linux.cc
35310618SdimSRCS+=		interception/interception_type_test.cc
36316423SdimSRCS+=		sanitizer_common/sancov_flags.cc
37310618SdimSRCS+=		sanitizer_common/sanitizer_allocator.cc
38331838SdimSRCS+=		sanitizer_common/sanitizer_allocator_checks.cc
39310618SdimSRCS+=		sanitizer_common/sanitizer_common.cc
40310618SdimSRCS+=		sanitizer_common/sanitizer_common_libcdep.cc
41316423SdimSRCS+=		sanitizer_common/sanitizer_coverage_libcdep_new.cc
42310618SdimSRCS+=		sanitizer_common/sanitizer_deadlock_detector1.cc
43310618SdimSRCS+=		sanitizer_common/sanitizer_deadlock_detector2.cc
44331838SdimSRCS+=		sanitizer_common/sanitizer_errno.cc
45331838SdimSRCS+=		sanitizer_common/sanitizer_file.cc
46310618SdimSRCS+=		sanitizer_common/sanitizer_flag_parser.cc
47310618SdimSRCS+=		sanitizer_common/sanitizer_flags.cc
48310618SdimSRCS+=		sanitizer_common/sanitizer_libc.cc
49310618SdimSRCS+=		sanitizer_common/sanitizer_libignore.cc
50310618SdimSRCS+=		sanitizer_common/sanitizer_linux.cc
51310618SdimSRCS+=		sanitizer_common/sanitizer_linux_libcdep.cc
52310618SdimSRCS+=		sanitizer_common/sanitizer_persistent_allocator.cc
53310618SdimSRCS+=		sanitizer_common/sanitizer_platform_limits_linux.cc
54310618SdimSRCS+=		sanitizer_common/sanitizer_platform_limits_posix.cc
55310618SdimSRCS+=		sanitizer_common/sanitizer_posix.cc
56310618SdimSRCS+=		sanitizer_common/sanitizer_posix_libcdep.cc
57310618SdimSRCS+=		sanitizer_common/sanitizer_printf.cc
58310618SdimSRCS+=		sanitizer_common/sanitizer_procmaps_common.cc
59310618SdimSRCS+=		sanitizer_common/sanitizer_procmaps_freebsd.cc
60310618SdimSRCS+=		sanitizer_common/sanitizer_stackdepot.cc
61310618SdimSRCS+=		sanitizer_common/sanitizer_stacktrace.cc
62310618SdimSRCS+=		sanitizer_common/sanitizer_stacktrace_libcdep.cc
63310618SdimSRCS+=		sanitizer_common/sanitizer_stacktrace_printer.cc
64310618SdimSRCS+=		sanitizer_common/sanitizer_suppressions.cc
65310618SdimSRCS+=		sanitizer_common/sanitizer_symbolizer.cc
66310618SdimSRCS+=		sanitizer_common/sanitizer_symbolizer_libbacktrace.cc
67310618SdimSRCS+=		sanitizer_common/sanitizer_symbolizer_libcdep.cc
68310618SdimSRCS+=		sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc
69310618SdimSRCS+=		sanitizer_common/sanitizer_termination.cc
70310618SdimSRCS+=		sanitizer_common/sanitizer_thread_registry.cc
71310618SdimSRCS+=		sanitizer_common/sanitizer_tls_get_addr.cc
72310618SdimSRCS+=		sanitizer_common/sanitizer_unwind_linux_libcdep.cc
73310618SdimSRCS+=		ubsan/ubsan_diag.cc
74310618SdimSRCS+=		ubsan/ubsan_flags.cc
75310618SdimSRCS+=		ubsan/ubsan_handlers.cc
76310618SdimSRCS+=		ubsan/ubsan_handlers_cxx.cc
77310618SdimSRCS+=		ubsan/ubsan_init.cc
78310618SdimSRCS+=		ubsan/ubsan_type_hash.cc
79310618SdimSRCS+=		ubsan/ubsan_type_hash_itanium.cc
80310618SdimSRCS+=		ubsan/ubsan_value.cc
81295349Sdim
82295349Sdim# Kludge around a bsd.lib.mk shortcoming: when SHLIB_NAME is defined, but LIB
83295349Sdim# and LIB_CXX are undefined (which forces building only a shared library),
84295349Sdim# there is no way to tell it to use ${CXX} for linking.  Since the files for
85295349Sdim# this library are all C++ anyway, simply set CC to CXX.
86295349SdimCC=		${CXX}
87295349Sdim
88295349Sdim.include <bsd.lib.mk>
89295349Sdim
90295349SdimCXXFLAGS.ubsan_handlers_cxx.cc=		-frtti
91295349SdimCXXFLAGS.ubsan_type_hash.cc=		-frtti
92295349SdimCXXFLAGS.ubsan_type_hash_itanium.cc=	-frtti
93295349SdimCXXFLAGS.ubsan_type_hash_win.cc=	-frtti
94