Now compiler-rt has been updated in r276851, bring in the various
sanitizer libraries that already work on FreeBSD: * asan: Address Sanitizer * ubsan: Undefined Behavior Sanitizer * profile: Profile Guided Optimization support Please note that these libraries are *experimental* at this stage, so the main Makefile is not yet connected to the build. Since I didn't want to needlessly edit BSD.usr.dist, you will also have to create the install directory /usr/lib/clang/3.5.0/lib/freebsd manually for now.
This commit is contained in:
parent
7a635f0d70
commit
91d03e2e18
10
lib/libclang_rt/Makefile
Normal file
10
lib/libclang_rt/Makefile
Normal file
@ -0,0 +1,10 @@
|
||||
# $FreeBSD$
|
||||
|
||||
SUBDIR= asan\
|
||||
asan_cxx\
|
||||
profile\
|
||||
san\
|
||||
ubsan\
|
||||
ubsan_cxx
|
||||
|
||||
.include <bsd.subdir.mk>
|
25
lib/libclang_rt/Makefile.inc
Normal file
25
lib/libclang_rt/Makefile.inc
Normal file
@ -0,0 +1,25 @@
|
||||
# $FreeBSD$
|
||||
|
||||
.include <src.opts.mk>
|
||||
|
||||
CRTARCH=${MACHINE_CPUARCH:C/amd64/x86_64/}
|
||||
CRTSRC=${.CURDIR}/../../../contrib/compiler-rt
|
||||
|
||||
LIBDIR=/usr/lib/clang/3.5.0/lib/freebsd
|
||||
|
||||
NO_PIC=
|
||||
MK_PROFILE=no
|
||||
|
||||
WARNS?=0
|
||||
|
||||
SSP_CFLAGS=
|
||||
CFLAGS+=-DNDEBUG
|
||||
CFLAGS+=${PICFLAG}
|
||||
CFLAGS+=-fno-builtin
|
||||
CFLAGS+=-fno-exceptions
|
||||
CFLAGS+=-fno-rtti
|
||||
CFLAGS+=-fno-stack-protector
|
||||
CFLAGS+=-funwind-tables
|
||||
CFLAGS+=-fvisibility-inlines-hidden
|
||||
CFLAGS+=-fvisibility=hidden
|
||||
CFLAGS+=-I${CRTSRC}/lib
|
78
lib/libclang_rt/asan/Makefile
Normal file
78
lib/libclang_rt/asan/Makefile
Normal file
@ -0,0 +1,78 @@
|
||||
# $FreeBSD$
|
||||
|
||||
.include <bsd.init.mk>
|
||||
|
||||
LIB= clang_rt.asan-${CRTARCH}
|
||||
|
||||
.PATH: ${CRTSRC}/lib/asan\
|
||||
${CRTSRC}/lib/interception\
|
||||
${CRTSRC}/lib/sanitizer_common\
|
||||
${CRTSRC}/lib/lsan
|
||||
|
||||
SRCS= asan_preinit.cc\
|
||||
asan_allocator2.cc\
|
||||
asan_activation.cc\
|
||||
asan_debugging.cc\
|
||||
asan_fake_stack.cc\
|
||||
asan_globals.cc\
|
||||
asan_interceptors.cc\
|
||||
asan_linux.cc\
|
||||
asan_mac.cc\
|
||||
asan_malloc_linux.cc\
|
||||
asan_malloc_mac.cc\
|
||||
asan_malloc_win.cc\
|
||||
asan_poisoning.cc\
|
||||
asan_posix.cc\
|
||||
asan_report.cc\
|
||||
asan_rtl.cc\
|
||||
asan_stack.cc\
|
||||
asan_stats.cc\
|
||||
asan_suppressions.cc\
|
||||
asan_thread.cc\
|
||||
asan_win.cc\
|
||||
interception_linux.cc\
|
||||
interception_mac.cc\
|
||||
interception_win.cc\
|
||||
interception_type_test.cc\
|
||||
sanitizer_allocator.cc\
|
||||
sanitizer_common.cc\
|
||||
sanitizer_deadlock_detector1.cc\
|
||||
sanitizer_deadlock_detector2.cc\
|
||||
sanitizer_flags.cc\
|
||||
sanitizer_libc.cc\
|
||||
sanitizer_libignore.cc\
|
||||
sanitizer_linux.cc\
|
||||
sanitizer_mac.cc\
|
||||
sanitizer_persistent_allocator.cc\
|
||||
sanitizer_platform_limits_linux.cc\
|
||||
sanitizer_platform_limits_posix.cc\
|
||||
sanitizer_posix.cc\
|
||||
sanitizer_printf.cc\
|
||||
sanitizer_procmaps_common.cc\
|
||||
sanitizer_procmaps_freebsd.cc\
|
||||
sanitizer_procmaps_linux.cc\
|
||||
sanitizer_procmaps_mac.cc\
|
||||
sanitizer_stackdepot.cc\
|
||||
sanitizer_stacktrace.cc\
|
||||
sanitizer_stacktrace_printer.cc\
|
||||
sanitizer_suppressions.cc\
|
||||
sanitizer_symbolizer.cc\
|
||||
sanitizer_symbolizer_libbacktrace.cc\
|
||||
sanitizer_symbolizer_win.cc\
|
||||
sanitizer_tls_get_addr.cc\
|
||||
sanitizer_thread_registry.cc\
|
||||
sanitizer_win.cc\
|
||||
sanitizer_common_libcdep.cc\
|
||||
sanitizer_coverage_libcdep.cc\
|
||||
sanitizer_coverage_mapping_libcdep.cc\
|
||||
sanitizer_linux_libcdep.cc\
|
||||
sanitizer_posix_libcdep.cc\
|
||||
sanitizer_stacktrace_libcdep.cc\
|
||||
sanitizer_stoptheworld_linux_libcdep.cc\
|
||||
sanitizer_symbolizer_libcdep.cc\
|
||||
sanitizer_symbolizer_posix_libcdep.cc\
|
||||
sanitizer_unwind_posix_libcdep.cc\
|
||||
lsan_common.cc\
|
||||
lsan_common_linux.cc
|
||||
|
||||
.include <bsd.lib.mk>
|
11
lib/libclang_rt/asan_cxx/Makefile
Normal file
11
lib/libclang_rt/asan_cxx/Makefile
Normal file
@ -0,0 +1,11 @@
|
||||
# $FreeBSD$
|
||||
|
||||
.include <bsd.init.mk>
|
||||
|
||||
LIB= clang_rt.asan_cxx-${CRTARCH}
|
||||
|
||||
.PATH: ${CRTSRC}/lib/asan
|
||||
|
||||
SRCS= asan_new_delete.cc
|
||||
|
||||
.include <bsd.lib.mk>
|
17
lib/libclang_rt/profile/Makefile
Normal file
17
lib/libclang_rt/profile/Makefile
Normal file
@ -0,0 +1,17 @@
|
||||
# $FreeBSD$
|
||||
|
||||
.include <bsd.init.mk>
|
||||
|
||||
LIB= clang_rt.profile-${CRTARCH}
|
||||
|
||||
.PATH: ${CRTSRC}/lib/profile
|
||||
|
||||
SRCS= GCDAProfiling.c\
|
||||
InstrProfiling.c\
|
||||
InstrProfilingBuffer.c\
|
||||
InstrProfilingFile.c\
|
||||
InstrProfilingPlatformDarwin.c\
|
||||
InstrProfilingPlatformOther.c\
|
||||
InstrProfilingRuntime.cc\
|
||||
|
||||
.include <bsd.lib.mk>
|
48
lib/libclang_rt/san/Makefile
Normal file
48
lib/libclang_rt/san/Makefile
Normal file
@ -0,0 +1,48 @@
|
||||
# $FreeBSD$
|
||||
|
||||
.include <bsd.init.mk>
|
||||
|
||||
LIB= clang_rt.san-${CRTARCH}
|
||||
|
||||
.PATH: ${CRTSRC}/lib/sanitizer_common\
|
||||
|
||||
SRCS= sanitizer_allocator.cc\
|
||||
sanitizer_common.cc\
|
||||
sanitizer_deadlock_detector1.cc\
|
||||
sanitizer_deadlock_detector2.cc\
|
||||
sanitizer_flags.cc\
|
||||
sanitizer_libc.cc\
|
||||
sanitizer_libignore.cc\
|
||||
sanitizer_linux.cc\
|
||||
sanitizer_mac.cc\
|
||||
sanitizer_persistent_allocator.cc\
|
||||
sanitizer_platform_limits_linux.cc\
|
||||
sanitizer_platform_limits_posix.cc\
|
||||
sanitizer_posix.cc\
|
||||
sanitizer_printf.cc\
|
||||
sanitizer_procmaps_common.cc\
|
||||
sanitizer_procmaps_freebsd.cc\
|
||||
sanitizer_procmaps_linux.cc\
|
||||
sanitizer_procmaps_mac.cc\
|
||||
sanitizer_stackdepot.cc\
|
||||
sanitizer_stacktrace.cc\
|
||||
sanitizer_stacktrace_printer.cc\
|
||||
sanitizer_suppressions.cc\
|
||||
sanitizer_symbolizer.cc\
|
||||
sanitizer_symbolizer_libbacktrace.cc\
|
||||
sanitizer_symbolizer_win.cc\
|
||||
sanitizer_tls_get_addr.cc\
|
||||
sanitizer_thread_registry.cc\
|
||||
sanitizer_win.cc\
|
||||
sanitizer_common_libcdep.cc\
|
||||
sanitizer_coverage_libcdep.cc\
|
||||
sanitizer_coverage_mapping_libcdep.cc\
|
||||
sanitizer_linux_libcdep.cc\
|
||||
sanitizer_posix_libcdep.cc\
|
||||
sanitizer_stacktrace_libcdep.cc\
|
||||
sanitizer_stoptheworld_linux_libcdep.cc\
|
||||
sanitizer_symbolizer_libcdep.cc\
|
||||
sanitizer_symbolizer_posix_libcdep.cc\
|
||||
sanitizer_unwind_posix_libcdep.cc
|
||||
|
||||
.include <bsd.lib.mk>
|
17
lib/libclang_rt/ubsan/Makefile
Normal file
17
lib/libclang_rt/ubsan/Makefile
Normal file
@ -0,0 +1,17 @@
|
||||
# $FreeBSD$
|
||||
|
||||
.include <bsd.init.mk>
|
||||
|
||||
LIB= clang_rt.ubsan-${CRTARCH}
|
||||
|
||||
.PATH: ${CRTSRC}/lib/ubsan
|
||||
|
||||
SRCS= ubsan_diag.cc\
|
||||
ubsan_init.cc\
|
||||
ubsan_flags.cc\
|
||||
ubsan_handlers.cc\
|
||||
ubsan_value.cc
|
||||
|
||||
.include <bsd.lib.mk>
|
||||
|
||||
|
14
lib/libclang_rt/ubsan_cxx/Makefile
Normal file
14
lib/libclang_rt/ubsan_cxx/Makefile
Normal file
@ -0,0 +1,14 @@
|
||||
# $FreeBSD$
|
||||
|
||||
.include <bsd.init.mk>
|
||||
|
||||
LIB= clang_rt.ubsan_cxx-${CRTARCH}
|
||||
|
||||
CXXFLAGS+=-frtti
|
||||
|
||||
.PATH: ${CRTSRC}/lib/ubsan
|
||||
|
||||
SRCS= ubsan_handlers_cxx.cc\
|
||||
ubsan_type_hash.cc
|
||||
|
||||
.include <bsd.lib.mk>
|
Loading…
Reference in New Issue
Block a user