xref: /netbsd-src/tests/libexec/ld.elf_so/Makefile (revision a04395531661c5e8d314125d5ae77d4cbedd5d73)
1# $NetBSD: Makefile,v 1.12 2021/05/30 02:26:51 joerg Exp $
2#
3
4NOMAN=		# defined
5
6.include <bsd.own.mk>
7
8.if ${MKPIC} != "no"
9
10SUBDIR+=	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
16TESTSDIR=	${TESTSBASE}/libexec/ld.elf_so
17
18TESTS_C+=	t_dlerror-cleared t_dlerror-false t_dlinfo t_dlvsym t_ifunc
19TESTS_C+=	t_rtld_r_debug
20
21COPTS.t_rtld_r_debug.c += ${${ACTIVE_CC} == "gcc" :? -Wno-maybe-uninitialized :}
22
23LDADD.t_dlerror-false=	-Wl,-rpath,/var/nonexistent/lib
24LDADD.t_dlvsym=		-Wl,-rpath,${TESTSDIR}/h_helper_symver_dso2
25LDADD.t_ifunc=		-Wl,-rpath,${TESTSDIR} -lutil
26DPADD.t_ifunc=		${LIBUTIL}
27
28TESTS_SH+=		t_df_1_noopen t_dl_symver t_thread_local_dtor
29
30BINDIR=			${TESTSDIR}
31PROGS+=			h_df_1_noopen1
32SRCS.h_df_1_noopen1=	h_df_1_noopen.c
33
34PROGS+=			h_df_1_noopen2
35SRCS.h_df_1_noopen2=	h_df_1_noopen.c
36LDADD.h_df_1_noopen2=	-lpthread
37
38PROGS+=			h_thread_local_dtor
39LDADD.h_thread_local_dtor=	-Wl,-rpath,${TESTSDIR}  -lpthread
40
41PROGS+=			h_ifunc
42SRCS.h_ifunc=		h_ifunc.c
43IFUNCDIR!=		cd ${.CURDIR}/helper_ifunc_dso && ${PRINTOBJDIR}
44LDADD.h_ifunc=		-Wl,-rpath,${TESTSDIR} -L${IFUNCDIR} -lh_helper_ifunc_dso
45
46PROGS+=			h_locking
47SRCS.h_locking=		h_locking.c
48LDADD.h_locking=	-lpthread -Wl,--export-dynamic -Wl,-rpath,${TESTSDIR}
49
50PROGS+=			h_dl_symver_v0
51SRCS.h_dl_symver_v0=	h_dl_symver.c
52V0ODIR!=		cd ${.CURDIR}/helper_symver_dso0 && ${PRINTOBJDIR}
53LDADD.h_dl_symver_v0=	-L${V0ODIR} -lh_helper_symver_dso
54
55PROGS+=			h_dl_symver_v1
56SRCS.h_dl_symver_v1=	h_dl_symver.c
57V1ODIR!=		cd ${.CURDIR}/helper_symver_dso1 && ${PRINTOBJDIR}
58LDADD.h_dl_symver_v1=	-L${V1ODIR} -lh_helper_symver_dso
59
60PROGS+=			h_dl_symver_v2
61SRCS.h_dl_symver_v2=	h_dl_symver.c
62V2ODIR!=		cd ${.CURDIR}/helper_symver_dso2 && ${PRINTOBJDIR}
63LDADD.h_dl_symver_v2=	-L${V2ODIR} -lh_helper_symver_dso
64
65.include <bsd.test.mk>
66
67.else
68
69NOPROG=	# defined
70.include <bsd.prog.mk>
71
72.endif
73