1 1.12 nia # $NetBSD: Makefile,v 1.12 2025/11/21 18:34:12 nia Exp $ 2 1.1 kamil 3 1.1 kamil .include <bsd.own.mk> 4 1.1 kamil 5 1.1 kamil TESTSDIR= ${TESTSBASE}/lib/libc/misc 6 1.1 kamil 7 1.1 kamil TESTS_C+= t_ubsan 8 1.1 kamil TESTS_CXX+= t_ubsanxx 9 1.1 kamil 10 1.10 nia .if ${MACHINE_ARCH} == "sparc64" 11 1.10 nia TESTS_C+= t_vis 12 1.11 nia .if ${ACTIVE_CC} == "gcc" 13 1.10 nia COPTS.t_vis.c+= -mvis 14 1.12 nia .elif ${ACTIVE_CC} == "clang" 15 1.12 nia COPTS.t_vis.c+= -no-integrated-as -Xassembler -Av9a 16 1.10 nia .endif 17 1.11 nia .endif 18 1.10 nia 19 1.1 kamil .PATH: ${NETBSDSRCDIR}/common/lib/libc/misc 20 1.4 kamil SRCS.t_ubsan= t_ubsan.c 21 1.4 kamil SRCS.t_ubsanxx= t_ubsanxx.cpp 22 1.1 kamil 23 1.1 kamil .if ${MKSANITIZER:Uno} != "yes" && ${MKLIBCSANITIZER:Uno} != "yes" 24 1.1 kamil # These tests are designed to be used against micro-UBSan only. 25 1.8 andvar # micro-UBSan is used in these tests as a standalone library only. 26 1.1 kamil CPPFLAGS+= -DENABLE_TESTS 27 1.4 kamil SRCS.t_ubsan+= ubsan.c 28 1.4 kamil SRCS.t_ubsanxx+= ubsan.c 29 1.1 kamil UBSAN_FLAGS= -fsanitize=undefined 30 1.1 kamil UBSAN_FLAGS+= ${${ACTIVE_CC} == "clang" :? -fsanitize=integer :} 31 1.1 kamil UBSAN_FLAGS+= ${${ACTIVE_CC} == "clang" :? -fsanitize=nullability :} 32 1.1 kamil CFLAGS+= ${UBSAN_FLAGS} 33 1.1 kamil CXXFLAGS+= ${UBSAN_FLAGS} 34 1.1 kamil CWARNFLAGS+= -Wno-return-type -Wno-strict-aliasing 35 1.1 kamil CWARNFLAGS.clang+= -Wno-incompatible-pointer-types-discards-qualifiers 36 1.1 kamil CWARNFLAGS.clang+= -Wno-nullability-completeness 37 1.1 kamil .endif 38 1.2 christos COPTS.t_ubsan.c += -Wno-stack-protector 39 1.2 christos COPTS.t_ubsanxx.cpp += -Wno-stack-protector 40 1.7 mrg COPTS.ubsan.c+= ${${ACTIVE_CC} == "clang" && ${MACHINE_ARCH} == "powerpc":? -O0 :} 41 1.1 kamil 42 1.7 mrg COPTS.t_ubsan.c+= ${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 7:? -Wno-int-in-bool-context :} 43 1.7 mrg COPTS.t_ubsanxx.cpp+= ${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 7:? -Wno-int-in-bool-context :} 44 1.9 mrg COPTS.t_ubsan.c+= ${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 12:? -Wno-uninitialized :} 45 1.9 mrg COPTS.t_ubsanxx.cpp+= ${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 12:? -Wno-uninitialized :} 46 1.3 mrg 47 1.9 mrg COPTS.ubsan.c+= ${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 9:? -Wno-builtin-declaration-mismatch :} 48 1.7 mrg 49 1.1 kamil .include <bsd.test.mk> 50