1295349Sdim# $FreeBSD: stable/11/lib/libclang_rt/asan_dynamic/Makefile 360784 2020-05-07 16:34:01Z 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
10360784SdimSRCS+=		asan/asan_activation.cpp
11360784SdimSRCS+=		asan/asan_allocator.cpp
12360784SdimSRCS+=		asan/asan_debugging.cpp
13360784SdimSRCS+=		asan/asan_descriptions.cpp
14360784SdimSRCS+=		asan/asan_errors.cpp
15360784SdimSRCS+=		asan/asan_fake_stack.cpp
16360784SdimSRCS+=		asan/asan_flags.cpp
17360784SdimSRCS+=		asan/asan_globals.cpp
18360784SdimSRCS+=		asan/asan_interceptors.cpp
19360784SdimSRCS+=		asan/asan_interceptors_memintrinsics.cpp
20360784SdimSRCS+=		asan/asan_linux.cpp
21360784SdimSRCS+=		asan/asan_malloc_linux.cpp
22360784SdimSRCS+=		asan/asan_memory_profile.cpp
23360784SdimSRCS+=		asan/asan_new_delete.cpp
24360784SdimSRCS+=		asan/asan_poisoning.cpp
25360784SdimSRCS+=		asan/asan_posix.cpp
26360784SdimSRCS+=		asan/asan_premap_shadow.cpp
27360784SdimSRCS+=		asan/asan_report.cpp
28360784SdimSRCS+=		asan/asan_rtl.cpp
29360784SdimSRCS+=		asan/asan_shadow_setup.cpp
30360784SdimSRCS+=		asan/asan_stack.cpp
31360784SdimSRCS+=		asan/asan_stats.cpp
32360784SdimSRCS+=		asan/asan_suppressions.cpp
33360784SdimSRCS+=		asan/asan_thread.cpp
34360784SdimSRCS+=		interception/interception_linux.cpp
35360784SdimSRCS+=		interception/interception_type_test.cpp
36360784SdimSRCS+=		sanitizer_common/sancov_flags.cpp
37360784SdimSRCS+=		sanitizer_common/sanitizer_allocator.cpp
38360784SdimSRCS+=		sanitizer_common/sanitizer_allocator_checks.cpp
39360784SdimSRCS+=		sanitizer_common/sanitizer_allocator_report.cpp
40360784SdimSRCS+=		sanitizer_common/sanitizer_common.cpp
41360784SdimSRCS+=		sanitizer_common/sanitizer_common_libcdep.cpp
42360784SdimSRCS+=		sanitizer_common/sanitizer_coverage_libcdep_new.cpp
43360784SdimSRCS+=		sanitizer_common/sanitizer_deadlock_detector1.cpp
44360784SdimSRCS+=		sanitizer_common/sanitizer_deadlock_detector2.cpp
45360784SdimSRCS+=		sanitizer_common/sanitizer_errno.cpp
46360784SdimSRCS+=		sanitizer_common/sanitizer_file.cpp
47360784SdimSRCS+=		sanitizer_common/sanitizer_flag_parser.cpp
48360784SdimSRCS+=		sanitizer_common/sanitizer_flags.cpp
49360784SdimSRCS+=		sanitizer_common/sanitizer_libc.cpp
50360784SdimSRCS+=		sanitizer_common/sanitizer_libignore.cpp
51360784SdimSRCS+=		sanitizer_common/sanitizer_linux.cpp
52360784SdimSRCS+=		sanitizer_common/sanitizer_linux_libcdep.cpp
53360784SdimSRCS+=		sanitizer_common/sanitizer_persistent_allocator.cpp
54360784SdimSRCS+=		sanitizer_common/sanitizer_platform_limits_freebsd.cpp
55360784SdimSRCS+=		sanitizer_common/sanitizer_platform_limits_linux.cpp
56360784SdimSRCS+=		sanitizer_common/sanitizer_platform_limits_posix.cpp
57360784SdimSRCS+=		sanitizer_common/sanitizer_posix.cpp
58360784SdimSRCS+=		sanitizer_common/sanitizer_posix_libcdep.cpp
59360784SdimSRCS+=		sanitizer_common/sanitizer_printf.cpp
60360784SdimSRCS+=		sanitizer_common/sanitizer_procmaps_bsd.cpp
61360784SdimSRCS+=		sanitizer_common/sanitizer_procmaps_common.cpp
62360784SdimSRCS+=		sanitizer_common/sanitizer_stackdepot.cpp
63360784SdimSRCS+=		sanitizer_common/sanitizer_stacktrace.cpp
64360784SdimSRCS+=		sanitizer_common/sanitizer_stacktrace_libcdep.cpp
65360784SdimSRCS+=		sanitizer_common/sanitizer_stacktrace_printer.cpp
66360784SdimSRCS+=		sanitizer_common/sanitizer_suppressions.cpp
67360784SdimSRCS+=		sanitizer_common/sanitizer_symbolizer.cpp
68360784SdimSRCS+=		sanitizer_common/sanitizer_symbolizer_libbacktrace.cpp
69360784SdimSRCS+=		sanitizer_common/sanitizer_symbolizer_libcdep.cpp
70360784SdimSRCS+=		sanitizer_common/sanitizer_symbolizer_posix_libcdep.cpp
71360784SdimSRCS+=		sanitizer_common/sanitizer_symbolizer_report.cpp
72360784SdimSRCS+=		sanitizer_common/sanitizer_termination.cpp
73360784SdimSRCS+=		sanitizer_common/sanitizer_thread_registry.cpp
74360784SdimSRCS+=		sanitizer_common/sanitizer_tls_get_addr.cpp
75360784SdimSRCS+=		sanitizer_common/sanitizer_type_traits.cpp
76360784SdimSRCS+=		sanitizer_common/sanitizer_unwind_linux_libcdep.cpp
77360784SdimSRCS+=		ubsan/ubsan_diag.cpp
78360784SdimSRCS+=		ubsan/ubsan_flags.cpp
79360784SdimSRCS+=		ubsan/ubsan_handlers.cpp
80360784SdimSRCS+=		ubsan/ubsan_handlers_cxx.cpp
81360784SdimSRCS+=		ubsan/ubsan_init.cpp
82360784SdimSRCS+=		ubsan/ubsan_monitor.cpp
83360784SdimSRCS+=		ubsan/ubsan_type_hash.cpp
84360784SdimSRCS+=		ubsan/ubsan_type_hash_itanium.cpp
85360784SdimSRCS+=		ubsan/ubsan_value.cpp
86295349Sdim
87295349Sdim# Kludge around a bsd.lib.mk shortcoming: when SHLIB_NAME is defined, but LIB
88295349Sdim# and LIB_CXX are undefined (which forces building only a shared library),
89295349Sdim# there is no way to tell it to use ${CXX} for linking.  Since the files for
90295349Sdim# this library are all C++ anyway, simply set CC to CXX.
91295349SdimCC=		${CXX}
92295349Sdim
93295349Sdim.include <bsd.lib.mk>
94295349Sdim
95360784SdimCXXFLAGS.ubsan_handlers_cxx.cpp=		-frtti
96360784SdimCXXFLAGS.ubsan_type_hash.cpp=		-frtti
97360784SdimCXXFLAGS.ubsan_type_hash_itanium.cpp=	-frtti
98