freebsd-dev/lib/libclang_rt/xray/Makefile
Piotr Kubaj f5024381ac powerpc: enable supported sanitizers on powerpc64*
1. Merge LLVM's 315d792130258a9b7250494be8d002ebb427b08f, adding support
for FreeBSD/powerpc64*.
2. Add sanitizer list to lib/libclang_rt/Makefile, taken from the list of
libraries that llvm-devel port builds.
3. powerpc64le supports the same sanitizers that powerpc64, but powerpc64le
also supports xray* sanitizers.
4. lib/libclang_rt/xray/Makefile hardcodes amd64-specific files, so that needs
to be conditionalized.
5. Sanitizers are not enabled for powerpc, because powerpc supports only
builtins and profile.

Reviewed by:	dim
Differential Revision: https://reviews.freebsd.org/D35228
Relnotes:	yes
MFC after:	3 days
2022-05-17 21:46:53 +02:00

60 lines
2.1 KiB
Makefile

# $FreeBSD$
.include <bsd.init.mk>
LIB= clang_rt.xray-${CRTARCH}
SRCS+= sanitizer_common/sanitizer_allocator.cpp
SRCS+= sanitizer_common/sanitizer_allocator_checks.cpp
SRCS+= sanitizer_common/sanitizer_common.cpp
SRCS+= sanitizer_common/sanitizer_common_libcdep.cpp
SRCS+= sanitizer_common/sanitizer_deadlock_detector1.cpp
SRCS+= sanitizer_common/sanitizer_deadlock_detector2.cpp
SRCS+= sanitizer_common/sanitizer_errno.cpp
SRCS+= sanitizer_common/sanitizer_file.cpp
SRCS+= sanitizer_common/sanitizer_flag_parser.cpp
SRCS+= sanitizer_common/sanitizer_flags.cpp
SRCS+= sanitizer_common/sanitizer_libc.cpp
SRCS+= sanitizer_common/sanitizer_libignore.cpp
SRCS+= sanitizer_common/sanitizer_linux.cpp
SRCS+= sanitizer_common/sanitizer_linux_libcdep.cpp
SRCS+= sanitizer_common/sanitizer_mutex.cpp
SRCS+= sanitizer_common/sanitizer_platform_limits_freebsd.cpp
SRCS+= sanitizer_common/sanitizer_platform_limits_linux.cpp
SRCS+= sanitizer_common/sanitizer_platform_limits_posix.cpp
SRCS+= sanitizer_common/sanitizer_posix.cpp
SRCS+= sanitizer_common/sanitizer_posix_libcdep.cpp
SRCS+= sanitizer_common/sanitizer_printf.cpp
SRCS+= sanitizer_common/sanitizer_procmaps_bsd.cpp
SRCS+= sanitizer_common/sanitizer_procmaps_common.cpp
SRCS+= sanitizer_common/sanitizer_suppressions.cpp
SRCS+= sanitizer_common/sanitizer_termination.cpp
SRCS+= sanitizer_common/sanitizer_thread_registry.cpp
SRCS+= sanitizer_common/sanitizer_tls_get_addr.cpp
SRCS+= sanitizer_common/sanitizer_type_traits.cpp
SRCS+= xray/xray_buffer_queue.cpp
SRCS+= xray/xray_flags.cpp
SRCS+= xray/xray_init.cpp
SRCS+= xray/xray_interface.cpp
SRCS+= xray/xray_log_interface.cpp
SRCS+= xray/xray_utils.cpp
.if ${MACHINE_CPUARCH} == amd64
SRCS+= xray/xray_trampoline_x86_64.S
SRCS+= xray/xray_x86_64.cpp
.endif # amd64
.if ${MACHINE_ARCH} == powerpc64le
SRCS+= xray/xray_powerpc64.cpp
SRCS+= xray/xray_trampoline_powerpc64.cpp
SRCS+= xray/xray_trampoline_powerpc64_asm.S
.endif # powerpc64le
.PATH: ${CRTSRC}/include/xray
INCSDIR= ${CLANGDIR}/include/xray
INCS+= xray_interface.h
INCS+= xray_log_interface.h
INCS+= xray_records.h
.include <bsd.lib.mk>