summaryrefslogtreecommitdiff
path: root/lib/libclang_rt
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2017-12-23 21:41:32 +0000
committerDimitry Andric <dim@FreeBSD.org>2017-12-23 21:41:32 +0000
commitfb142d88715c407bebf777730d5bd6cbf73e2bc7 (patch)
treec79958b5078cce4039ef9ba8ace7526a32930990 /lib/libclang_rt
parent77b0be52d7863d70d95e599ad40102e35e837bd8 (diff)
downloadsrc-test2-fb142d88715c407bebf777730d5bd6cbf73e2bc7.tar.gz
src-test2-fb142d88715c407bebf777730d5bd6cbf73e2bc7.zip
Next step in updating llvm/clang build glue: make libclang_rt build.
Notes
Notes: svn path=/projects/clang600-import/; revision=327119
Diffstat (limited to 'lib/libclang_rt')
-rw-r--r--lib/libclang_rt/Makefile5
-rw-r--r--lib/libclang_rt/Makefile.inc4
-rw-r--r--lib/libclang_rt/asan/Makefile18
-rw-r--r--lib/libclang_rt/asan_cxx/Makefile1
-rw-r--r--lib/libclang_rt/asan_dynamic/Makefile22
-rw-r--r--lib/libclang_rt/include/Makefile2
-rw-r--r--lib/libclang_rt/profile/Makefile4
-rw-r--r--lib/libclang_rt/safestack/Makefile9
-rw-r--r--lib/libclang_rt/stats/Makefile9
-rw-r--r--lib/libclang_rt/tsan/Makefile82
-rw-r--r--lib/libclang_rt/tsan_cxx/Makefile17
-rw-r--r--lib/libclang_rt/ubsan_minimal/Makefile9
-rw-r--r--lib/libclang_rt/ubsan_standalone/Makefile13
-rw-r--r--lib/libclang_rt/ubsan_standalone_cxx/Makefile1
14 files changed, 144 insertions, 52 deletions
diff --git a/lib/libclang_rt/Makefile b/lib/libclang_rt/Makefile
index 0b2978c1497f..8f5c0dc7cc22 100644
--- a/lib/libclang_rt/Makefile
+++ b/lib/libclang_rt/Makefile
@@ -4,11 +4,14 @@
SUBDIR+= include
SUBDIR+= asan
SUBDIR+= asan-preinit
-SUBDIR+= asan_dynamic
SUBDIR+= asan_cxx
+SUBDIR+= asan_dynamic
SUBDIR+= safestack
SUBDIR+= stats
SUBDIR+= stats_client
+SUBDIR+= tsan
+SUBDIR+= tsan_cxx
+SUBDIR+= ubsan_minimal
SUBDIR+= ubsan_standalone
SUBDIR+= ubsan_standalone_cxx
.endif
diff --git a/lib/libclang_rt/Makefile.inc b/lib/libclang_rt/Makefile.inc
index 63cd630881bd..501ad1b0c4b3 100644
--- a/lib/libclang_rt/Makefile.inc
+++ b/lib/libclang_rt/Makefile.inc
@@ -24,6 +24,10 @@ WARNS?= 0
SSP_CFLAGS=
CFLAGS+= -DNDEBUG
+CFLAGS+= -DHAVE_RPC_XDR_H=0
+CFLAGS+= -DHAVE_TIRPC_RPC_XDR_H=0
+CFLAGS+= -DSANITIZER_SUPPORTS_WEAK_HOOKS=0
+CFLAGS+= -DUBSAN_CAN_USE_CXXABI
CFLAGS+= ${PICFLAG}
CFLAGS+= -fno-builtin
CFLAGS+= -fno-exceptions
diff --git a/lib/libclang_rt/asan/Makefile b/lib/libclang_rt/asan/Makefile
index 8c11338735ff..bea52db93e91 100644
--- a/lib/libclang_rt/asan/Makefile
+++ b/lib/libclang_rt/asan/Makefile
@@ -13,41 +13,39 @@ SRCS+= asan/asan_fake_stack.cc
SRCS+= asan/asan_flags.cc
SRCS+= asan/asan_globals.cc
SRCS+= asan/asan_interceptors.cc
+SRCS+= asan/asan_interceptors_memintrinsics.cc
SRCS+= asan/asan_linux.cc
-SRCS+= asan/asan_mac.cc
SRCS+= asan/asan_malloc_linux.cc
SRCS+= asan/asan_memory_profile.cc
SRCS+= asan/asan_poisoning.cc
SRCS+= asan/asan_posix.cc
SRCS+= asan/asan_preinit.cc
+SRCS+= asan/asan_premap_shadow.cc
SRCS+= asan/asan_report.cc
SRCS+= asan/asan_rtl.cc
+SRCS+= asan/asan_shadow_setup.cc
SRCS+= asan/asan_stack.cc
SRCS+= asan/asan_stats.cc
SRCS+= asan/asan_suppressions.cc
SRCS+= asan/asan_thread.cc
-SRCS+= asan/asan_win.cc
SRCS+= interception/interception_linux.cc
-SRCS+= interception/interception_mac.cc
SRCS+= interception/interception_type_test.cc
-SRCS+= interception/interception_win.cc
-SRCS+= lsan/lsan_common.cc
-SRCS+= lsan/lsan_common_linux.cc
SRCS+= sanitizer_common/sancov_flags.cc
SRCS+= sanitizer_common/sanitizer_allocator.cc
+SRCS+= sanitizer_common/sanitizer_allocator_checks.cc
SRCS+= sanitizer_common/sanitizer_common.cc
SRCS+= sanitizer_common/sanitizer_common_libcdep.cc
SRCS+= sanitizer_common/sanitizer_coverage_libcdep_new.cc
SRCS+= sanitizer_common/sanitizer_deadlock_detector1.cc
SRCS+= sanitizer_common/sanitizer_deadlock_detector2.cc
SRCS+= sanitizer_common/sanitizer_errno.cc
+SRCS+= sanitizer_common/sanitizer_file.cc
SRCS+= sanitizer_common/sanitizer_flag_parser.cc
SRCS+= sanitizer_common/sanitizer_flags.cc
SRCS+= sanitizer_common/sanitizer_libc.cc
SRCS+= sanitizer_common/sanitizer_libignore.cc
SRCS+= sanitizer_common/sanitizer_linux.cc
SRCS+= sanitizer_common/sanitizer_linux_libcdep.cc
-SRCS+= sanitizer_common/sanitizer_mac.cc
SRCS+= sanitizer_common/sanitizer_persistent_allocator.cc
SRCS+= sanitizer_common/sanitizer_platform_limits_linux.cc
SRCS+= sanitizer_common/sanitizer_platform_limits_posix.cc
@@ -56,25 +54,19 @@ SRCS+= sanitizer_common/sanitizer_posix_libcdep.cc
SRCS+= sanitizer_common/sanitizer_printf.cc
SRCS+= sanitizer_common/sanitizer_procmaps_common.cc
SRCS+= sanitizer_common/sanitizer_procmaps_freebsd.cc
-SRCS+= sanitizer_common/sanitizer_procmaps_linux.cc
-SRCS+= sanitizer_common/sanitizer_procmaps_mac.cc
SRCS+= sanitizer_common/sanitizer_stackdepot.cc
SRCS+= sanitizer_common/sanitizer_stacktrace.cc
SRCS+= sanitizer_common/sanitizer_stacktrace_libcdep.cc
SRCS+= sanitizer_common/sanitizer_stacktrace_printer.cc
-SRCS+= sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc
SRCS+= sanitizer_common/sanitizer_suppressions.cc
SRCS+= sanitizer_common/sanitizer_symbolizer.cc
SRCS+= sanitizer_common/sanitizer_symbolizer_libbacktrace.cc
SRCS+= sanitizer_common/sanitizer_symbolizer_libcdep.cc
-SRCS+= sanitizer_common/sanitizer_symbolizer_mac.cc
SRCS+= sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc
-SRCS+= sanitizer_common/sanitizer_symbolizer_win.cc
SRCS+= sanitizer_common/sanitizer_termination.cc
SRCS+= sanitizer_common/sanitizer_thread_registry.cc
SRCS+= sanitizer_common/sanitizer_tls_get_addr.cc
SRCS+= sanitizer_common/sanitizer_unwind_linux_libcdep.cc
-SRCS+= sanitizer_common/sanitizer_win.cc
SRCS+= ubsan/ubsan_diag.cc
SRCS+= ubsan/ubsan_flags.cc
SRCS+= ubsan/ubsan_handlers.cc
diff --git a/lib/libclang_rt/asan_cxx/Makefile b/lib/libclang_rt/asan_cxx/Makefile
index 36dab06269ba..b56673adde1f 100644
--- a/lib/libclang_rt/asan_cxx/Makefile
+++ b/lib/libclang_rt/asan_cxx/Makefile
@@ -10,6 +10,5 @@ SRCS+= asan/asan_new_delete.cc
SRCS+= ubsan/ubsan_handlers_cxx.cc
SRCS+= ubsan/ubsan_type_hash.cc
SRCS+= ubsan/ubsan_type_hash_itanium.cc
-SRCS+= ubsan/ubsan_type_hash_win.cc
.include <bsd.lib.mk>
diff --git a/lib/libclang_rt/asan_dynamic/Makefile b/lib/libclang_rt/asan_dynamic/Makefile
index 9ef7dc4c846c..4edb66e9c52c 100644
--- a/lib/libclang_rt/asan_dynamic/Makefile
+++ b/lib/libclang_rt/asan_dynamic/Makefile
@@ -5,6 +5,8 @@
SHLIB_NAME= libclang_rt.asan-${CRTARCH}.so
.undef NO_PIC # sorry...
+CFLAGS+= -DASAN_DYNAMIC=1
+
SRCS+= asan/asan_activation.cc
SRCS+= asan/asan_allocator.cc
SRCS+= asan/asan_debugging.cc
@@ -14,40 +16,39 @@ SRCS+= asan/asan_fake_stack.cc
SRCS+= asan/asan_flags.cc
SRCS+= asan/asan_globals.cc
SRCS+= asan/asan_interceptors.cc
+SRCS+= asan/asan_interceptors_memintrinsics.cc
SRCS+= asan/asan_linux.cc
-SRCS+= asan/asan_mac.cc
SRCS+= asan/asan_malloc_linux.cc
SRCS+= asan/asan_memory_profile.cc
SRCS+= asan/asan_new_delete.cc
SRCS+= asan/asan_poisoning.cc
SRCS+= asan/asan_posix.cc
+SRCS+= asan/asan_premap_shadow.cc
SRCS+= asan/asan_report.cc
SRCS+= asan/asan_rtl.cc
+SRCS+= asan/asan_shadow_setup.cc
SRCS+= asan/asan_stack.cc
SRCS+= asan/asan_stats.cc
SRCS+= asan/asan_suppressions.cc
SRCS+= asan/asan_thread.cc
-SRCS+= asan/asan_win.cc
SRCS+= interception/interception_linux.cc
-SRCS+= interception/interception_mac.cc
SRCS+= interception/interception_type_test.cc
-SRCS+= interception/interception_win.cc
-SRCS+= lsan/lsan_common.cc
-SRCS+= lsan/lsan_common_linux.cc
SRCS+= sanitizer_common/sancov_flags.cc
SRCS+= sanitizer_common/sanitizer_allocator.cc
+SRCS+= sanitizer_common/sanitizer_allocator_checks.cc
SRCS+= sanitizer_common/sanitizer_common.cc
SRCS+= sanitizer_common/sanitizer_common_libcdep.cc
SRCS+= sanitizer_common/sanitizer_coverage_libcdep_new.cc
SRCS+= sanitizer_common/sanitizer_deadlock_detector1.cc
SRCS+= sanitizer_common/sanitizer_deadlock_detector2.cc
+SRCS+= sanitizer_common/sanitizer_errno.cc
+SRCS+= sanitizer_common/sanitizer_file.cc
SRCS+= sanitizer_common/sanitizer_flag_parser.cc
SRCS+= sanitizer_common/sanitizer_flags.cc
SRCS+= sanitizer_common/sanitizer_libc.cc
SRCS+= sanitizer_common/sanitizer_libignore.cc
SRCS+= sanitizer_common/sanitizer_linux.cc
SRCS+= sanitizer_common/sanitizer_linux_libcdep.cc
-SRCS+= sanitizer_common/sanitizer_mac.cc
SRCS+= sanitizer_common/sanitizer_persistent_allocator.cc
SRCS+= sanitizer_common/sanitizer_platform_limits_linux.cc
SRCS+= sanitizer_common/sanitizer_platform_limits_posix.cc
@@ -56,25 +57,19 @@ SRCS+= sanitizer_common/sanitizer_posix_libcdep.cc
SRCS+= sanitizer_common/sanitizer_printf.cc
SRCS+= sanitizer_common/sanitizer_procmaps_common.cc
SRCS+= sanitizer_common/sanitizer_procmaps_freebsd.cc
-SRCS+= sanitizer_common/sanitizer_procmaps_linux.cc
-SRCS+= sanitizer_common/sanitizer_procmaps_mac.cc
SRCS+= sanitizer_common/sanitizer_stackdepot.cc
SRCS+= sanitizer_common/sanitizer_stacktrace.cc
SRCS+= sanitizer_common/sanitizer_stacktrace_libcdep.cc
SRCS+= sanitizer_common/sanitizer_stacktrace_printer.cc
-SRCS+= sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc
SRCS+= sanitizer_common/sanitizer_suppressions.cc
SRCS+= sanitizer_common/sanitizer_symbolizer.cc
SRCS+= sanitizer_common/sanitizer_symbolizer_libbacktrace.cc
SRCS+= sanitizer_common/sanitizer_symbolizer_libcdep.cc
-SRCS+= sanitizer_common/sanitizer_symbolizer_mac.cc
SRCS+= sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc
-SRCS+= sanitizer_common/sanitizer_symbolizer_win.cc
SRCS+= sanitizer_common/sanitizer_termination.cc
SRCS+= sanitizer_common/sanitizer_thread_registry.cc
SRCS+= sanitizer_common/sanitizer_tls_get_addr.cc
SRCS+= sanitizer_common/sanitizer_unwind_linux_libcdep.cc
-SRCS+= sanitizer_common/sanitizer_win.cc
SRCS+= ubsan/ubsan_diag.cc
SRCS+= ubsan/ubsan_flags.cc
SRCS+= ubsan/ubsan_handlers.cc
@@ -82,7 +77,6 @@ SRCS+= ubsan/ubsan_handlers_cxx.cc
SRCS+= ubsan/ubsan_init.cc
SRCS+= ubsan/ubsan_type_hash.cc
SRCS+= ubsan/ubsan_type_hash_itanium.cc
-SRCS+= ubsan/ubsan_type_hash_win.cc
SRCS+= ubsan/ubsan_value.cc
# Kludge around a bsd.lib.mk shortcoming: when SHLIB_NAME is defined, but LIB
diff --git a/lib/libclang_rt/include/Makefile b/lib/libclang_rt/include/Makefile
index 7e855ea1979b..3745e8d91984 100644
--- a/lib/libclang_rt/include/Makefile
+++ b/lib/libclang_rt/include/Makefile
@@ -12,9 +12,11 @@ INCS+= common_interface_defs.h
INCS+= coverage_interface.h
INCS+= dfsan_interface.h
INCS+= esan_interface.h
+INCS+= hwasan_interface.h
INCS+= linux_syscall_hooks.h
INCS+= lsan_interface.h
INCS+= msan_interface.h
+INCS+= scudo_interface.h
INCS+= tsan_interface.h
INCS+= tsan_interface_atomic.h
diff --git a/lib/libclang_rt/profile/Makefile b/lib/libclang_rt/profile/Makefile
index 063f8bb11c36..4a2304503e25 100644
--- a/lib/libclang_rt/profile/Makefile
+++ b/lib/libclang_rt/profile/Makefile
@@ -4,6 +4,10 @@
LIB= clang_rt.profile-${CRTARCH}
+CFLAGS+= -DCOMPILER_RT_HAS_ATOMICS=1
+CFLAGS+= -DCOMPILER_RT_HAS_FCNTL_LCK=1
+CFLAGS+= -DCOMPILER_RT_HAS_UNAME=1
+
# This is needed for --coverage
CXXFLAGS+= -fvisibility=default
diff --git a/lib/libclang_rt/safestack/Makefile b/lib/libclang_rt/safestack/Makefile
index fd305e6b8cb6..9bb10f46dbb8 100644
--- a/lib/libclang_rt/safestack/Makefile
+++ b/lib/libclang_rt/safestack/Makefile
@@ -5,9 +5,7 @@
LIB= clang_rt.safestack-${CRTARCH}
SRCS+= interception/interception_linux.cc
-SRCS+= interception/interception_mac.cc
SRCS+= interception/interception_type_test.cc
-SRCS+= interception/interception_win.cc
SRCS+= safestack/safestack.cc
SRCS+= sanitizer_common/sanitizer_allocator.cc
SRCS+= sanitizer_common/sanitizer_common.cc
@@ -15,12 +13,12 @@ SRCS+= sanitizer_common/sanitizer_common_nolibc.cc
SRCS+= sanitizer_common/sanitizer_deadlock_detector1.cc
SRCS+= sanitizer_common/sanitizer_deadlock_detector2.cc
SRCS+= sanitizer_common/sanitizer_errno.cc
+SRCS+= sanitizer_common/sanitizer_file.cc
SRCS+= sanitizer_common/sanitizer_flag_parser.cc
SRCS+= sanitizer_common/sanitizer_flags.cc
SRCS+= sanitizer_common/sanitizer_libc.cc
SRCS+= sanitizer_common/sanitizer_libignore.cc
SRCS+= sanitizer_common/sanitizer_linux.cc
-SRCS+= sanitizer_common/sanitizer_mac.cc
SRCS+= sanitizer_common/sanitizer_persistent_allocator.cc
SRCS+= sanitizer_common/sanitizer_platform_limits_linux.cc
SRCS+= sanitizer_common/sanitizer_platform_limits_posix.cc
@@ -28,19 +26,14 @@ SRCS+= sanitizer_common/sanitizer_posix.cc
SRCS+= sanitizer_common/sanitizer_printf.cc
SRCS+= sanitizer_common/sanitizer_procmaps_common.cc
SRCS+= sanitizer_common/sanitizer_procmaps_freebsd.cc
-SRCS+= sanitizer_common/sanitizer_procmaps_linux.cc
-SRCS+= sanitizer_common/sanitizer_procmaps_mac.cc
SRCS+= sanitizer_common/sanitizer_stackdepot.cc
SRCS+= sanitizer_common/sanitizer_stacktrace.cc
SRCS+= sanitizer_common/sanitizer_stacktrace_printer.cc
SRCS+= sanitizer_common/sanitizer_suppressions.cc
SRCS+= sanitizer_common/sanitizer_symbolizer.cc
SRCS+= sanitizer_common/sanitizer_symbolizer_libbacktrace.cc
-SRCS+= sanitizer_common/sanitizer_symbolizer_mac.cc
-SRCS+= sanitizer_common/sanitizer_symbolizer_win.cc
SRCS+= sanitizer_common/sanitizer_termination.cc
SRCS+= sanitizer_common/sanitizer_thread_registry.cc
SRCS+= sanitizer_common/sanitizer_tls_get_addr.cc
-SRCS+= sanitizer_common/sanitizer_win.cc
.include <bsd.lib.mk>
diff --git a/lib/libclang_rt/stats/Makefile b/lib/libclang_rt/stats/Makefile
index dd214cfc4b28..3ffa2f8a6b0d 100644
--- a/lib/libclang_rt/stats/Makefile
+++ b/lib/libclang_rt/stats/Makefile
@@ -6,19 +6,20 @@ LIB= clang_rt.stats-${CRTARCH}
SRCS+= sanitizer_common/sancov_flags.cc
SRCS+= sanitizer_common/sanitizer_allocator.cc
+SRCS+= sanitizer_common/sanitizer_allocator_checks.cc
SRCS+= sanitizer_common/sanitizer_common.cc
SRCS+= sanitizer_common/sanitizer_common_libcdep.cc
SRCS+= sanitizer_common/sanitizer_coverage_libcdep_new.cc
SRCS+= sanitizer_common/sanitizer_deadlock_detector1.cc
SRCS+= sanitizer_common/sanitizer_deadlock_detector2.cc
SRCS+= sanitizer_common/sanitizer_errno.cc
+SRCS+= sanitizer_common/sanitizer_file.cc
SRCS+= sanitizer_common/sanitizer_flag_parser.cc
SRCS+= sanitizer_common/sanitizer_flags.cc
SRCS+= sanitizer_common/sanitizer_libc.cc
SRCS+= sanitizer_common/sanitizer_libignore.cc
SRCS+= sanitizer_common/sanitizer_linux.cc
SRCS+= sanitizer_common/sanitizer_linux_libcdep.cc
-SRCS+= sanitizer_common/sanitizer_mac.cc
SRCS+= sanitizer_common/sanitizer_persistent_allocator.cc
SRCS+= sanitizer_common/sanitizer_platform_limits_linux.cc
SRCS+= sanitizer_common/sanitizer_platform_limits_posix.cc
@@ -27,25 +28,19 @@ SRCS+= sanitizer_common/sanitizer_posix_libcdep.cc
SRCS+= sanitizer_common/sanitizer_printf.cc
SRCS+= sanitizer_common/sanitizer_procmaps_common.cc
SRCS+= sanitizer_common/sanitizer_procmaps_freebsd.cc
-SRCS+= sanitizer_common/sanitizer_procmaps_linux.cc
-SRCS+= sanitizer_common/sanitizer_procmaps_mac.cc
SRCS+= sanitizer_common/sanitizer_stackdepot.cc
SRCS+= sanitizer_common/sanitizer_stacktrace.cc
SRCS+= sanitizer_common/sanitizer_stacktrace_libcdep.cc
SRCS+= sanitizer_common/sanitizer_stacktrace_printer.cc
-SRCS+= sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc
SRCS+= sanitizer_common/sanitizer_suppressions.cc
SRCS+= sanitizer_common/sanitizer_symbolizer.cc
SRCS+= sanitizer_common/sanitizer_symbolizer_libbacktrace.cc
SRCS+= sanitizer_common/sanitizer_symbolizer_libcdep.cc
-SRCS+= sanitizer_common/sanitizer_symbolizer_mac.cc
SRCS+= sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc
-SRCS+= sanitizer_common/sanitizer_symbolizer_win.cc
SRCS+= sanitizer_common/sanitizer_termination.cc
SRCS+= sanitizer_common/sanitizer_thread_registry.cc
SRCS+= sanitizer_common/sanitizer_tls_get_addr.cc
SRCS+= sanitizer_common/sanitizer_unwind_linux_libcdep.cc
-SRCS+= sanitizer_common/sanitizer_win.cc
SRCS+= stats/stats.cc
.include <bsd.lib.mk>
diff --git a/lib/libclang_rt/tsan/Makefile b/lib/libclang_rt/tsan/Makefile
new file mode 100644
index 000000000000..416fa377938b
--- /dev/null
+++ b/lib/libclang_rt/tsan/Makefile
@@ -0,0 +1,82 @@
+# $FreeBSD$
+
+.include <bsd.init.mk>
+
+LIB= clang_rt.tsan-${CRTARCH}
+
+SRCS+= interception/interception_linux.cc
+SRCS+= interception/interception_type_test.cc
+SRCS+= sanitizer_common/sancov_flags.cc
+SRCS+= sanitizer_common/sanitizer_allocator.cc
+SRCS+= sanitizer_common/sanitizer_allocator_checks.cc
+SRCS+= sanitizer_common/sanitizer_common.cc
+SRCS+= sanitizer_common/sanitizer_common_libcdep.cc
+SRCS+= sanitizer_common/sanitizer_coverage_libcdep_new.cc
+SRCS+= sanitizer_common/sanitizer_deadlock_detector1.cc
+SRCS+= sanitizer_common/sanitizer_deadlock_detector2.cc
+SRCS+= sanitizer_common/sanitizer_errno.cc
+SRCS+= sanitizer_common/sanitizer_file.cc
+SRCS+= sanitizer_common/sanitizer_flag_parser.cc
+SRCS+= sanitizer_common/sanitizer_flags.cc
+SRCS+= sanitizer_common/sanitizer_libc.cc
+SRCS+= sanitizer_common/sanitizer_libignore.cc
+SRCS+= sanitizer_common/sanitizer_linux.cc
+SRCS+= sanitizer_common/sanitizer_linux_libcdep.cc
+SRCS+= sanitizer_common/sanitizer_persistent_allocator.cc
+SRCS+= sanitizer_common/sanitizer_platform_limits_linux.cc
+SRCS+= sanitizer_common/sanitizer_platform_limits_posix.cc
+SRCS+= sanitizer_common/sanitizer_posix.cc
+SRCS+= sanitizer_common/sanitizer_posix_libcdep.cc
+SRCS+= sanitizer_common/sanitizer_printf.cc
+SRCS+= sanitizer_common/sanitizer_procmaps_common.cc
+SRCS+= sanitizer_common/sanitizer_procmaps_freebsd.cc
+SRCS+= sanitizer_common/sanitizer_stackdepot.cc
+SRCS+= sanitizer_common/sanitizer_stacktrace.cc
+SRCS+= sanitizer_common/sanitizer_stacktrace_libcdep.cc
+SRCS+= sanitizer_common/sanitizer_stacktrace_printer.cc
+SRCS+= sanitizer_common/sanitizer_suppressions.cc
+SRCS+= sanitizer_common/sanitizer_symbolizer.cc
+SRCS+= sanitizer_common/sanitizer_symbolizer_libbacktrace.cc
+SRCS+= sanitizer_common/sanitizer_symbolizer_libcdep.cc
+SRCS+= sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc
+SRCS+= sanitizer_common/sanitizer_termination.cc
+SRCS+= sanitizer_common/sanitizer_thread_registry.cc
+SRCS+= sanitizer_common/sanitizer_tls_get_addr.cc
+SRCS+= sanitizer_common/sanitizer_unwind_linux_libcdep.cc
+SRCS+= tsan/rtl/tsan_clock.cc
+SRCS+= tsan/rtl/tsan_debugging.cc
+SRCS+= tsan/rtl/tsan_external.cc
+SRCS+= tsan/rtl/tsan_fd.cc
+SRCS+= tsan/rtl/tsan_flags.cc
+SRCS+= tsan/rtl/tsan_ignoreset.cc
+SRCS+= tsan/rtl/tsan_interceptors.cc
+SRCS+= tsan/rtl/tsan_interface.cc
+SRCS+= tsan/rtl/tsan_interface_ann.cc
+SRCS+= tsan/rtl/tsan_interface_atomic.cc
+SRCS+= tsan/rtl/tsan_interface_java.cc
+SRCS+= tsan/rtl/tsan_md5.cc
+SRCS+= tsan/rtl/tsan_mman.cc
+SRCS+= tsan/rtl/tsan_mutex.cc
+SRCS+= tsan/rtl/tsan_mutexset.cc
+SRCS+= tsan/rtl/tsan_platform_linux.cc
+SRCS+= tsan/rtl/tsan_platform_posix.cc
+SRCS+= tsan/rtl/tsan_preinit.cc
+SRCS+= tsan/rtl/tsan_report.cc
+SRCS+= tsan/rtl/tsan_rtl.cc
+SRCS+= tsan/rtl/tsan_rtl_amd64.S
+SRCS+= tsan/rtl/tsan_rtl_mutex.cc
+SRCS+= tsan/rtl/tsan_rtl_proc.cc
+SRCS+= tsan/rtl/tsan_rtl_report.cc
+SRCS+= tsan/rtl/tsan_rtl_thread.cc
+SRCS+= tsan/rtl/tsan_stack_trace.cc
+SRCS+= tsan/rtl/tsan_stat.cc
+SRCS+= tsan/rtl/tsan_suppressions.cc
+SRCS+= tsan/rtl/tsan_symbolize.cc
+SRCS+= tsan/rtl/tsan_sync.cc
+SRCS+= ubsan/ubsan_diag.cc
+SRCS+= ubsan/ubsan_flags.cc
+SRCS+= ubsan/ubsan_handlers.cc
+SRCS+= ubsan/ubsan_init.cc
+SRCS+= ubsan/ubsan_value.cc
+
+.include <bsd.lib.mk>
diff --git a/lib/libclang_rt/tsan_cxx/Makefile b/lib/libclang_rt/tsan_cxx/Makefile
new file mode 100644
index 000000000000..3581ff34fe9d
--- /dev/null
+++ b/lib/libclang_rt/tsan_cxx/Makefile
@@ -0,0 +1,17 @@
+# $FreeBSD$
+
+.include <bsd.init.mk>
+
+LIB= clang_rt.tsan_cxx-${CRTARCH}
+
+SRCS+= tsan/rtl/tsan_new_delete.cc
+SRCS+= ubsan/ubsan_handlers_cxx.cc
+SRCS+= ubsan/ubsan_type_hash.cc
+SRCS+= ubsan/ubsan_type_hash_itanium.cc
+
+.include <bsd.lib.mk>
+
+CXXFLAGS.ubsan_handlers_cxx.cc= -frtti
+CXXFLAGS.ubsan_type_hash.cc= -frtti
+CXXFLAGS.ubsan_type_hash_itanium.cc= -frtti
+CXXFLAGS.ubsan_type_hash_win.cc= -frtti
diff --git a/lib/libclang_rt/ubsan_minimal/Makefile b/lib/libclang_rt/ubsan_minimal/Makefile
new file mode 100644
index 000000000000..5beff13e64ac
--- /dev/null
+++ b/lib/libclang_rt/ubsan_minimal/Makefile
@@ -0,0 +1,9 @@
+# $FreeBSD$
+
+.include <bsd.init.mk>
+
+LIB= clang_rt.ubsan_minimal-${CRTARCH}
+
+SRCS+= ubsan_minimal/ubsan_minimal_handlers.cc
+
+.include <bsd.lib.mk>
diff --git a/lib/libclang_rt/ubsan_standalone/Makefile b/lib/libclang_rt/ubsan_standalone/Makefile
index 75f5268b8efd..888037f32f4a 100644
--- a/lib/libclang_rt/ubsan_standalone/Makefile
+++ b/lib/libclang_rt/ubsan_standalone/Makefile
@@ -4,21 +4,24 @@
LIB= clang_rt.ubsan_standalone-${CRTARCH}
+SRCS+= interception/interception_linux.cc
+SRCS+= interception/interception_type_test.cc
SRCS+= sanitizer_common/sancov_flags.cc
SRCS+= sanitizer_common/sanitizer_allocator.cc
+SRCS+= sanitizer_common/sanitizer_allocator_checks.cc
SRCS+= sanitizer_common/sanitizer_common.cc
SRCS+= sanitizer_common/sanitizer_common_libcdep.cc
SRCS+= sanitizer_common/sanitizer_coverage_libcdep_new.cc
SRCS+= sanitizer_common/sanitizer_deadlock_detector1.cc
SRCS+= sanitizer_common/sanitizer_deadlock_detector2.cc
SRCS+= sanitizer_common/sanitizer_errno.cc
+SRCS+= sanitizer_common/sanitizer_file.cc
SRCS+= sanitizer_common/sanitizer_flag_parser.cc
SRCS+= sanitizer_common/sanitizer_flags.cc
SRCS+= sanitizer_common/sanitizer_libc.cc
SRCS+= sanitizer_common/sanitizer_libignore.cc
SRCS+= sanitizer_common/sanitizer_linux.cc
SRCS+= sanitizer_common/sanitizer_linux_libcdep.cc
-SRCS+= sanitizer_common/sanitizer_mac.cc
SRCS+= sanitizer_common/sanitizer_persistent_allocator.cc
SRCS+= sanitizer_common/sanitizer_platform_limits_linux.cc
SRCS+= sanitizer_common/sanitizer_platform_limits_posix.cc
@@ -27,30 +30,26 @@ SRCS+= sanitizer_common/sanitizer_posix_libcdep.cc
SRCS+= sanitizer_common/sanitizer_printf.cc
SRCS+= sanitizer_common/sanitizer_procmaps_common.cc
SRCS+= sanitizer_common/sanitizer_procmaps_freebsd.cc
-SRCS+= sanitizer_common/sanitizer_procmaps_linux.cc
-SRCS+= sanitizer_common/sanitizer_procmaps_mac.cc
SRCS+= sanitizer_common/sanitizer_stackdepot.cc
SRCS+= sanitizer_common/sanitizer_stacktrace.cc
SRCS+= sanitizer_common/sanitizer_stacktrace_libcdep.cc
SRCS+= sanitizer_common/sanitizer_stacktrace_printer.cc
-SRCS+= sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc
SRCS+= sanitizer_common/sanitizer_suppressions.cc
SRCS+= sanitizer_common/sanitizer_symbolizer.cc
SRCS+= sanitizer_common/sanitizer_symbolizer_libbacktrace.cc
SRCS+= sanitizer_common/sanitizer_symbolizer_libcdep.cc
-SRCS+= sanitizer_common/sanitizer_symbolizer_mac.cc
SRCS+= sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc
-SRCS+= sanitizer_common/sanitizer_symbolizer_win.cc
SRCS+= sanitizer_common/sanitizer_termination.cc
SRCS+= sanitizer_common/sanitizer_thread_registry.cc
SRCS+= sanitizer_common/sanitizer_tls_get_addr.cc
SRCS+= sanitizer_common/sanitizer_unwind_linux_libcdep.cc
-SRCS+= sanitizer_common/sanitizer_win.cc
SRCS+= ubsan/ubsan_diag.cc
+SRCS+= ubsan/ubsan_diag_standalone.cc
SRCS+= ubsan/ubsan_flags.cc
SRCS+= ubsan/ubsan_handlers.cc
SRCS+= ubsan/ubsan_init.cc
SRCS+= ubsan/ubsan_init_standalone.cc
+SRCS+= ubsan/ubsan_signals_standalone.cc
SRCS+= ubsan/ubsan_value.cc
.include <bsd.lib.mk>
diff --git a/lib/libclang_rt/ubsan_standalone_cxx/Makefile b/lib/libclang_rt/ubsan_standalone_cxx/Makefile
index 7d811deacafa..b966168fca67 100644
--- a/lib/libclang_rt/ubsan_standalone_cxx/Makefile
+++ b/lib/libclang_rt/ubsan_standalone_cxx/Makefile
@@ -9,6 +9,5 @@ CXXFLAGS+= -frtti
SRCS+= ubsan/ubsan_handlers_cxx.cc
SRCS+= ubsan/ubsan_type_hash.cc
SRCS+= ubsan/ubsan_type_hash_itanium.cc
-SRCS+= ubsan/ubsan_type_hash_win.cc
.include <bsd.lib.mk>