Home | History | Annotate | Line # | Download | only in ld.elf_so
Makefile revision 1.26
      1  1.26  riastrad # $NetBSD: Makefile,v 1.26 2025/04/27 00:11:57 riastradh Exp $
      2   1.1     pooka #
      3   1.1     pooka 
      4   1.3     skrll NOMAN=		# defined
      5   1.3     skrll 
      6   1.1     pooka .include <bsd.own.mk>
      7   1.1     pooka 
      8   1.6       mrg .if ${MKPIC} != "no"
      9   1.6       mrg 
     10  1.26  riastrad SUBDIR+=	helper_dso1
     11  1.26  riastrad SUBDIR+=	helper_dso3
     12  1.26  riastrad SUBDIR+=	.WAIT
     13  1.26  riastrad SUBDIR+=	helper_dso2
     14  1.26  riastrad SUBDIR+=	.WAIT
     15  1.26  riastrad SUBDIR+=	helper_ifunc_dso
     16  1.26  riastrad SUBDIR+=	helper_symver_dso0
     17  1.26  riastrad SUBDIR+=	.WAIT
     18  1.26  riastrad SUBDIR+=	helper_symver_dso1
     19  1.26  riastrad SUBDIR+=	.WAIT
     20  1.26  riastrad SUBDIR+=	helper_symver_dso2
     21  1.26  riastrad SUBDIR+=	.WAIT
     22  1.26  riastrad SUBDIR+=	data
     23   1.4     joerg 
     24  1.16  riastrad SUBDIR+=	helper_def_dynamic
     25  1.13  riastrad SUBDIR+=	helper_def_static
     26  1.18  riastrad SUBDIR+=	helper_onlydef
     27  1.14  riastrad SUBDIR+=	.WAIT
     28  1.17  riastrad SUBDIR+=	helper_abuse_dynamic
     29  1.17  riastrad SUBDIR+=	helper_abuse_static
     30  1.19  riastrad SUBDIR+=	helper_onlyctor_dynamic
     31  1.18  riastrad SUBDIR+=	helper_onlyuse_dynamic
     32  1.18  riastrad SUBDIR+=	helper_onlyuse_static
     33  1.16  riastrad SUBDIR+=	helper_use_dynamic
     34  1.13  riastrad SUBDIR+=	helper_use_static
     35  1.13  riastrad 
     36   1.1     pooka TESTSDIR=	${TESTSBASE}/libexec/ld.elf_so
     37   1.1     pooka 
     38  1.26  riastrad TESTS_C+=	t_dlerror-cleared
     39  1.26  riastrad TESTS_C+=	t_dlerror-false
     40  1.26  riastrad TESTS_C+=	t_dlinfo
     41  1.26  riastrad TESTS_C+=	t_dlvsym
     42  1.26  riastrad TESTS_C+=	t_hash
     43  1.26  riastrad TESTS_C+=	t_ifunc
     44  1.22  riastrad TESTS_C+=	t_ifunc_norelro
     45  1.22  riastrad TESTS_C+=	t_ifunc_norelro_now
     46  1.26  riastrad TESTS_C+=	t_ifunc_now
     47  1.11     kamil TESTS_C+=	t_rtld_r_debug
     48  1.25  riastrad TESTS_C+=	t_rtld_r_debug_nopie
     49  1.13  riastrad TESTS_C+=	t_tls_extern
     50  1.21  riastrad 
     51  1.22  riastrad SRCS.t_ifunc_now=		t_ifunc.c
     52  1.22  riastrad SRCS.t_ifunc_norelro=		t_ifunc.c
     53  1.22  riastrad SRCS.t_ifunc_norelro_now=	t_ifunc.c
     54  1.22  riastrad 
     55  1.23  riastrad LDADD.t_ifunc+=			${${MKRELRO} != "no":?-Wl,-z,relro:}
     56  1.23  riastrad LDADD.t_ifunc_now+=		${${MKRELRO} != "no":?-Wl,-z,relro:} -Wl,-z,now
     57  1.24  riastrad LDADD.t_ifunc_norelro+=		${${MKRELRO} != "no":?-Wl,-z,norelro:}
     58  1.24  riastrad LDADD.t_ifunc_norelro_now+=	${${MKRELRO} != "no":?-Wl,-z,norelro:} -Wl,-z,now
     59  1.22  riastrad 
     60  1.25  riastrad SRCS.t_rtld_r_debug_nopie=	t_rtld_r_debug.c
     61  1.25  riastrad 
     62  1.25  riastrad # If the port doesn't support PIE anyway, well, no big deal, we have
     63  1.25  riastrad # two copies of the same tiny test.
     64  1.25  riastrad LDADD.t_rtld_r_debug_nopie+=	-Wl,-no-pie
     65  1.25  riastrad 
     66  1.21  riastrad .PATH:	${NETBSDSRCDIR}/libexec/ld.elf_so
     67  1.21  riastrad SRCS.t_hash+=	t_hash.c
     68  1.21  riastrad SRCS.t_hash+=	hash.c
     69  1.21  riastrad CPPFLAGS.t_hash.c+=	-I${NETBSDSRCDIR}/libexec/ld.elf_so
     70  1.11     kamil 
     71  1.20     lukem COPTS.t_rtld_r_debug.c += ${CC_WNO_MAYBE_UNINITIALIZED}
     72   1.2     skrll 
     73   1.2     skrll LDADD.t_dlerror-false=	-Wl,-rpath,/var/nonexistent/lib
     74   1.5    nonaka LDADD.t_dlvsym=		-Wl,-rpath,${TESTSDIR}/h_helper_symver_dso2
     75  1.22  riastrad .for t in t_ifunc t_ifunc_now t_ifunc_norelro t_ifunc_norelro_now
     76  1.22  riastrad LDADD.${t}+=		-Wl,-rpath,${TESTSDIR} -lutil
     77  1.22  riastrad DPADD.${t}+=		${LIBUTIL}
     78  1.22  riastrad .endfor
     79  1.13  riastrad LDADD.t_tls_extern+=	-Wl,-rpath,${TESTSDIR}
     80   1.1     pooka 
     81  1.26  riastrad TESTS_SH+=		t_df_1_noopen
     82  1.26  riastrad TESTS_SH+=		t_dl_symver
     83  1.26  riastrad TESTS_SH+=		t_thread_local_dtor
     84   1.3     skrll 
     85   1.3     skrll BINDIR=			${TESTSDIR}
     86   1.3     skrll PROGS+=			h_df_1_noopen1
     87   1.3     skrll SRCS.h_df_1_noopen1=	h_df_1_noopen.c
     88   1.3     skrll 
     89   1.3     skrll PROGS+=			h_df_1_noopen2
     90   1.3     skrll SRCS.h_df_1_noopen2=	h_df_1_noopen.c
     91   1.3     skrll LDADD.h_df_1_noopen2=	-lpthread
     92   1.3     skrll 
     93   1.9     joerg PROGS+=			h_thread_local_dtor
     94   1.9     joerg LDADD.h_thread_local_dtor=	-Wl,-rpath,${TESTSDIR}  -lpthread
     95   1.9     joerg 
     96   1.8     joerg PROGS+=			h_ifunc
     97   1.8     joerg SRCS.h_ifunc=		h_ifunc.c
     98   1.8     joerg IFUNCDIR!=		cd ${.CURDIR}/helper_ifunc_dso && ${PRINTOBJDIR}
     99   1.8     joerg LDADD.h_ifunc=		-Wl,-rpath,${TESTSDIR} -L${IFUNCDIR} -lh_helper_ifunc_dso
    100   1.8     joerg 
    101   1.4     joerg PROGS+=			h_locking
    102   1.4     joerg SRCS.h_locking=		h_locking.c
    103   1.4     joerg LDADD.h_locking=	-lpthread -Wl,--export-dynamic -Wl,-rpath,${TESTSDIR}
    104   1.4     joerg 
    105   1.5    nonaka PROGS+=			h_dl_symver_v0
    106   1.5    nonaka SRCS.h_dl_symver_v0=	h_dl_symver.c
    107   1.5    nonaka V0ODIR!=		cd ${.CURDIR}/helper_symver_dso0 && ${PRINTOBJDIR}
    108   1.5    nonaka LDADD.h_dl_symver_v0=	-L${V0ODIR} -lh_helper_symver_dso
    109   1.5    nonaka 
    110   1.5    nonaka PROGS+=			h_dl_symver_v1
    111   1.5    nonaka SRCS.h_dl_symver_v1=	h_dl_symver.c
    112   1.5    nonaka V1ODIR!=		cd ${.CURDIR}/helper_symver_dso1 && ${PRINTOBJDIR}
    113   1.5    nonaka LDADD.h_dl_symver_v1=	-L${V1ODIR} -lh_helper_symver_dso
    114   1.5    nonaka 
    115   1.5    nonaka PROGS+=			h_dl_symver_v2
    116   1.5    nonaka SRCS.h_dl_symver_v2=	h_dl_symver.c
    117   1.5    nonaka V2ODIR!=		cd ${.CURDIR}/helper_symver_dso2 && ${PRINTOBJDIR}
    118   1.5    nonaka LDADD.h_dl_symver_v2=	-L${V2ODIR} -lh_helper_symver_dso
    119   1.5    nonaka 
    120   1.7       mrg .include <bsd.test.mk>
    121   1.7       mrg 
    122   1.7       mrg .else
    123   1.7       mrg 
    124   1.7       mrg NOPROG=	# defined
    125   1.7       mrg .include <bsd.prog.mk>
    126   1.7       mrg 
    127   1.6       mrg .endif
    128