Makefile revision 1.21
11.21Sriastrad# $NetBSD: Makefile,v 1.21 2023/07/30 09:22:02 riastradh Exp $
21.1Spooka#
31.1Spooka
41.3SskrllNOMAN=		# defined
51.3Sskrll
61.1Spooka.include <bsd.own.mk>
71.1Spooka
81.6Smrg.if ${MKPIC} != "no"
91.6Smrg
101.9SjoergSUBDIR+=	helper_dso1 helper_dso3 .WAIT helper_dso2 .WAIT \
111.8Sjoerg		helper_ifunc_dso \
121.5Snonaka		helper_symver_dso0 .WAIT helper_symver_dso1 .WAIT \
131.5Snonaka		helper_symver_dso2 .WAIT \
141.5Snonaka		data
151.4Sjoerg
161.16SriastradSUBDIR+=	helper_def_dynamic
171.13SriastradSUBDIR+=	helper_def_static
181.18SriastradSUBDIR+=	helper_onlydef
191.14SriastradSUBDIR+=	.WAIT
201.17SriastradSUBDIR+=	helper_abuse_dynamic
211.17SriastradSUBDIR+=	helper_abuse_static
221.19SriastradSUBDIR+=	helper_onlyctor_dynamic
231.18SriastradSUBDIR+=	helper_onlyuse_dynamic
241.18SriastradSUBDIR+=	helper_onlyuse_static
251.16SriastradSUBDIR+=	helper_use_dynamic
261.13SriastradSUBDIR+=	helper_use_static
271.13Sriastrad
281.1SpookaTESTSDIR=	${TESTSBASE}/libexec/ld.elf_so
291.1Spooka
301.8SjoergTESTS_C+=	t_dlerror-cleared t_dlerror-false t_dlinfo t_dlvsym t_ifunc
311.11SkamilTESTS_C+=	t_rtld_r_debug
321.13SriastradTESTS_C+=	t_tls_extern
331.21SriastradTESTS_C+=	t_hash
341.21Sriastrad
351.21Sriastrad.PATH:	${NETBSDSRCDIR}/libexec/ld.elf_so
361.21SriastradSRCS.t_hash+=	t_hash.c
371.21SriastradSRCS.t_hash+=	hash.c
381.21SriastradCPPFLAGS.t_hash.c+=	-I${NETBSDSRCDIR}/libexec/ld.elf_so
391.11Skamil
401.20SlukemCOPTS.t_rtld_r_debug.c += ${CC_WNO_MAYBE_UNINITIALIZED}
411.2Sskrll
421.2SskrllLDADD.t_dlerror-false=	-Wl,-rpath,/var/nonexistent/lib
431.5SnonakaLDADD.t_dlvsym=		-Wl,-rpath,${TESTSDIR}/h_helper_symver_dso2
441.8SjoergLDADD.t_ifunc=		-Wl,-rpath,${TESTSDIR} -lutil
451.8SjoergDPADD.t_ifunc=		${LIBUTIL}
461.13SriastradLDADD.t_tls_extern+=	-Wl,-rpath,${TESTSDIR}
471.1Spooka
481.9SjoergTESTS_SH+=		t_df_1_noopen t_dl_symver t_thread_local_dtor
491.3Sskrll
501.3SskrllBINDIR=			${TESTSDIR}
511.3SskrllPROGS+=			h_df_1_noopen1
521.3SskrllSRCS.h_df_1_noopen1=	h_df_1_noopen.c
531.3Sskrll
541.3SskrllPROGS+=			h_df_1_noopen2
551.3SskrllSRCS.h_df_1_noopen2=	h_df_1_noopen.c
561.3SskrllLDADD.h_df_1_noopen2=	-lpthread
571.3Sskrll
581.9SjoergPROGS+=			h_thread_local_dtor
591.9SjoergLDADD.h_thread_local_dtor=	-Wl,-rpath,${TESTSDIR}  -lpthread
601.9Sjoerg
611.8SjoergPROGS+=			h_ifunc
621.8SjoergSRCS.h_ifunc=		h_ifunc.c
631.8SjoergIFUNCDIR!=		cd ${.CURDIR}/helper_ifunc_dso && ${PRINTOBJDIR}
641.8SjoergLDADD.h_ifunc=		-Wl,-rpath,${TESTSDIR} -L${IFUNCDIR} -lh_helper_ifunc_dso
651.8Sjoerg
661.4SjoergPROGS+=			h_locking
671.4SjoergSRCS.h_locking=		h_locking.c
681.4SjoergLDADD.h_locking=	-lpthread -Wl,--export-dynamic -Wl,-rpath,${TESTSDIR}
691.4Sjoerg
701.5SnonakaPROGS+=			h_dl_symver_v0
711.5SnonakaSRCS.h_dl_symver_v0=	h_dl_symver.c
721.5SnonakaV0ODIR!=		cd ${.CURDIR}/helper_symver_dso0 && ${PRINTOBJDIR}
731.5SnonakaLDADD.h_dl_symver_v0=	-L${V0ODIR} -lh_helper_symver_dso
741.5Snonaka
751.5SnonakaPROGS+=			h_dl_symver_v1
761.5SnonakaSRCS.h_dl_symver_v1=	h_dl_symver.c
771.5SnonakaV1ODIR!=		cd ${.CURDIR}/helper_symver_dso1 && ${PRINTOBJDIR}
781.5SnonakaLDADD.h_dl_symver_v1=	-L${V1ODIR} -lh_helper_symver_dso
791.5Snonaka
801.5SnonakaPROGS+=			h_dl_symver_v2
811.5SnonakaSRCS.h_dl_symver_v2=	h_dl_symver.c
821.5SnonakaV2ODIR!=		cd ${.CURDIR}/helper_symver_dso2 && ${PRINTOBJDIR}
831.5SnonakaLDADD.h_dl_symver_v2=	-L${V2ODIR} -lh_helper_symver_dso
841.5Snonaka
851.7Smrg.include <bsd.test.mk>
861.7Smrg
871.7Smrg.else
881.7Smrg
891.7SmrgNOPROG=	# defined
901.7Smrg.include <bsd.prog.mk>
911.7Smrg
921.6Smrg.endif
93