about summary refs log tree commit diff
path: root/Makerules
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2021-10-15 06:33:05 -0700
committerH.J. Lu <hjl.tools@gmail.com>2022-01-24 05:11:36 -0800
commit114d07fd9a54684cb67b02174f2c48d19f3e2502 (patch)
treed2d840cfe3146ab1079b9054ca3b0c43240d79b1 /Makerules
parent976db046bc3a3738f69255ae00b0a09b8e77fd9c (diff)
downloadglibc-114d07fd9a54684cb67b02174f2c48d19f3e2502.tar.gz
glibc-114d07fd9a54684cb67b02174f2c48d19f3e2502.tar.xz
glibc-114d07fd9a54684cb67b02174f2c48d19f3e2502.zip
Add and use link-test-modules-rpath-link [BZ #28455]
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.
Diffstat (limited to 'Makerules')
-rw-r--r--Makerules1
1 files changed, 1 insertions, 0 deletions
diff --git a/Makerules b/Makerules
index 81307b670e..5de2cec6be 100644
--- a/Makerules
+++ b/Makerules
@@ -597,6 +597,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