1# $FreeBSD$ 2 3.include <bsd.init.mk> 4 5SHLIB_NAME= libclang_rt.asan-${CRTARCH}.so 6.undef NO_PIC # sorry... 7 8CFLAGS+= -DASAN_DYNAMIC=1 9 10SRCS+= asan/asan_activation.cpp 11SRCS+= asan/asan_allocator.cpp 12SRCS+= asan/asan_debugging.cpp 13SRCS+= asan/asan_descriptions.cpp 14SRCS+= asan/asan_errors.cpp 15SRCS+= asan/asan_fake_stack.cpp 16SRCS+= asan/asan_flags.cpp 17SRCS+= asan/asan_globals.cpp 18SRCS+= asan/asan_interceptors.cpp 19SRCS+= asan/asan_interceptors_memintrinsics.cpp 20SRCS+= asan/asan_linux.cpp 21SRCS+= asan/asan_malloc_linux.cpp 22SRCS+= asan/asan_memory_profile.cpp 23SRCS+= asan/asan_poisoning.cpp 24SRCS+= asan/asan_posix.cpp 25SRCS+= asan/asan_preinit.cpp 26SRCS+= asan/asan_premap_shadow.cpp 27SRCS+= asan/asan_report.cpp 28SRCS+= asan/asan_rtl.cpp 29SRCS+= asan/asan_shadow_setup.cpp 30SRCS+= asan/asan_stack.cpp 31SRCS+= asan/asan_stats.cpp 32SRCS+= asan/asan_suppressions.cpp 33SRCS+= asan/asan_thread.cpp 34SRCS+= interception/interception_linux.cpp 35SRCS+= interception/interception_type_test.cpp 36SRCS+= sanitizer_common/sancov_flags.cpp 37SRCS+= sanitizer_common/sanitizer_allocator.cpp 38SRCS+= sanitizer_common/sanitizer_allocator_checks.cpp 39SRCS+= sanitizer_common/sanitizer_allocator_report.cpp 40SRCS+= sanitizer_common/sanitizer_chained_origin_depot.cpp 41SRCS+= sanitizer_common/sanitizer_common.cpp 42SRCS+= sanitizer_common/sanitizer_common_libcdep.cpp 43SRCS+= sanitizer_common/sanitizer_coverage_libcdep_new.cpp 44SRCS+= sanitizer_common/sanitizer_deadlock_detector1.cpp 45SRCS+= sanitizer_common/sanitizer_deadlock_detector2.cpp 46SRCS+= sanitizer_common/sanitizer_errno.cpp 47SRCS+= sanitizer_common/sanitizer_file.cpp 48SRCS+= sanitizer_common/sanitizer_flag_parser.cpp 49SRCS+= sanitizer_common/sanitizer_flags.cpp 50SRCS+= sanitizer_common/sanitizer_libc.cpp 51SRCS+= sanitizer_common/sanitizer_libignore.cpp 52SRCS+= sanitizer_common/sanitizer_linux.cpp 53SRCS+= sanitizer_common/sanitizer_linux_libcdep.cpp 54SRCS+= sanitizer_common/sanitizer_mutex.cpp 55SRCS+= sanitizer_common/sanitizer_platform_limits_freebsd.cpp 56SRCS+= sanitizer_common/sanitizer_platform_limits_linux.cpp 57SRCS+= sanitizer_common/sanitizer_platform_limits_posix.cpp 58SRCS+= sanitizer_common/sanitizer_posix.cpp 59SRCS+= sanitizer_common/sanitizer_posix_libcdep.cpp 60SRCS+= sanitizer_common/sanitizer_printf.cpp 61SRCS+= sanitizer_common/sanitizer_procmaps_bsd.cpp 62SRCS+= sanitizer_common/sanitizer_procmaps_common.cpp 63SRCS+= sanitizer_common/sanitizer_stack_store.cpp 64SRCS+= sanitizer_common/sanitizer_stackdepot.cpp 65SRCS+= sanitizer_common/sanitizer_stacktrace.cpp 66SRCS+= sanitizer_common/sanitizer_stacktrace_libcdep.cpp 67SRCS+= sanitizer_common/sanitizer_stacktrace_printer.cpp 68SRCS+= sanitizer_common/sanitizer_suppressions.cpp 69SRCS+= sanitizer_common/sanitizer_symbolizer.cpp 70SRCS+= sanitizer_common/sanitizer_symbolizer_libbacktrace.cpp 71SRCS+= sanitizer_common/sanitizer_symbolizer_libcdep.cpp 72SRCS+= sanitizer_common/sanitizer_symbolizer_posix_libcdep.cpp 73SRCS+= sanitizer_common/sanitizer_symbolizer_report.cpp 74SRCS+= sanitizer_common/sanitizer_termination.cpp 75SRCS+= sanitizer_common/sanitizer_thread_registry.cpp 76SRCS+= sanitizer_common/sanitizer_tls_get_addr.cpp 77SRCS+= sanitizer_common/sanitizer_type_traits.cpp 78SRCS+= sanitizer_common/sanitizer_unwind_linux_libcdep.cpp 79SRCS+= ubsan/ubsan_diag.cpp 80SRCS+= ubsan/ubsan_flags.cpp 81SRCS+= ubsan/ubsan_handlers.cpp 82SRCS+= ubsan/ubsan_init.cpp 83SRCS+= ubsan/ubsan_monitor.cpp 84SRCS+= ubsan/ubsan_value.cpp 85 86# Kludge around a bsd.lib.mk shortcoming: when SHLIB_NAME is defined, but LIB 87# and LIB_CXX are undefined (which forces building only a shared library), 88# there is no way to tell it to use ${CXX} for linking. Since the files for 89# this library are all C++ anyway, simply set CC to CXX. 90CC= ${CXX} 91 92.include <bsd.lib.mk> 93