Home | History | Annotate | Line # | Download | only in ld.elf_so
Makefile revision 1.14
      1 # $NetBSD: Makefile,v 1.14 2023/05/31 00:46:11 riastradh Exp $
      2 #
      3 
      4 NOMAN=		# defined
      5 
      6 .include <bsd.own.mk>
      7 
      8 .if ${MKPIC} != "no"
      9 
     10 SUBDIR+=	helper_dso1 helper_dso3 .WAIT helper_dso2 .WAIT \
     11 		helper_ifunc_dso \
     12 		helper_symver_dso0 .WAIT helper_symver_dso1 .WAIT \
     13 		helper_symver_dso2 .WAIT \
     14 		data
     15 
     16 SUBDIR+=	helper_def_static
     17 SUBDIR+=	.WAIT
     18 SUBDIR+=	helper_use_static
     19 
     20 TESTSDIR=	${TESTSBASE}/libexec/ld.elf_so
     21 
     22 TESTS_C+=	t_dlerror-cleared t_dlerror-false t_dlinfo t_dlvsym t_ifunc
     23 TESTS_C+=	t_rtld_r_debug
     24 TESTS_C+=	t_tls_extern
     25 
     26 COPTS.t_rtld_r_debug.c += ${${ACTIVE_CC} == "gcc" :? -Wno-maybe-uninitialized :}
     27 
     28 LDADD.t_dlerror-false=	-Wl,-rpath,/var/nonexistent/lib
     29 LDADD.t_dlvsym=		-Wl,-rpath,${TESTSDIR}/h_helper_symver_dso2
     30 LDADD.t_ifunc=		-Wl,-rpath,${TESTSDIR} -lutil
     31 DPADD.t_ifunc=		${LIBUTIL}
     32 LDADD.t_tls_extern+=	-Wl,-rpath,${TESTSDIR}
     33 
     34 TESTS_SH+=		t_df_1_noopen t_dl_symver t_thread_local_dtor
     35 
     36 BINDIR=			${TESTSDIR}
     37 PROGS+=			h_df_1_noopen1
     38 SRCS.h_df_1_noopen1=	h_df_1_noopen.c
     39 
     40 PROGS+=			h_df_1_noopen2
     41 SRCS.h_df_1_noopen2=	h_df_1_noopen.c
     42 LDADD.h_df_1_noopen2=	-lpthread
     43 
     44 PROGS+=			h_thread_local_dtor
     45 LDADD.h_thread_local_dtor=	-Wl,-rpath,${TESTSDIR}  -lpthread
     46 
     47 PROGS+=			h_ifunc
     48 SRCS.h_ifunc=		h_ifunc.c
     49 IFUNCDIR!=		cd ${.CURDIR}/helper_ifunc_dso && ${PRINTOBJDIR}
     50 LDADD.h_ifunc=		-Wl,-rpath,${TESTSDIR} -L${IFUNCDIR} -lh_helper_ifunc_dso
     51 
     52 PROGS+=			h_locking
     53 SRCS.h_locking=		h_locking.c
     54 LDADD.h_locking=	-lpthread -Wl,--export-dynamic -Wl,-rpath,${TESTSDIR}
     55 
     56 PROGS+=			h_dl_symver_v0
     57 SRCS.h_dl_symver_v0=	h_dl_symver.c
     58 V0ODIR!=		cd ${.CURDIR}/helper_symver_dso0 && ${PRINTOBJDIR}
     59 LDADD.h_dl_symver_v0=	-L${V0ODIR} -lh_helper_symver_dso
     60 
     61 PROGS+=			h_dl_symver_v1
     62 SRCS.h_dl_symver_v1=	h_dl_symver.c
     63 V1ODIR!=		cd ${.CURDIR}/helper_symver_dso1 && ${PRINTOBJDIR}
     64 LDADD.h_dl_symver_v1=	-L${V1ODIR} -lh_helper_symver_dso
     65 
     66 PROGS+=			h_dl_symver_v2
     67 SRCS.h_dl_symver_v2=	h_dl_symver.c
     68 V2ODIR!=		cd ${.CURDIR}/helper_symver_dso2 && ${PRINTOBJDIR}
     69 LDADD.h_dl_symver_v2=	-L${V2ODIR} -lh_helper_symver_dso
     70 
     71 PROGS+=			h_tls_extern
     72 LDADD.h_tls_extern+=	-Wl,-rpath,${TESTSDIR}
     73 
     74 .include <bsd.test.mk>
     75 
     76 .else
     77 
     78 NOPROG=	# defined
     79 .include <bsd.prog.mk>
     80 
     81 .endif
     82