1 # $NetBSD: Makefile,v 1.12 2025/06/10 14:30:44 christos Exp $ 2 3 NOMAN= # defined 4 5 .include <bsd.own.mk> 6 7 TESTSDIR= ${TESTSBASE}/lib/csu 8 TESTS_SH= t_crt0 t_ifunc_static 9 TESTS_SUBDIRS= 10 SUBDIR+= dso 11 12 .include "Makefile.check_stack" 13 14 CPPFLAGS+= ${CPPFLAGS_CHECK_STACK} 15 16 BINDIR= ${TESTSDIR} 17 PROG_CXX= h_initfini1 h_initfini2 h_initfini3 18 SRCS.h_initfini1= h_initfini1.cxx h_initfini_common.cxx \ 19 ${SRCS_CHECK_STACK} 20 SRCS.h_initfini2= h_initfini1.cxx h_initfini_common.cxx \ 21 ${SRCS_CHECK_STACK} 22 LDSTATIC.h_initfini2+= -static 23 SRCS.h_initfini3= h_initfini3.cxx h_initfini_common.cxx \ 24 ${SRCS_CHECK_STACK} 25 LDADD.h_initfini3+= -Wl,-rpath,${TESTSDIR} 26 27 PROGS+= h_ifunc_static h_initfini_array 28 SRCS.h_ifunc_static= h_ifunc_static.c 29 SRCS.h_initfini_array= h_initfini_array.c 30 LDSTATIC.h_ifunc_static=-static 31 32 TESTS_SH+= t_hello 33 34 PROGS+= ${"${MKPIC}" != no:?h_hello_dyn:} 35 PROGS+= ${"${MKPIE}" != no:?h_hello_dynpie:} 36 PROGS+= ${"${MKPIE}" != no:?h_hello_relr:} 37 PROGS+= h_hello_sta 38 PROGS+= ${"${MKPIE}" != no:?h_hello_stapie:} 39 40 h_hello_relr: CTFMERGE=: # PR toolchain/59364: ctf tools needs update 41 42 SRCS.h_hello_dyn+= h_hello.c 43 SRCS.h_hello_dynpie+= h_hello.c 44 SRCS.h_hello_relr+= h_hello.c 45 SRCS.h_hello_sta+= h_hello.c 46 SRCS.h_hello_stapie+= h_hello.c 47 COPTS.h_hello.c+= ${"${MKPIE}" != no:?-fPIE:} 48 LDFLAGS.h_hello_dyn= -no-pie 49 LDFLAGS.h_hello_dynpie= -pie 50 LDFLAGS.h_hello_relr= -pie ${LD_PACK_RELATIVE_RELOCS} 51 LDFLAGS.h_hello_sta= -no-pie 52 LDFLAGS.h_hello_stapie= -pie ${LD_NOPACK_RELATIVE_RELOCS} 53 LDSTATIC.h_hello_relr= -static 54 LDSTATIC.h_hello_sta= -static 55 LDSTATIC.h_hello_stapie= -static 56 57 .include <bsd.test.mk> 58