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