public inbox for libc-alpha@sourceware.org
 help / color / mirror / Atom feed
* [PATCH v4 0/2] Add and use link-test-modules-rpath-link
@ 2021-12-13 17:55 H.J. Lu
  2021-12-13 17:55 ` [PATCH v4 1/2] elf: Sort tests and modules-names H.J. Lu
  2021-12-13 17:55 ` [PATCH v4 2/2] Add and use link-test-modules-rpath-link [BZ #28455] H.J. Lu
  0 siblings, 2 replies; 4+ messages in thread
From: H.J. Lu @ 2021-12-13 17:55 UTC (permalink / raw)
  To: libc-alpha

1. Sort elf tests and modules-names to reduce future conflicts.
2. Add and use link-test-modules-rpath-link.

H.J. Lu (2):
  elf: Sort tests and modules-names
  Add and use link-test-modules-rpath-link [BZ #28455]

 Makeconfig           |   2 +
 Makerules            |   1 +
 elf/Makefile         | 525 ++++++++++++++++++++++++++++++++-----------
 elf/tst-global2.c    |  32 +++
 elf/tst-globalmod2.c |  41 ++++
 5 files changed, 471 insertions(+), 130 deletions(-)
 create mode 100644 elf/tst-global2.c
 create mode 100644 elf/tst-globalmod2.c

-- 
2.33.1


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH v4 1/2] elf: Sort tests and modules-names
  2021-12-13 17:55 [PATCH v4 0/2] Add and use link-test-modules-rpath-link H.J. Lu
@ 2021-12-13 17:55 ` H.J. Lu
  2022-01-03 23:36   ` H.J. Lu
  2021-12-13 17:55 ` [PATCH v4 2/2] Add and use link-test-modules-rpath-link [BZ #28455] H.J. Lu
  1 sibling, 1 reply; 4+ messages in thread
From: H.J. Lu @ 2021-12-13 17:55 UTC (permalink / raw)
  To: libc-alpha

Sort tests and modules-names to reduce future conflicts.
---
 elf/Makefile | 518 ++++++++++++++++++++++++++++++++++++++-------------
 1 file changed, 388 insertions(+), 130 deletions(-)

diff --git a/elf/Makefile b/elf/Makefile
index fe42caeb0e..10556c3a7e 100644
--- a/elf/Makefile
+++ b/elf/Makefile
@@ -199,40 +199,133 @@ static-dlopen-environment = \
 tst-tls9-static-ENV = $(static-dlopen-environment)
 tst-single_threaded-static-dlopen-ENV = $(static-dlopen-environment)
 
-tests += restest1 preloadtest loadfail multiload origtest resolvfail \
-	 constload1 order noload filter \
-	 reldep reldep2 reldep3 reldep4 nodelete nodelete2 \
-	 nodlopen nodlopen2 lateglobal initfirst global \
-	 restest2 next dblload dblunload reldep5 reldep6 reldep7 reldep8 \
-	 tst-tls4 tst-tls5 \
-	 tst-tls10 tst-tls11 tst-tls12 tst-tls13 tst-tls14 tst-tls15 \
-	 tst-tls16 tst-tls17 tst-tls18 tst-tls19 tst-tls-dlinfo \
-	 tst-align tst-align2 tst-align3 \
-	 tst-dlmodcount tst-dlopenrpath tst-deep1 \
-	 tst-dlmopen1 tst-dlmopen3 tst-dlmopen4 \
-	 unload3 unload4 unload5 unload6 unload7 unload8 tst-global1 order2 \
-	 tst-audit1 tst-audit2 tst-audit8 tst-audit9 \
-	 tst-addr1 tst-thrlock \
-	 tst-unique1 tst-unique2 $(if $(CXX),tst-unique3 tst-unique4 \
-	 tst-nodelete tst-dlopen-nodelete-reloc) \
-	 tst-initorder tst-initorder2 tst-relsort1 tst-null-argv \
-	 tst-tlsalign tst-tlsalign-extern tst-nodelete-opened \
-	 tst-nodelete2 tst-audit11 tst-audit12 tst-dlsym-error tst-noload \
-	 tst-latepthread tst-tls-manydynamic tst-nodelete-dlclose \
-	 tst-debug1 tst-main1 tst-absolute-sym tst-absolute-zero tst-big-note \
-	 tst-unwind-ctor tst-unwind-main tst-audit13 \
-	 tst-sonamemove-link tst-sonamemove-dlopen tst-dlopen-tlsmodid \
-	 tst-dlopen-self tst-auditmany tst-initfinilazyfail tst-dlopenfail \
-	 tst-dlopenfail-2 \
-	 tst-filterobj tst-filterobj-dlopen tst-auxobj tst-auxobj-dlopen \
-	 tst-single_threaded tst-single_threaded-pthread \
-	 tst-tls-ie tst-tls-ie-dlmopen argv0test \
-	 tst-glibc-hwcaps tst-glibc-hwcaps-prepend tst-glibc-hwcaps-mask \
-	 tst-tls20 tst-tls21 tst-dlmopen-dlerror tst-dlmopen-gethostbyname \
-	 tst-dl-is_dso tst-ro-dynamic \
-	 tst-audit18 \
-	 tst-rtld-run-static \
+tests += \
+  argv0test \
+  constload1 \
+  dblload \
+  dblunload \
+  filter \
+  global \
+  initfirst \
+  lateglobal \
+  loadfail \
+  multiload \
+  next \
+  nodelete \
+  nodelete2 \
+  nodlopen \
+  nodlopen2 \
+  noload \
+  order \
+  order2 \
+  origtest \
+  preloadtest \
+  reldep \
+  reldep2 \
+  reldep3 \
+  reldep4 \
+  reldep5 \
+  reldep6 \
+  reldep7 \
+  reldep8 \
+  resolvfail \
+  restest1 \
+  restest2 \
+  tst-absolute-sym \
+  tst-absolute-zero \
+  tst-addr1 \
+  tst-align \
+  tst-align2 \
+  tst-align3 \
+  tst-audit1 \
+  tst-audit11 \
+  tst-audit12 \
+  tst-audit13 \
+  tst-audit18 \
+  tst-audit2 \
+  tst-audit8 \
+  tst-audit9 \
+  tst-auditmany \
+  tst-auxobj \
+  tst-auxobj-dlopen \
+  tst-big-note \
+  tst-debug1 \
+  tst-deep1 \
+  tst-dl-is_dso \
+  tst-dlmodcount \
+  tst-dlmopen1 \
+  tst-dlmopen3 \
+  tst-dlmopen4 \
+  tst-dlmopen-dlerror \
+  tst-dlmopen-gethostbyname \
+  tst-dlopenfail \
+  tst-dlopenfail-2 \
+  tst-dlopenrpath \
+  tst-dlopen-self \
+  tst-dlopen-tlsmodid \
+  tst-dlsym-error \
+  tst-filterobj \
+  tst-filterobj-dlopen \
+  tst-glibc-hwcaps \
+  tst-glibc-hwcaps-mask \
+  tst-glibc-hwcaps-prepend \
+  tst-global1 \
+  tst-initfinilazyfail \
+  tst-initorder \
+  tst-initorder2 \
+  tst-latepthread \
+  tst-main1 \
+  tst-nodelete2 \
+  tst-nodelete-dlclose \
+  tst-nodelete-opened \
+  tst-noload \
+  tst-null-argv \
+  tst-relsort1 \
+  tst-ro-dynamic \
+  tst-rtld-run-static \
+  tst-single_threaded \
+  tst-single_threaded-pthread \
+  tst-sonamemove-dlopen \
+  tst-sonamemove-link \
+  tst-thrlock \
+  tst-tls10 \
+  tst-tls11 \
+  tst-tls12 \
+  tst-tls13 \
+  tst-tls14 \
+  tst-tls15 \
+  tst-tls16 \
+  tst-tls17 \
+  tst-tls18 \
+  tst-tls19 \
+  tst-tls20 \
+  tst-tls21 \
+  tst-tls4 \
+  tst-tls5 \
+  tst-tlsalign \
+  tst-tlsalign-extern \
+  tst-tls-dlinfo \
+  tst-tls-ie \
+  tst-tls-ie-dlmopen \
+  tst-tls-manydynamic \
+  tst-unique1 \
+  tst-unique2 \
+  tst-unwind-ctor \
+  tst-unwind-main \
+  unload3 \
+  unload4 \
+  unload5 \
+  unload6 \
+  unload7 \
+  unload8 \
 #	 reldep9
+tests-cxx = \
+  tst-dlopen-nodelete-reloc \
+  tst-nodelete \
+  tst-unique3 \
+  tst-unique4 \
+
+tests += $(if $(CXX),$(tests-cxx))
 tests-internal += loadtest unload unload2 circleload1 \
 	 neededtest neededtest2 neededtest3 neededtest4 \
 	 tst-tls3 tst-tls6 tst-tls7 tst-tls8 tst-dlmopen2 \
@@ -280,103 +373,268 @@ tst-tls-many-dynamic-modules-dep-bad = \
 extra-test-objs += $(tlsmod17a-modules:=.os) $(tlsmod18a-modules:=.os) \
 		   tst-tlsalign-vars.o
 test-extras += tst-tlsmod17a tst-tlsmod18a tst-tlsalign-vars
-modules-names = testobj1 testobj2 testobj3 testobj4 testobj5 testobj6 \
-		testobj1_1 failobj constload2 constload3 unloadmod \
-		dep1 dep2 dep3 dep4 vismod1 vismod2 vismod3 \
-		nodelmod1 nodelmod2 nodelmod3 nodelmod4 \
-		nodel2mod1 nodel2mod2 nodel2mod3 \
-		nodlopenmod nodlopenmod2 filtmod1 filtmod2 \
-		reldepmod1 reldepmod2 reldepmod3 reldepmod4 nextmod1 nextmod2 \
-		reldep4mod1 reldep4mod2 reldep4mod3 reldep4mod4 \
-		neededobj1 neededobj2 neededobj3 neededobj4 \
-		neededobj5 neededobj6 firstobj globalmod1 \
-		unload2mod unload2dep ltglobmod1 ltglobmod2 pathoptobj \
-		dblloadmod1 dblloadmod2 dblloadmod3 reldepmod5 reldepmod6 \
-		reldep6mod0 reldep6mod1 reldep6mod2 reldep6mod3 reldep6mod4 \
-		reldep7mod1 reldep7mod2 \
-		tst-tlsmod1 tst-tlsmod2 tst-tlsmod3 tst-tlsmod4 \
-		tst-tlsmod5 tst-tlsmod6 tst-tlsmod7 tst-tlsmod8 \
-		tst-tlsmod9 tst-tlsmod10 tst-tlsmod11 tst-tlsmod12 \
-		tst-tlsmod13 tst-tlsmod13a tst-tlsmod14a tst-tlsmod14b \
-		tst-tlsmod15a tst-tlsmod15b tst-tlsmod16a tst-tlsmod16b \
-		$(tlsmod17a-modules) tst-tlsmod17b $(tlsmod18a-modules) \
-		tst-tls19mod1 tst-tls19mod2 tst-tls19mod3 \
-		circlemod1 circlemod1a circlemod2 circlemod2a \
-		circlemod3 circlemod3a \
-		reldep8mod1 reldep8mod2 reldep8mod3 \
-		reldep9mod1 reldep9mod2 reldep9mod3 \
-		tst-alignmod tst-alignmod2 tst-alignmod3 \
-		$(modules-execstack-$(have-z-execstack)) \
-		tst-dlopenrpathmod tst-deep1mod1 tst-deep1mod2 tst-deep1mod3 \
-		tst-dlmopen1mod tst-auditmod1 \
-		unload3mod1 unload3mod2 unload3mod3 unload3mod4 \
-		unload4mod1 unload4mod2 unload4mod3 unload4mod4 \
-		unload6mod1 unload6mod2 unload6mod3 \
-		unload7mod1 unload7mod2 \
-		unload8mod1 unload8mod1x unload8mod2 unload8mod3 \
-		order2mod1 order2mod2 order2mod3 order2mod4 \
-		tst-unique1mod1 tst-unique1mod2 \
-		tst-unique2mod1 tst-unique2mod2 \
-		tst-auditmod9a tst-auditmod9b \
-		$(if $(CXX),tst-unique3lib tst-unique3lib2 tst-unique4lib \
-		  tst-nodelete-uniquemod tst-nodelete-rtldmod \
-		  tst-nodelete-zmod \
-                  tst-dlopen-nodelete-reloc-mod1 \
-		  tst-dlopen-nodelete-reloc-mod2 \
-	          tst-dlopen-nodelete-reloc-mod3 \
-		  tst-dlopen-nodelete-reloc-mod4 \
-		  tst-dlopen-nodelete-reloc-mod5 \
-	          tst-dlopen-nodelete-reloc-mod6 \
-	          tst-dlopen-nodelete-reloc-mod7 \
-	          tst-dlopen-nodelete-reloc-mod8 \
-	          tst-dlopen-nodelete-reloc-mod9 \
-	          tst-dlopen-nodelete-reloc-mod10 \
-	          tst-dlopen-nodelete-reloc-mod11 \
-	          tst-dlopen-nodelete-reloc-mod12 \
-	          tst-dlopen-nodelete-reloc-mod13 \
-	          tst-dlopen-nodelete-reloc-mod14 \
-	          tst-dlopen-nodelete-reloc-mod15 \
-	          tst-dlopen-nodelete-reloc-mod16 \
-		  tst-dlopen-nodelete-reloc-mod17) \
-		tst-initordera1 tst-initorderb1 \
-		tst-initordera2 tst-initorderb2 \
-		tst-initordera3 tst-initordera4 \
-		tst-initorder2a tst-initorder2b tst-initorder2c \
-		tst-initorder2d \
-		tst-relsort1mod1 tst-relsort1mod2 tst-array2dep \
-		tst-array5dep tst-null-argv-lib \
-		tst-tlsalign-lib tst-nodelete-opened-lib tst-nodelete2mod \
-		tst-audit11mod1 tst-audit11mod2 tst-auditmod11 \
-		tst-audit12mod1 tst-audit12mod2 tst-audit12mod3 tst-auditmod12 \
-		tst-latepthreadmod $(tst-tls-many-dynamic-modules) \
-		$(tst-tls-many-dynamic-modules-dep) \
-		$(tst-tls-many-dynamic-modules-dep-bad) \
-		tst-nodelete-dlclose-dso tst-nodelete-dlclose-plugin \
-		tst-main1mod tst-absolute-sym-lib \
-		tst-absolute-zero-lib tst-big-note-lib tst-unwind-ctor-lib \
-		tst-audit13mod1 tst-sonamemove-linkmod1 \
-		tst-sonamemove-runmod1 tst-sonamemove-runmod2 \
-		tst-auditmanymod1 tst-auditmanymod2 tst-auditmanymod3 \
-		tst-auditmanymod4 tst-auditmanymod5 tst-auditmanymod6 \
-		tst-auditmanymod7 tst-auditmanymod8 tst-auditmanymod9 \
-		tst-initlazyfailmod tst-finilazyfailmod \
-		tst-dlopenfailmod1 tst-dlopenfaillinkmod tst-dlopenfailmod2 \
-		tst-dlopenfailmod3 tst-dlopenfailnodelmod tst-ldconfig-ld-mod \
-		tst-filterobj-flt tst-filterobj-aux tst-filterobj-filtee \
-		tst-auditlogmod-1 tst-auditlogmod-2 tst-auditlogmod-3 \
-		tst-single_threaded-mod1 tst-single_threaded-mod2 \
-		tst-single_threaded-mod3 tst-single_threaded-mod4 \
-		tst-tls-ie-mod0 tst-tls-ie-mod1 tst-tls-ie-mod2 \
-		tst-tls-ie-mod3 tst-tls-ie-mod4 tst-tls-ie-mod5 \
-		tst-tls-ie-mod6 libmarkermod1-1 libmarkermod1-2 libmarkermod1-3 \
-		libmarkermod2-1 libmarkermod2-2 \
-		libmarkermod3-1 libmarkermod3-2 libmarkermod3-3 \
-		libmarkermod4-1 libmarkermod4-2 libmarkermod4-3 libmarkermod4-4 \
-		tst-tls20mod-bad tst-tls21mod tst-dlmopen-dlerror-mod \
-		tst-auxvalmod \
-		tst-dlmopen-gethostbyname-mod tst-ro-dynamic-mod \
-		tst-auditmod18 \
-		tst-audit18mod \
+modules-names = \
+  circlemod1 \
+  circlemod1a \
+  circlemod2 \
+  circlemod2a \
+  circlemod3 \
+  circlemod3a \
+  constload2 \
+  constload3 \
+  dblloadmod1 \
+  dblloadmod2 \
+  dblloadmod3 \
+  dep1 \
+  dep2 \
+  dep3 \
+  dep4 \
+  failobj \
+  filtmod1 \
+  filtmod2 \
+  firstobj \
+  globalmod1 \
+  libmarkermod1-1 \
+  libmarkermod1-2 \
+  libmarkermod1-3 \
+  libmarkermod2-1 \
+  libmarkermod2-2 \
+  libmarkermod3-1 \
+  libmarkermod3-2 \
+  libmarkermod3-3 \
+  libmarkermod4-1 \
+  libmarkermod4-2 \
+  libmarkermod4-3 \
+  libmarkermod4-4 \
+  ltglobmod1 \
+  ltglobmod2 \
+  neededobj1 \
+  neededobj2 \
+  neededobj3 \
+  neededobj4 \
+  neededobj5 \
+  neededobj6 \
+  nextmod1 \
+  nextmod2 \
+  nodel2mod1 \
+  nodel2mod2 \
+  nodel2mod3 \
+  nodelmod1 \
+  nodelmod2 \
+  nodelmod3 \
+  nodelmod4 \
+  nodlopenmod \
+  nodlopenmod2 \
+  order2mod1 \
+  order2mod2 \
+  order2mod3 \
+  order2mod4 \
+  pathoptobj \
+  reldep4mod1 \
+  reldep4mod2 \
+  reldep4mod3 \
+  reldep4mod4 \
+  reldep6mod0 \
+  reldep6mod1 \
+  reldep6mod2 \
+  reldep6mod3 \
+  reldep6mod4 \
+  reldep7mod1 \
+  reldep7mod2 \
+  reldep8mod1 \
+  reldep8mod2 \
+  reldep8mod3 \
+  reldep9mod1 \
+  reldep9mod2 \
+  reldep9mod3 \
+  reldepmod1 \
+  reldepmod2 \
+  reldepmod3 \
+  reldepmod4 \
+  reldepmod5 \
+  reldepmod6 \
+  testobj1 \
+  testobj1_1 \
+  testobj2 \
+  testobj3 \
+  testobj4 \
+  testobj5 \
+  testobj6 \
+  tst-absolute-sym-lib \
+  tst-absolute-zero-lib \
+  tst-alignmod \
+  tst-alignmod2 \
+  tst-alignmod3 \
+  tst-array2dep \
+  tst-array5dep \
+  tst-audit11mod1 \
+  tst-audit11mod2 \
+  tst-audit12mod1 \
+  tst-audit12mod2 \
+  tst-audit12mod3 \
+  tst-audit13mod1 \
+  tst-audit18mod \
+  tst-auditlogmod-1 \
+  tst-auditlogmod-2 \
+  tst-auditlogmod-3 \
+  tst-auditmanymod1 \
+  tst-auditmanymod2 \
+  tst-auditmanymod3 \
+  tst-auditmanymod4 \
+  tst-auditmanymod5 \
+  tst-auditmanymod6 \
+  tst-auditmanymod7 \
+  tst-auditmanymod8 \
+  tst-auditmanymod9 \
+  tst-auditmod1 \
+  tst-auditmod11 \
+  tst-auditmod12 \
+  tst-auditmod18 \
+  tst-auditmod9a \
+  tst-auditmod9b \
+  tst-auxvalmod \
+  tst-big-note-lib \
+  tst-deep1mod1 \
+  tst-deep1mod2 \
+  tst-deep1mod3 \
+  tst-dlmopen1mod \
+  tst-dlmopen-dlerror-mod \
+  tst-dlmopen-gethostbyname-mod \
+  tst-dlopenfaillinkmod \
+  tst-dlopenfailmod1 \
+  tst-dlopenfailmod2 \
+  tst-dlopenfailmod3 \
+  tst-dlopenfailnodelmod \
+  tst-dlopenrpathmod \
+  tst-filterobj-aux \
+  tst-filterobj-filtee \
+  tst-filterobj-flt \
+  tst-finilazyfailmod \
+  tst-initlazyfailmod \
+  tst-initorder2a \
+  tst-initorder2b \
+  tst-initorder2c \
+  tst-initorder2d \
+  tst-initordera1 \
+  tst-initordera2 \
+  tst-initordera3 \
+  tst-initordera4 \
+  tst-initorderb1 \
+  tst-initorderb2 \
+  tst-latepthreadmod \
+  tst-ldconfig-ld-mod \
+  tst-main1mod \
+  tst-nodelete2mod \
+  tst-nodelete-dlclose-dso \
+  tst-nodelete-dlclose-plugin \
+  tst-nodelete-opened-lib \
+  tst-null-argv-lib \
+  tst-relsort1mod1 \
+  tst-relsort1mod2 \
+  tst-ro-dynamic-mod \
+  tst-single_threaded-mod1 \
+  tst-single_threaded-mod2 \
+  tst-single_threaded-mod3 \
+  tst-single_threaded-mod4 \
+  tst-sonamemove-linkmod1 \
+  tst-sonamemove-runmod1 \
+  tst-sonamemove-runmod2 \
+  tst-tls19mod1 \
+  tst-tls19mod2 \
+  tst-tls19mod3 \
+  tst-tls20mod-bad \
+  tst-tls21mod \
+  tst-tlsalign-lib \
+  tst-tls-ie-mod0 \
+  tst-tls-ie-mod1 \
+  tst-tls-ie-mod2 \
+  tst-tls-ie-mod3 \
+  tst-tls-ie-mod4 \
+  tst-tls-ie-mod5 \
+  tst-tls-ie-mod6 \
+  tst-tlsmod1 \
+  tst-tlsmod10 \
+  tst-tlsmod11 \
+  tst-tlsmod12 \
+  tst-tlsmod13 \
+  tst-tlsmod13a \
+  tst-tlsmod14a \
+  tst-tlsmod14b \
+  tst-tlsmod15a \
+  tst-tlsmod15b \
+  tst-tlsmod16a \
+  tst-tlsmod16b \
+  tst-tlsmod17b \
+  tst-tlsmod2 \
+  tst-tlsmod3 \
+  tst-tlsmod4 \
+  tst-tlsmod5 \
+  tst-tlsmod6 \
+  tst-tlsmod7 \
+  tst-tlsmod8 \
+  tst-tlsmod9 \
+  tst-unique1mod1 \
+  tst-unique1mod2 \
+  tst-unique2mod1 \
+  tst-unique2mod2 \
+  tst-unwind-ctor-lib \
+  unload2dep \
+  unload2mod \
+  unload3mod1 \
+  unload3mod2 \
+  unload3mod3 \
+  unload3mod4 \
+  unload4mod1 \
+  unload4mod2 \
+  unload4mod3 \
+  unload4mod4 \
+  unload6mod1 \
+  unload6mod2 \
+  unload6mod3 \
+  unload7mod1 \
+  unload7mod2 \
+  unload8mod1 \
+  unload8mod1x \
+  unload8mod2 \
+  unload8mod3 \
+  unloadmod \
+  vismod1 \
+  vismod2 \
+  vismod3 \
+
+modules-names-cxx = \
+  tst-dlopen-nodelete-reloc-mod1 \
+  tst-dlopen-nodelete-reloc-mod10 \
+  tst-dlopen-nodelete-reloc-mod11 \
+  tst-dlopen-nodelete-reloc-mod12 \
+  tst-dlopen-nodelete-reloc-mod13 \
+  tst-dlopen-nodelete-reloc-mod14 \
+  tst-dlopen-nodelete-reloc-mod15 \
+  tst-dlopen-nodelete-reloc-mod16 \
+  tst-dlopen-nodelete-reloc-mod17 \
+  tst-dlopen-nodelete-reloc-mod2 \
+  tst-dlopen-nodelete-reloc-mod3 \
+  tst-dlopen-nodelete-reloc-mod4 \
+  tst-dlopen-nodelete-reloc-mod5 \
+  tst-dlopen-nodelete-reloc-mod6 \
+  tst-dlopen-nodelete-reloc-mod7 \
+  tst-dlopen-nodelete-reloc-mod8 \
+  tst-dlopen-nodelete-reloc-mod9 \
+  tst-nodelete-rtldmod \
+  tst-nodelete-uniquemod \
+  tst-nodelete-zmod \
+  tst-unique3lib \
+  tst-unique3lib2 \
+  tst-unique4lib \
+
+modules-names += \
+  $(if $(CXX),$(modules-names-cxx)) \
+  $(modules-execstack-$(have-z-execstack)) \
+  $(tst-tls-many-dynamic-modules) \
+  $(tst-tls-many-dynamic-modules-dep) \
+  $(tst-tls-many-dynamic-modules-dep-bad) \
+  $(tlsmod17a-modules) \
+  $(tlsmod18a-modules) \
 
 # Most modules build with _ISOMAC defined, but those filtered out
 # depend on internal headers.
-- 
2.33.1


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH v4 2/2] Add and use link-test-modules-rpath-link [BZ #28455]
  2021-12-13 17:55 [PATCH v4 0/2] Add and use link-test-modules-rpath-link H.J. Lu
  2021-12-13 17:55 ` [PATCH v4 1/2] elf: Sort tests and modules-names H.J. Lu
@ 2021-12-13 17:55 ` H.J. Lu
  1 sibling, 0 replies; 4+ messages in thread
From: H.J. Lu @ 2021-12-13 17:55 UTC (permalink / raw)
  To: libc-alpha

DT_RUNPATH is only used to find the immediate dependencies of the
executable or shared object containing the DT_RUNPATH entry:

1. Define link-test-modules-rpath-link if $(build-hardcoded-path-in-tests)
is yes.
2. Use $(link-test-modules-rpath-link) in build-module-helper so that
test modules can dlopen modules with DT_RUNPATH.
3. Add a test to show why link-test-modules-rpath-link is needed.

This partially fixes BZ #28455.
---
 Makeconfig           |  2 ++
 Makerules            |  1 +
 elf/Makefile         |  7 +++++++
 elf/tst-global2.c    | 32 ++++++++++++++++++++++++++++++++
 elf/tst-globalmod2.c | 41 +++++++++++++++++++++++++++++++++++++++++
 5 files changed, 83 insertions(+)
 create mode 100644 elf/tst-global2.c
 create mode 100644 elf/tst-globalmod2.c

diff --git a/Makeconfig b/Makeconfig
index 775bf12b65..618d3dc627 100644
--- a/Makeconfig
+++ b/Makeconfig
@@ -575,8 +575,10 @@ link-libc-rpath-link = -Wl,-rpath-link=$(rpath-link)
 # build-hardcoded-path-in-tests.
 ifeq (yes,$(build-hardcoded-path-in-tests))
 link-libc-tests-rpath-link = $(link-libc-rpath)
+link-test-modules-rpath-link = $(link-libc-rpath)
 else
 link-libc-tests-rpath-link = $(link-libc-rpath-link)
+link-test-modules-rpath-link =
 endif  # build-hardcoded-path-in-tests
 
 link-libc-between-gnulib = $(common-objpfx)libc.so$(libc.so-version) \
diff --git a/Makerules b/Makerules
index 8db0ca1296..7afba30039 100644
--- a/Makerules
+++ b/Makerules
@@ -591,6 +591,7 @@ $(LINK.o) -shared -static-libgcc $(sysdep-LDFLAGS) $(rtld-LDFLAGS) \
 	  $(if $($(@F)-no-z-defs)$(no-z-defs),,-Wl,-z,defs) \
 	  -B$(csu-objpfx) $(load-map-file) \
 	  $(LDFLAGS.so) $(LDFLAGS-$(@F:%.so=%).so) \
+	  $(link-test-modules-rpath-link) \
 	  -L$(subst :, -L,$(rpath-link)) -Wl,-rpath-link=$(rpath-link)
 endef
 
diff --git a/elf/Makefile b/elf/Makefile
index 10556c3a7e..5694bb4e3c 100644
--- a/elf/Makefile
+++ b/elf/Makefile
@@ -270,6 +270,7 @@ tests += \
   tst-glibc-hwcaps-mask \
   tst-glibc-hwcaps-prepend \
   tst-global1 \
+  tst-global2 \
   tst-initfinilazyfail \
   tst-initorder \
   tst-initorder2 \
@@ -510,6 +511,7 @@ modules-names = \
   tst-filterobj-filtee \
   tst-filterobj-flt \
   tst-finilazyfailmod \
+  tst-globalmod2 \
   tst-initlazyfailmod \
   tst-initorder2a \
   tst-initorder2b \
@@ -1583,6 +1585,11 @@ tst-audit8-ENV = LD_AUDIT=$(objpfx)tst-auditmod1.so
 
 $(objpfx)tst-global1.out: $(objpfx)testobj6.so $(objpfx)testobj2.so
 
+$(objpfx)tst-global2: $(objpfx)tst-globalmod2.so
+$(objpfx)tst-global2.out: $(objpfx)reldepmod1.so $(objpfx)reldepmod4.so
+LDFLAGS-tst-global2 = -Wl,--enable-new-dtags
+LDFLAGS-tst-globalmod2.so = -Wl,--enable-new-dtags
+
 $(objpfx)order2.out: $(objpfx)order2mod1.so $(objpfx)order2mod2.so
 $(objpfx)order2-cmp.out: $(objpfx)order2.out
 	(echo "12345" | cmp $< -) > $@; \
diff --git a/elf/tst-global2.c b/elf/tst-global2.c
new file mode 100644
index 0000000000..e929f526f4
--- /dev/null
+++ b/elf/tst-global2.c
@@ -0,0 +1,32 @@
+/* Test BZ #28455.
+   Copyright (C) 2021 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, see
+   <https://www.gnu.org/licenses/>.  */
+
+/* In glibc configured with --enable-hardcoded-path-in-tests, a test
+   program built with -Wl,--enable-new-dtags, which adds DT_RUNPATH,
+   instead of DT_RPATH, can call a function in a shared library, which
+   dlopens another shared library.  */
+
+extern int test (void);
+
+static int
+do_test (void)
+{
+  return test ();
+}
+
+#include <support/test-driver.c>
diff --git a/elf/tst-globalmod2.c b/elf/tst-globalmod2.c
new file mode 100644
index 0000000000..6fd70a72a8
--- /dev/null
+++ b/elf/tst-globalmod2.c
@@ -0,0 +1,41 @@
+/* Test BZ #28455.
+   Copyright (C) 2021 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, see
+   <https://www.gnu.org/licenses/>.  */
+
+/* In glibc configured with --enable-hardcoded-path-in-tests, a test
+   program built with -Wl,--enable-new-dtags, which adds DT_RUNPATH,
+   instead of DT_RPATH, can call a function in a shared library, which
+   dlopens another shared library.  */
+
+#include <dlfcn.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+extern int test (void);
+
+int
+test (void)
+{
+  (void) dlopen ("reldepmod4.so", RTLD_LAZY | RTLD_GLOBAL);
+  if (dlsym (RTLD_DEFAULT, "call_me") != NULL)
+    {
+      puts ("found \"call_me\"");
+      return EXIT_SUCCESS;
+    }
+  puts ("didn't find \"call_me\"");
+  return EXIT_FAILURE;
+}
-- 
2.33.1


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH v4 1/2] elf: Sort tests and modules-names
  2021-12-13 17:55 ` [PATCH v4 1/2] elf: Sort tests and modules-names H.J. Lu
@ 2022-01-03 23:36   ` H.J. Lu
  0 siblings, 0 replies; 4+ messages in thread
From: H.J. Lu @ 2022-01-03 23:36 UTC (permalink / raw)
  To: libc-alpha, Carlos O'Donell

On Mon, Dec 13, 2021 at 09:55:07AM -0800, H.J. Lu wrote:
> Sort tests and modules-names to reduce future conflicts.
> ---
>  elf/Makefile | 518 ++++++++++++++++++++++++++++++++++++++-------------
>  1 file changed, 388 insertions(+), 130 deletions(-)
> 
> diff --git a/elf/Makefile b/elf/Makefile
> index fe42caeb0e..10556c3a7e 100644
> --- a/elf/Makefile
> +++ b/elf/Makefile
> @@ -199,40 +199,133 @@ static-dlopen-environment = \
>  tst-tls9-static-ENV = $(static-dlopen-environment)
>  tst-single_threaded-static-dlopen-ENV = $(static-dlopen-environment)
>  
> -tests += restest1 preloadtest loadfail multiload origtest resolvfail \
> -	 constload1 order noload filter \
> -	 reldep reldep2 reldep3 reldep4 nodelete nodelete2 \
> -	 nodlopen nodlopen2 lateglobal initfirst global \
> -	 restest2 next dblload dblunload reldep5 reldep6 reldep7 reldep8 \
> -	 tst-tls4 tst-tls5 \
> -	 tst-tls10 tst-tls11 tst-tls12 tst-tls13 tst-tls14 tst-tls15 \
> -	 tst-tls16 tst-tls17 tst-tls18 tst-tls19 tst-tls-dlinfo \
> -	 tst-align tst-align2 tst-align3 \
> -	 tst-dlmodcount tst-dlopenrpath tst-deep1 \
> -	 tst-dlmopen1 tst-dlmopen3 tst-dlmopen4 \
> -	 unload3 unload4 unload5 unload6 unload7 unload8 tst-global1 order2 \
> -	 tst-audit1 tst-audit2 tst-audit8 tst-audit9 \
> -	 tst-addr1 tst-thrlock \
> -	 tst-unique1 tst-unique2 $(if $(CXX),tst-unique3 tst-unique4 \
> -	 tst-nodelete tst-dlopen-nodelete-reloc) \
> -	 tst-initorder tst-initorder2 tst-relsort1 tst-null-argv \
> -	 tst-tlsalign tst-tlsalign-extern tst-nodelete-opened \
> -	 tst-nodelete2 tst-audit11 tst-audit12 tst-dlsym-error tst-noload \
> -	 tst-latepthread tst-tls-manydynamic tst-nodelete-dlclose \
> -	 tst-debug1 tst-main1 tst-absolute-sym tst-absolute-zero tst-big-note \
> -	 tst-unwind-ctor tst-unwind-main tst-audit13 \
> -	 tst-sonamemove-link tst-sonamemove-dlopen tst-dlopen-tlsmodid \
> -	 tst-dlopen-self tst-auditmany tst-initfinilazyfail tst-dlopenfail \
> -	 tst-dlopenfail-2 \
> -	 tst-filterobj tst-filterobj-dlopen tst-auxobj tst-auxobj-dlopen \
> -	 tst-single_threaded tst-single_threaded-pthread \
> -	 tst-tls-ie tst-tls-ie-dlmopen argv0test \
> -	 tst-glibc-hwcaps tst-glibc-hwcaps-prepend tst-glibc-hwcaps-mask \
> -	 tst-tls20 tst-tls21 tst-dlmopen-dlerror tst-dlmopen-gethostbyname \
> -	 tst-dl-is_dso tst-ro-dynamic \
> -	 tst-audit18 \
> -	 tst-rtld-run-static \
> +tests += \
> +  argv0test \
> +  constload1 \
> +  dblload \
> +  dblunload \
> +  filter \
> +  global \
> +  initfirst \
> +  lateglobal \
> +  loadfail \
> +  multiload \
> +  next \
> +  nodelete \
> +  nodelete2 \
> +  nodlopen \
> +  nodlopen2 \
> +  noload \
> +  order \
> +  order2 \
> +  origtest \
> +  preloadtest \
> +  reldep \
> +  reldep2 \
> +  reldep3 \
> +  reldep4 \
> +  reldep5 \
> +  reldep6 \
> +  reldep7 \
> +  reldep8 \
> +  resolvfail \
> +  restest1 \
> +  restest2 \
> +  tst-absolute-sym \
> +  tst-absolute-zero \
> +  tst-addr1 \
> +  tst-align \
> +  tst-align2 \
> +  tst-align3 \
> +  tst-audit1 \
> +  tst-audit11 \
> +  tst-audit12 \
> +  tst-audit13 \
> +  tst-audit18 \
> +  tst-audit2 \
> +  tst-audit8 \
> +  tst-audit9 \
> +  tst-auditmany \
> +  tst-auxobj \
> +  tst-auxobj-dlopen \
> +  tst-big-note \
> +  tst-debug1 \
> +  tst-deep1 \
> +  tst-dl-is_dso \
> +  tst-dlmodcount \
> +  tst-dlmopen1 \
> +  tst-dlmopen3 \
> +  tst-dlmopen4 \
> +  tst-dlmopen-dlerror \
> +  tst-dlmopen-gethostbyname \
> +  tst-dlopenfail \
> +  tst-dlopenfail-2 \
> +  tst-dlopenrpath \
> +  tst-dlopen-self \
> +  tst-dlopen-tlsmodid \
> +  tst-dlsym-error \
> +  tst-filterobj \
> +  tst-filterobj-dlopen \
> +  tst-glibc-hwcaps \
> +  tst-glibc-hwcaps-mask \
> +  tst-glibc-hwcaps-prepend \
> +  tst-global1 \
> +  tst-initfinilazyfail \
> +  tst-initorder \
> +  tst-initorder2 \
> +  tst-latepthread \
> +  tst-main1 \
> +  tst-nodelete2 \
> +  tst-nodelete-dlclose \
> +  tst-nodelete-opened \
> +  tst-noload \
> +  tst-null-argv \
> +  tst-relsort1 \
> +  tst-ro-dynamic \
> +  tst-rtld-run-static \
> +  tst-single_threaded \
> +  tst-single_threaded-pthread \
> +  tst-sonamemove-dlopen \
> +  tst-sonamemove-link \
> +  tst-thrlock \
> +  tst-tls10 \
> +  tst-tls11 \
> +  tst-tls12 \
> +  tst-tls13 \
> +  tst-tls14 \
> +  tst-tls15 \
> +  tst-tls16 \
> +  tst-tls17 \
> +  tst-tls18 \
> +  tst-tls19 \
> +  tst-tls20 \
> +  tst-tls21 \
> +  tst-tls4 \
> +  tst-tls5 \
> +  tst-tlsalign \
> +  tst-tlsalign-extern \
> +  tst-tls-dlinfo \
> +  tst-tls-ie \
> +  tst-tls-ie-dlmopen \
> +  tst-tls-manydynamic \
> +  tst-unique1 \
> +  tst-unique2 \
> +  tst-unwind-ctor \
> +  tst-unwind-main \
> +  unload3 \
> +  unload4 \
> +  unload5 \
> +  unload6 \
> +  unload7 \
> +  unload8 \
>  #	 reldep9
> +tests-cxx = \
> +  tst-dlopen-nodelete-reloc \
> +  tst-nodelete \
> +  tst-unique3 \
> +  tst-unique4 \
> +
> +tests += $(if $(CXX),$(tests-cxx))
>  tests-internal += loadtest unload unload2 circleload1 \
>  	 neededtest neededtest2 neededtest3 neededtest4 \
>  	 tst-tls3 tst-tls6 tst-tls7 tst-tls8 tst-dlmopen2 \
> @@ -280,103 +373,268 @@ tst-tls-many-dynamic-modules-dep-bad = \
>  extra-test-objs += $(tlsmod17a-modules:=.os) $(tlsmod18a-modules:=.os) \
>  		   tst-tlsalign-vars.o
>  test-extras += tst-tlsmod17a tst-tlsmod18a tst-tlsalign-vars
> -modules-names = testobj1 testobj2 testobj3 testobj4 testobj5 testobj6 \
> -		testobj1_1 failobj constload2 constload3 unloadmod \
> -		dep1 dep2 dep3 dep4 vismod1 vismod2 vismod3 \
> -		nodelmod1 nodelmod2 nodelmod3 nodelmod4 \
> -		nodel2mod1 nodel2mod2 nodel2mod3 \
> -		nodlopenmod nodlopenmod2 filtmod1 filtmod2 \
> -		reldepmod1 reldepmod2 reldepmod3 reldepmod4 nextmod1 nextmod2 \
> -		reldep4mod1 reldep4mod2 reldep4mod3 reldep4mod4 \
> -		neededobj1 neededobj2 neededobj3 neededobj4 \
> -		neededobj5 neededobj6 firstobj globalmod1 \
> -		unload2mod unload2dep ltglobmod1 ltglobmod2 pathoptobj \
> -		dblloadmod1 dblloadmod2 dblloadmod3 reldepmod5 reldepmod6 \
> -		reldep6mod0 reldep6mod1 reldep6mod2 reldep6mod3 reldep6mod4 \
> -		reldep7mod1 reldep7mod2 \
> -		tst-tlsmod1 tst-tlsmod2 tst-tlsmod3 tst-tlsmod4 \
> -		tst-tlsmod5 tst-tlsmod6 tst-tlsmod7 tst-tlsmod8 \
> -		tst-tlsmod9 tst-tlsmod10 tst-tlsmod11 tst-tlsmod12 \
> -		tst-tlsmod13 tst-tlsmod13a tst-tlsmod14a tst-tlsmod14b \
> -		tst-tlsmod15a tst-tlsmod15b tst-tlsmod16a tst-tlsmod16b \
> -		$(tlsmod17a-modules) tst-tlsmod17b $(tlsmod18a-modules) \
> -		tst-tls19mod1 tst-tls19mod2 tst-tls19mod3 \
> -		circlemod1 circlemod1a circlemod2 circlemod2a \
> -		circlemod3 circlemod3a \
> -		reldep8mod1 reldep8mod2 reldep8mod3 \
> -		reldep9mod1 reldep9mod2 reldep9mod3 \
> -		tst-alignmod tst-alignmod2 tst-alignmod3 \
> -		$(modules-execstack-$(have-z-execstack)) \
> -		tst-dlopenrpathmod tst-deep1mod1 tst-deep1mod2 tst-deep1mod3 \
> -		tst-dlmopen1mod tst-auditmod1 \
> -		unload3mod1 unload3mod2 unload3mod3 unload3mod4 \
> -		unload4mod1 unload4mod2 unload4mod3 unload4mod4 \
> -		unload6mod1 unload6mod2 unload6mod3 \
> -		unload7mod1 unload7mod2 \
> -		unload8mod1 unload8mod1x unload8mod2 unload8mod3 \
> -		order2mod1 order2mod2 order2mod3 order2mod4 \
> -		tst-unique1mod1 tst-unique1mod2 \
> -		tst-unique2mod1 tst-unique2mod2 \
> -		tst-auditmod9a tst-auditmod9b \
> -		$(if $(CXX),tst-unique3lib tst-unique3lib2 tst-unique4lib \
> -		  tst-nodelete-uniquemod tst-nodelete-rtldmod \
> -		  tst-nodelete-zmod \
> -                  tst-dlopen-nodelete-reloc-mod1 \
> -		  tst-dlopen-nodelete-reloc-mod2 \
> -	          tst-dlopen-nodelete-reloc-mod3 \
> -		  tst-dlopen-nodelete-reloc-mod4 \
> -		  tst-dlopen-nodelete-reloc-mod5 \
> -	          tst-dlopen-nodelete-reloc-mod6 \
> -	          tst-dlopen-nodelete-reloc-mod7 \
> -	          tst-dlopen-nodelete-reloc-mod8 \
> -	          tst-dlopen-nodelete-reloc-mod9 \
> -	          tst-dlopen-nodelete-reloc-mod10 \
> -	          tst-dlopen-nodelete-reloc-mod11 \
> -	          tst-dlopen-nodelete-reloc-mod12 \
> -	          tst-dlopen-nodelete-reloc-mod13 \
> -	          tst-dlopen-nodelete-reloc-mod14 \
> -	          tst-dlopen-nodelete-reloc-mod15 \
> -	          tst-dlopen-nodelete-reloc-mod16 \
> -		  tst-dlopen-nodelete-reloc-mod17) \
> -		tst-initordera1 tst-initorderb1 \
> -		tst-initordera2 tst-initorderb2 \
> -		tst-initordera3 tst-initordera4 \
> -		tst-initorder2a tst-initorder2b tst-initorder2c \
> -		tst-initorder2d \
> -		tst-relsort1mod1 tst-relsort1mod2 tst-array2dep \
> -		tst-array5dep tst-null-argv-lib \
> -		tst-tlsalign-lib tst-nodelete-opened-lib tst-nodelete2mod \
> -		tst-audit11mod1 tst-audit11mod2 tst-auditmod11 \
> -		tst-audit12mod1 tst-audit12mod2 tst-audit12mod3 tst-auditmod12 \
> -		tst-latepthreadmod $(tst-tls-many-dynamic-modules) \
> -		$(tst-tls-many-dynamic-modules-dep) \
> -		$(tst-tls-many-dynamic-modules-dep-bad) \
> -		tst-nodelete-dlclose-dso tst-nodelete-dlclose-plugin \
> -		tst-main1mod tst-absolute-sym-lib \
> -		tst-absolute-zero-lib tst-big-note-lib tst-unwind-ctor-lib \
> -		tst-audit13mod1 tst-sonamemove-linkmod1 \
> -		tst-sonamemove-runmod1 tst-sonamemove-runmod2 \
> -		tst-auditmanymod1 tst-auditmanymod2 tst-auditmanymod3 \
> -		tst-auditmanymod4 tst-auditmanymod5 tst-auditmanymod6 \
> -		tst-auditmanymod7 tst-auditmanymod8 tst-auditmanymod9 \
> -		tst-initlazyfailmod tst-finilazyfailmod \
> -		tst-dlopenfailmod1 tst-dlopenfaillinkmod tst-dlopenfailmod2 \
> -		tst-dlopenfailmod3 tst-dlopenfailnodelmod tst-ldconfig-ld-mod \
> -		tst-filterobj-flt tst-filterobj-aux tst-filterobj-filtee \
> -		tst-auditlogmod-1 tst-auditlogmod-2 tst-auditlogmod-3 \
> -		tst-single_threaded-mod1 tst-single_threaded-mod2 \
> -		tst-single_threaded-mod3 tst-single_threaded-mod4 \
> -		tst-tls-ie-mod0 tst-tls-ie-mod1 tst-tls-ie-mod2 \
> -		tst-tls-ie-mod3 tst-tls-ie-mod4 tst-tls-ie-mod5 \
> -		tst-tls-ie-mod6 libmarkermod1-1 libmarkermod1-2 libmarkermod1-3 \
> -		libmarkermod2-1 libmarkermod2-2 \
> -		libmarkermod3-1 libmarkermod3-2 libmarkermod3-3 \
> -		libmarkermod4-1 libmarkermod4-2 libmarkermod4-3 libmarkermod4-4 \
> -		tst-tls20mod-bad tst-tls21mod tst-dlmopen-dlerror-mod \
> -		tst-auxvalmod \
> -		tst-dlmopen-gethostbyname-mod tst-ro-dynamic-mod \
> -		tst-auditmod18 \
> -		tst-audit18mod \
> +modules-names = \
> +  circlemod1 \
> +  circlemod1a \
> +  circlemod2 \
> +  circlemod2a \
> +  circlemod3 \
> +  circlemod3a \
> +  constload2 \
> +  constload3 \
> +  dblloadmod1 \
> +  dblloadmod2 \
> +  dblloadmod3 \
> +  dep1 \
> +  dep2 \
> +  dep3 \
> +  dep4 \
> +  failobj \
> +  filtmod1 \
> +  filtmod2 \
> +  firstobj \
> +  globalmod1 \
> +  libmarkermod1-1 \
> +  libmarkermod1-2 \
> +  libmarkermod1-3 \
> +  libmarkermod2-1 \
> +  libmarkermod2-2 \
> +  libmarkermod3-1 \
> +  libmarkermod3-2 \
> +  libmarkermod3-3 \
> +  libmarkermod4-1 \
> +  libmarkermod4-2 \
> +  libmarkermod4-3 \
> +  libmarkermod4-4 \
> +  ltglobmod1 \
> +  ltglobmod2 \
> +  neededobj1 \
> +  neededobj2 \
> +  neededobj3 \
> +  neededobj4 \
> +  neededobj5 \
> +  neededobj6 \
> +  nextmod1 \
> +  nextmod2 \
> +  nodel2mod1 \
> +  nodel2mod2 \
> +  nodel2mod3 \
> +  nodelmod1 \
> +  nodelmod2 \
> +  nodelmod3 \
> +  nodelmod4 \
> +  nodlopenmod \
> +  nodlopenmod2 \
> +  order2mod1 \
> +  order2mod2 \
> +  order2mod3 \
> +  order2mod4 \
> +  pathoptobj \
> +  reldep4mod1 \
> +  reldep4mod2 \
> +  reldep4mod3 \
> +  reldep4mod4 \
> +  reldep6mod0 \
> +  reldep6mod1 \
> +  reldep6mod2 \
> +  reldep6mod3 \
> +  reldep6mod4 \
> +  reldep7mod1 \
> +  reldep7mod2 \
> +  reldep8mod1 \
> +  reldep8mod2 \
> +  reldep8mod3 \
> +  reldep9mod1 \
> +  reldep9mod2 \
> +  reldep9mod3 \
> +  reldepmod1 \
> +  reldepmod2 \
> +  reldepmod3 \
> +  reldepmod4 \
> +  reldepmod5 \
> +  reldepmod6 \
> +  testobj1 \
> +  testobj1_1 \
> +  testobj2 \
> +  testobj3 \
> +  testobj4 \
> +  testobj5 \
> +  testobj6 \
> +  tst-absolute-sym-lib \
> +  tst-absolute-zero-lib \
> +  tst-alignmod \
> +  tst-alignmod2 \
> +  tst-alignmod3 \
> +  tst-array2dep \
> +  tst-array5dep \
> +  tst-audit11mod1 \
> +  tst-audit11mod2 \
> +  tst-audit12mod1 \
> +  tst-audit12mod2 \
> +  tst-audit12mod3 \
> +  tst-audit13mod1 \
> +  tst-audit18mod \
> +  tst-auditlogmod-1 \
> +  tst-auditlogmod-2 \
> +  tst-auditlogmod-3 \
> +  tst-auditmanymod1 \
> +  tst-auditmanymod2 \
> +  tst-auditmanymod3 \
> +  tst-auditmanymod4 \
> +  tst-auditmanymod5 \
> +  tst-auditmanymod6 \
> +  tst-auditmanymod7 \
> +  tst-auditmanymod8 \
> +  tst-auditmanymod9 \
> +  tst-auditmod1 \
> +  tst-auditmod11 \
> +  tst-auditmod12 \
> +  tst-auditmod18 \
> +  tst-auditmod9a \
> +  tst-auditmod9b \
> +  tst-auxvalmod \
> +  tst-big-note-lib \
> +  tst-deep1mod1 \
> +  tst-deep1mod2 \
> +  tst-deep1mod3 \
> +  tst-dlmopen1mod \
> +  tst-dlmopen-dlerror-mod \
> +  tst-dlmopen-gethostbyname-mod \
> +  tst-dlopenfaillinkmod \
> +  tst-dlopenfailmod1 \
> +  tst-dlopenfailmod2 \
> +  tst-dlopenfailmod3 \
> +  tst-dlopenfailnodelmod \
> +  tst-dlopenrpathmod \
> +  tst-filterobj-aux \
> +  tst-filterobj-filtee \
> +  tst-filterobj-flt \
> +  tst-finilazyfailmod \
> +  tst-initlazyfailmod \
> +  tst-initorder2a \
> +  tst-initorder2b \
> +  tst-initorder2c \
> +  tst-initorder2d \
> +  tst-initordera1 \
> +  tst-initordera2 \
> +  tst-initordera3 \
> +  tst-initordera4 \
> +  tst-initorderb1 \
> +  tst-initorderb2 \
> +  tst-latepthreadmod \
> +  tst-ldconfig-ld-mod \
> +  tst-main1mod \
> +  tst-nodelete2mod \
> +  tst-nodelete-dlclose-dso \
> +  tst-nodelete-dlclose-plugin \
> +  tst-nodelete-opened-lib \
> +  tst-null-argv-lib \
> +  tst-relsort1mod1 \
> +  tst-relsort1mod2 \
> +  tst-ro-dynamic-mod \
> +  tst-single_threaded-mod1 \
> +  tst-single_threaded-mod2 \
> +  tst-single_threaded-mod3 \
> +  tst-single_threaded-mod4 \
> +  tst-sonamemove-linkmod1 \
> +  tst-sonamemove-runmod1 \
> +  tst-sonamemove-runmod2 \
> +  tst-tls19mod1 \
> +  tst-tls19mod2 \
> +  tst-tls19mod3 \
> +  tst-tls20mod-bad \
> +  tst-tls21mod \
> +  tst-tlsalign-lib \
> +  tst-tls-ie-mod0 \
> +  tst-tls-ie-mod1 \
> +  tst-tls-ie-mod2 \
> +  tst-tls-ie-mod3 \
> +  tst-tls-ie-mod4 \
> +  tst-tls-ie-mod5 \
> +  tst-tls-ie-mod6 \
> +  tst-tlsmod1 \
> +  tst-tlsmod10 \
> +  tst-tlsmod11 \
> +  tst-tlsmod12 \
> +  tst-tlsmod13 \
> +  tst-tlsmod13a \
> +  tst-tlsmod14a \
> +  tst-tlsmod14b \
> +  tst-tlsmod15a \
> +  tst-tlsmod15b \
> +  tst-tlsmod16a \
> +  tst-tlsmod16b \
> +  tst-tlsmod17b \
> +  tst-tlsmod2 \
> +  tst-tlsmod3 \
> +  tst-tlsmod4 \
> +  tst-tlsmod5 \
> +  tst-tlsmod6 \
> +  tst-tlsmod7 \
> +  tst-tlsmod8 \
> +  tst-tlsmod9 \
> +  tst-unique1mod1 \
> +  tst-unique1mod2 \
> +  tst-unique2mod1 \
> +  tst-unique2mod2 \
> +  tst-unwind-ctor-lib \
> +  unload2dep \
> +  unload2mod \
> +  unload3mod1 \
> +  unload3mod2 \
> +  unload3mod3 \
> +  unload3mod4 \
> +  unload4mod1 \
> +  unload4mod2 \
> +  unload4mod3 \
> +  unload4mod4 \
> +  unload6mod1 \
> +  unload6mod2 \
> +  unload6mod3 \
> +  unload7mod1 \
> +  unload7mod2 \
> +  unload8mod1 \
> +  unload8mod1x \
> +  unload8mod2 \
> +  unload8mod3 \
> +  unloadmod \
> +  vismod1 \
> +  vismod2 \
> +  vismod3 \
> +
> +modules-names-cxx = \
> +  tst-dlopen-nodelete-reloc-mod1 \
> +  tst-dlopen-nodelete-reloc-mod10 \
> +  tst-dlopen-nodelete-reloc-mod11 \
> +  tst-dlopen-nodelete-reloc-mod12 \
> +  tst-dlopen-nodelete-reloc-mod13 \
> +  tst-dlopen-nodelete-reloc-mod14 \
> +  tst-dlopen-nodelete-reloc-mod15 \
> +  tst-dlopen-nodelete-reloc-mod16 \
> +  tst-dlopen-nodelete-reloc-mod17 \
> +  tst-dlopen-nodelete-reloc-mod2 \
> +  tst-dlopen-nodelete-reloc-mod3 \
> +  tst-dlopen-nodelete-reloc-mod4 \
> +  tst-dlopen-nodelete-reloc-mod5 \
> +  tst-dlopen-nodelete-reloc-mod6 \
> +  tst-dlopen-nodelete-reloc-mod7 \
> +  tst-dlopen-nodelete-reloc-mod8 \
> +  tst-dlopen-nodelete-reloc-mod9 \
> +  tst-nodelete-rtldmod \
> +  tst-nodelete-uniquemod \
> +  tst-nodelete-zmod \
> +  tst-unique3lib \
> +  tst-unique3lib2 \
> +  tst-unique4lib \
> +
> +modules-names += \
> +  $(if $(CXX),$(modules-names-cxx)) \
> +  $(modules-execstack-$(have-z-execstack)) \
> +  $(tst-tls-many-dynamic-modules) \
> +  $(tst-tls-many-dynamic-modules-dep) \
> +  $(tst-tls-many-dynamic-modules-dep-bad) \
> +  $(tlsmod17a-modules) \
> +  $(tlsmod18a-modules) \
>  
>  # Most modules build with _ISOMAC defined, but those filtered out
>  # depend on internal headers.
> -- 
> 2.33.1
> 

More tests were added since this submission.  I will check the v5:

https://sourceware.org/pipermail/libc-alpha/2022-January/134917.html

to avoid more future conflicts.


H.J.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2022-01-03 23:36 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-12-13 17:55 [PATCH v4 0/2] Add and use link-test-modules-rpath-link H.J. Lu
2021-12-13 17:55 ` [PATCH v4 1/2] elf: Sort tests and modules-names H.J. Lu
2022-01-03 23:36   ` H.J. Lu
2021-12-13 17:55 ` [PATCH v4 2/2] Add and use link-test-modules-rpath-link [BZ #28455] H.J. Lu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).