# $NetBSD: Makefile,v 1.21 2023/08/03 01:36:55 mrg Exp $
UNSUPPORTED_COMPILER.clang= # defined
LIBISCXX = yes
include <bsd.own.mk>
include "../Makefile.inc"
include "../Makefile.sanitizer"
PATH: ${SANITIZER}/ubsan
# XXXmknative
UBSAN_SRCS= \
ubsan_diag.cpp \
ubsan_flags.cpp \
ubsan_handlers.cpp \
ubsan_handlers_cxx.cpp \
ubsan_init.cpp \
ubsan_monitor.cpp \
ubsan_type_hash.cpp \
ubsan_type_hash_itanium.cpp \
ubsan_type_hash_win.cpp \
ubsan_value.cpp
for _s in ubsan_handlers_cxx ubsan_type_hash ubsan_type_hash_itanium
COPTS.${_s}.cpp+=-frtti
endfor
if ${MACHINE_ARCH} == "vax"
COPTS.sanitizer_file.cpp += -O1
endif
LIB= ubsan
SRCS+= ${UBSAN_SRCS}
LIBDPLIBS+= m ${NETBSDSRCDIR}/lib/libm
LIBDPLIBS+= rt ${NETBSDSRCDIR}/lib/librt
LIBDPLIBS+= pthread ${NETBSDSRCDIR}/lib/libpthread
CPPFLAGS+=-DCAN_SANITIZE_UB=1 -DUBSAN_CAN_USE_CXXABI=1
# XXX
COPTS.ubsan_handlers.cpp+=${CC_WNO_MAYBE_UNINITIALIZED}
include <bsd.lib.mk>