aboutsummaryrefslogtreecommitdiff
path: root/lib/libclang_rt
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2019-09-01 18:21:06 +0000
committerDimitry Andric <dim@FreeBSD.org>2019-09-01 18:21:06 +0000
commitf57be329fc1b1c9227029ea39166de2b9ab5df20 (patch)
tree1dc3eb16b9dd49422c742f89f1350d9cd906aa93 /lib/libclang_rt
parent2f3724e6581b8f2e4daf650e00c437ed4fbe2d86 (diff)
Notes
Diffstat (limited to 'lib/libclang_rt')
-rw-r--r--lib/libclang_rt/Makefile64
-rw-r--r--lib/libclang_rt/Makefile.inc1
-rw-r--r--lib/libclang_rt/cfi/Makefile39
-rw-r--r--lib/libclang_rt/cfi_diag/Makefile58
-rw-r--r--lib/libclang_rt/dd/Makefile40
-rw-r--r--lib/libclang_rt/fuzzer/Makefile8
-rw-r--r--lib/libclang_rt/fuzzer_no_main/Makefile8
-rw-r--r--lib/libclang_rt/include/Makefile1
-rw-r--r--lib/libclang_rt/msan_cxx/Makefile1
-rw-r--r--lib/libclang_rt/profile/Makefile1
-rw-r--r--lib/libclang_rt/safestack/Makefile27
-rw-r--r--lib/libclang_rt/ubsan_standalone/Makefile1
-rw-r--r--lib/libclang_rt/xray-basic/Makefile10
-rw-r--r--lib/libclang_rt/xray-fdr/Makefile10
-rw-r--r--lib/libclang_rt/xray-profiling/Makefile11
-rw-r--r--lib/libclang_rt/xray/Makefile44
16 files changed, 258 insertions, 66 deletions
diff --git a/lib/libclang_rt/Makefile b/lib/libclang_rt/Makefile
index 6f1825613c4c..5ac85aa92f1c 100644
--- a/lib/libclang_rt/Makefile
+++ b/lib/libclang_rt/Makefile
@@ -1,27 +1,47 @@
# $FreeBSD$
-.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64"
-SUBDIR+= include
-SUBDIR+= asan
-SUBDIR+= asan-preinit
-SUBDIR+= asan_cxx
-SUBDIR+= asan_dynamic
-.if ${MACHINE_CPUARCH} == "amd64"
-SUBDIR+= msan
-SUBDIR+= msan_cxx
-.endif
-SUBDIR+= safestack
-SUBDIR+= stats
-SUBDIR+= stats_client
-.if ${MACHINE_CPUARCH} == "amd64"
-SUBDIR+= tsan
-SUBDIR+= tsan_cxx
-.endif
-SUBDIR+= ubsan_minimal
-SUBDIR+= ubsan_standalone
-SUBDIR+= ubsan_standalone_cxx
-.endif
+SUBDIR_ALL+= include
+SUBDIR_ALL+= profile
+SUBDIR_ALL+= stats
+SUBDIR_ALL+= stats_client
+SUBDIR_ALL+= ubsan_minimal
+SUBDIR_ALL+= ubsan_standalone
+SUBDIR_ALL+= ubsan_standalone_cxx
-SUBDIR+= profile
+.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" ||
+ ${MACHINE_CPUARCH} == "arm" || ${MACHINE_CPUARCH} == "i386"
+SUBDIR_ALL+= asan
+SUBDIR_ALL+= asan-preinit
+SUBDIR_ALL+= asan_cxx
+SUBDIR_ALL+= asan_dynamic
+SUBDIR_ALL+= cfi
+SUBDIR_ALL+= cfi_diag
+.endif # aarch64 || amd64 || arm || i386
+
+.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64"
+SUBDIR_ALL+= dd
+SUBDIR_ALL+= fuzzer
+SUBDIR_ALL+= fuzzer_no_main
+SUBDIR_ALL+= msan
+SUBDIR_ALL+= msan_cxx
+SUBDIR_ALL+= tsan
+SUBDIR_ALL+= tsan_cxx
+.endif # aarch64 || amd64
+
+.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" ||
+ ${MACHINE_CPUARCH} == "i386"
+SUBDIR_ALL+= safestack
+.endif # aarch64 || amd64 || i386
+
+.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" ||
+ ${MACHINE_CPUARCH} == "arm"
+SUBDIR_ALL+= xray
+SUBDIR_ALL+= xray-basic
+SUBDIR_ALL+= xray-fdr
+SUBDIR_ALL+= xray-profiling
+.endif # aarch64 || amd64 || arm
+
+SUBDIR+= ${SUBDIR_ALL:O}
.include <bsd.subdir.mk>
+# DO NOT DELETE
diff --git a/lib/libclang_rt/Makefile.inc b/lib/libclang_rt/Makefile.inc
index 244bdb28297a..bb5c6c9194ac 100644
--- a/lib/libclang_rt/Makefile.inc
+++ b/lib/libclang_rt/Makefile.inc
@@ -40,5 +40,6 @@ CFLAGS+= -fno-stack-protector
CFLAGS+= -funwind-tables
CXXFLAGS+= -fvisibility-inlines-hidden
CXXFLAGS+= -fvisibility=hidden
+CFLAGS+= -I${CRTSRC}/include
CFLAGS+= -I${CRTSRC}/lib
CXXSTD= c++11
diff --git a/lib/libclang_rt/cfi/Makefile b/lib/libclang_rt/cfi/Makefile
new file mode 100644
index 000000000000..dcc89c3b4da5
--- /dev/null
+++ b/lib/libclang_rt/cfi/Makefile
@@ -0,0 +1,39 @@
+# $FreeBSD$
+
+.include <bsd.init.mk>
+
+LIB= clang_rt.cfi-${CRTARCH}
+
+SRCS+= cfi/cfi.cpp
+SRCS+= interception/interception_linux.cc
+SRCS+= interception/interception_type_test.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_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_freebsd.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_bsd.cc
+SRCS+= sanitizer_common/sanitizer_procmaps_common.cc
+SRCS+= sanitizer_common/sanitizer_suppressions.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_type_traits.cc
+
+.include <bsd.lib.mk>
diff --git a/lib/libclang_rt/cfi_diag/Makefile b/lib/libclang_rt/cfi_diag/Makefile
new file mode 100644
index 000000000000..5bd4949fdbe2
--- /dev/null
+++ b/lib/libclang_rt/cfi_diag/Makefile
@@ -0,0 +1,58 @@
+# $FreeBSD$
+
+.include <bsd.init.mk>
+
+LIB= clang_rt.cfi_diag-${CRTARCH}
+
+SRCS+= cfi/cfi.cpp
+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_allocator_report.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_freebsd.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_bsd.cc
+SRCS+= sanitizer_common/sanitizer_procmaps_common.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_symbolizer_report.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_type_traits.cc
+SRCS+= sanitizer_common/sanitizer_unwind_linux_libcdep.cc
+SRCS+= ubsan/ubsan_diag.cc
+SRCS+= ubsan/ubsan_flags.cc
+SRCS+= ubsan/ubsan_handlers.cc
+SRCS+= ubsan/ubsan_init.cc
+SRCS+= ubsan/ubsan_monitor.cc
+SRCS+= ubsan/ubsan_value.cc
+
+.include <bsd.lib.mk>
diff --git a/lib/libclang_rt/dd/Makefile b/lib/libclang_rt/dd/Makefile
new file mode 100644
index 000000000000..c3bfbf8518ea
--- /dev/null
+++ b/lib/libclang_rt/dd/Makefile
@@ -0,0 +1,40 @@
+# $FreeBSD$
+
+.include <bsd.init.mk>
+
+LIB= clang_rt.dd-${CRTARCH}
+
+SRCS+= interception/interception_linux.cc
+SRCS+= interception/interception_type_test.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_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_freebsd.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_bsd.cc
+SRCS+= sanitizer_common/sanitizer_procmaps_common.cc
+SRCS+= sanitizer_common/sanitizer_suppressions.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_type_traits.cc
+SRCS+= tsan/dd/dd_interceptors.cc
+SRCS+= tsan/dd/dd_rtl.cc
+
+.include <bsd.lib.mk>
diff --git a/lib/libclang_rt/fuzzer/Makefile b/lib/libclang_rt/fuzzer/Makefile
index e2f697edbde1..eb8be3665cf0 100644
--- a/lib/libclang_rt/fuzzer/Makefile
+++ b/lib/libclang_rt/fuzzer/Makefile
@@ -8,9 +8,9 @@ SRCS+= fuzzer/FuzzerCrossOver.cpp
SRCS+= fuzzer/FuzzerDataFlowTrace.cpp
SRCS+= fuzzer/FuzzerDriver.cpp
SRCS+= fuzzer/FuzzerExtFunctionsDlsym.cpp
-SRCS+= fuzzer/FuzzerExtFunctionsDlsymWin.cpp
SRCS+= fuzzer/FuzzerExtFunctionsWeak.cpp
SRCS+= fuzzer/FuzzerExtraCounters.cpp
+SRCS+= fuzzer/FuzzerFork.cpp
SRCS+= fuzzer/FuzzerIO.cpp
SRCS+= fuzzer/FuzzerIOPosix.cpp
SRCS+= fuzzer/FuzzerIOWindows.cpp
@@ -19,15 +19,9 @@ SRCS+= fuzzer/FuzzerMain.cpp
SRCS+= fuzzer/FuzzerMerge.cpp
SRCS+= fuzzer/FuzzerMutate.cpp
SRCS+= fuzzer/FuzzerSHA1.cpp
-SRCS+= fuzzer/FuzzerShmemFuchsia.cpp
-SRCS+= fuzzer/FuzzerShmemPosix.cpp
-SRCS+= fuzzer/FuzzerShmemWindows.cpp
SRCS+= fuzzer/FuzzerTracePC.cpp
SRCS+= fuzzer/FuzzerUtil.cpp
-SRCS+= fuzzer/FuzzerUtilDarwin.cpp
-SRCS+= fuzzer/FuzzerUtilFuchsia.cpp
SRCS+= fuzzer/FuzzerUtilLinux.cpp
SRCS+= fuzzer/FuzzerUtilPosix.cpp
-SRCS+= fuzzer/FuzzerUtilWindows.cpp
.include <bsd.lib.mk>
diff --git a/lib/libclang_rt/fuzzer_no_main/Makefile b/lib/libclang_rt/fuzzer_no_main/Makefile
index 61ae8ed945bb..662bc6d7ba42 100644
--- a/lib/libclang_rt/fuzzer_no_main/Makefile
+++ b/lib/libclang_rt/fuzzer_no_main/Makefile
@@ -8,9 +8,9 @@ SRCS+= fuzzer/FuzzerCrossOver.cpp
SRCS+= fuzzer/FuzzerDataFlowTrace.cpp
SRCS+= fuzzer/FuzzerDriver.cpp
SRCS+= fuzzer/FuzzerExtFunctionsDlsym.cpp
-SRCS+= fuzzer/FuzzerExtFunctionsDlsymWin.cpp
SRCS+= fuzzer/FuzzerExtFunctionsWeak.cpp
SRCS+= fuzzer/FuzzerExtraCounters.cpp
+SRCS+= fuzzer/FuzzerFork.cpp
SRCS+= fuzzer/FuzzerIO.cpp
SRCS+= fuzzer/FuzzerIOPosix.cpp
SRCS+= fuzzer/FuzzerIOWindows.cpp
@@ -18,15 +18,9 @@ SRCS+= fuzzer/FuzzerLoop.cpp
SRCS+= fuzzer/FuzzerMerge.cpp
SRCS+= fuzzer/FuzzerMutate.cpp
SRCS+= fuzzer/FuzzerSHA1.cpp
-SRCS+= fuzzer/FuzzerShmemFuchsia.cpp
-SRCS+= fuzzer/FuzzerShmemPosix.cpp
-SRCS+= fuzzer/FuzzerShmemWindows.cpp
SRCS+= fuzzer/FuzzerTracePC.cpp
SRCS+= fuzzer/FuzzerUtil.cpp
-SRCS+= fuzzer/FuzzerUtilDarwin.cpp
-SRCS+= fuzzer/FuzzerUtilFuchsia.cpp
SRCS+= fuzzer/FuzzerUtilLinux.cpp
SRCS+= fuzzer/FuzzerUtilPosix.cpp
-SRCS+= fuzzer/FuzzerUtilWindows.cpp
.include <bsd.lib.mk>
diff --git a/lib/libclang_rt/include/Makefile b/lib/libclang_rt/include/Makefile
index c9ebff4fd13b..41af2e841f38 100644
--- a/lib/libclang_rt/include/Makefile
+++ b/lib/libclang_rt/include/Makefile
@@ -11,7 +11,6 @@ INCS+= asan_interface.h
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
diff --git a/lib/libclang_rt/msan_cxx/Makefile b/lib/libclang_rt/msan_cxx/Makefile
index 44fb5df9b727..b60be079b6e2 100644
--- a/lib/libclang_rt/msan_cxx/Makefile
+++ b/lib/libclang_rt/msan_cxx/Makefile
@@ -1,3 +1,4 @@
+
# $FreeBSD$
.include <bsd.init.mk>
diff --git a/lib/libclang_rt/profile/Makefile b/lib/libclang_rt/profile/Makefile
index 4a2304503e25..62c6e6b14a49 100644
--- a/lib/libclang_rt/profile/Makefile
+++ b/lib/libclang_rt/profile/Makefile
@@ -18,7 +18,6 @@ SRCS+= profile/InstrProfilingFile.c
SRCS+= profile/InstrProfilingMerge.c
SRCS+= profile/InstrProfilingMergeFile.c
SRCS+= profile/InstrProfilingNameVar.c
-SRCS+= profile/InstrProfilingPlatformDarwin.c
SRCS+= profile/InstrProfilingPlatformLinux.c
SRCS+= profile/InstrProfilingPlatformOther.c
SRCS+= profile/InstrProfilingRuntime.cc
diff --git a/lib/libclang_rt/safestack/Makefile b/lib/libclang_rt/safestack/Makefile
index 54ef485352f2..2696a7be17e3 100644
--- a/lib/libclang_rt/safestack/Makefile
+++ b/lib/libclang_rt/safestack/Makefile
@@ -7,32 +7,5 @@ LIB= clang_rt.safestack-${CRTARCH}
SRCS+= interception/interception_linux.cc
SRCS+= interception/interception_type_test.cc
SRCS+= safestack/safestack.cc
-SRCS+= sanitizer_common/sanitizer_allocator.cc
-SRCS+= sanitizer_common/sanitizer_common.cc
-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_persistent_allocator.cc
-SRCS+= sanitizer_common/sanitizer_platform_limits_freebsd.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_printf.cc
-SRCS+= sanitizer_common/sanitizer_procmaps_bsd.cc
-SRCS+= sanitizer_common/sanitizer_procmaps_common.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_termination.cc
-SRCS+= sanitizer_common/sanitizer_thread_registry.cc
-SRCS+= sanitizer_common/sanitizer_tls_get_addr.cc
.include <bsd.lib.mk>
diff --git a/lib/libclang_rt/ubsan_standalone/Makefile b/lib/libclang_rt/ubsan_standalone/Makefile
index 936d4777a221..ac7298032189 100644
--- a/lib/libclang_rt/ubsan_standalone/Makefile
+++ b/lib/libclang_rt/ubsan_standalone/Makefile
@@ -46,7 +46,6 @@ 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_type_traits.cc
-SRCS+= sanitizer_common/sanitizer_type_traits.cc
SRCS+= sanitizer_common/sanitizer_unwind_linux_libcdep.cc
SRCS+= ubsan/ubsan_diag.cc
SRCS+= ubsan/ubsan_diag_standalone.cc
diff --git a/lib/libclang_rt/xray-basic/Makefile b/lib/libclang_rt/xray-basic/Makefile
new file mode 100644
index 000000000000..f8012f167190
--- /dev/null
+++ b/lib/libclang_rt/xray-basic/Makefile
@@ -0,0 +1,10 @@
+# $FreeBSD$
+
+.include <bsd.init.mk>
+
+LIB= clang_rt.xray-basic-${CRTARCH}
+
+SRCS+= xray/xray_basic_flags.cc
+SRCS+= xray/xray_basic_logging.cc
+
+.include <bsd.lib.mk>
diff --git a/lib/libclang_rt/xray-fdr/Makefile b/lib/libclang_rt/xray-fdr/Makefile
new file mode 100644
index 000000000000..8b793eb3b501
--- /dev/null
+++ b/lib/libclang_rt/xray-fdr/Makefile
@@ -0,0 +1,10 @@
+# $FreeBSD$
+
+.include <bsd.init.mk>
+
+LIB= clang_rt.xray-fdr-${CRTARCH}
+
+SRCS+= xray/xray_fdr_flags.cc
+SRCS+= xray/xray_fdr_logging.cc
+
+.include <bsd.lib.mk>
diff --git a/lib/libclang_rt/xray-profiling/Makefile b/lib/libclang_rt/xray-profiling/Makefile
new file mode 100644
index 000000000000..c3696629857f
--- /dev/null
+++ b/lib/libclang_rt/xray-profiling/Makefile
@@ -0,0 +1,11 @@
+# $FreeBSD$
+
+.include <bsd.init.mk>
+
+LIB= clang_rt.xray-profiling-${CRTARCH}
+
+SRCS+= xray/xray_profile_collector.cc
+SRCS+= xray/xray_profiling.cc
+SRCS+= xray/xray_profiling_flags.cc
+
+.include <bsd.lib.mk>
diff --git a/lib/libclang_rt/xray/Makefile b/lib/libclang_rt/xray/Makefile
new file mode 100644
index 000000000000..32871eefa55e
--- /dev/null
+++ b/lib/libclang_rt/xray/Makefile
@@ -0,0 +1,44 @@
+# $FreeBSD$
+
+.include <bsd.init.mk>
+
+LIB= clang_rt.xray-${CRTARCH}
+
+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_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_freebsd.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_bsd.cc
+SRCS+= sanitizer_common/sanitizer_procmaps_common.cc
+SRCS+= sanitizer_common/sanitizer_suppressions.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_type_traits.cc
+SRCS+= xray/xray_buffer_queue.cc
+SRCS+= xray/xray_flags.cc
+SRCS+= xray/xray_init.cc
+SRCS+= xray/xray_interface.cc
+SRCS+= xray/xray_log_interface.cc
+SRCS+= xray/xray_trampoline_x86_64.S
+SRCS+= xray/xray_utils.cc
+SRCS+= xray/xray_x86_64.cc
+
+.include <bsd.lib.mk>