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