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