summaryrefslogtreecommitdiff
path: root/test/dlopen/Makefile.in
diff options
context:
space:
mode:
authorLeonid Lisovskiy <lly.dev@gmail.com>2016-01-13 21:00:05 +0300
committerWaldemar Brodkorb <wbx@uclibc-ng.org>2016-01-31 17:39:37 +0100
commit27f1b2c66c67e601dd619a1def70a8fd7ca5eeba (patch)
tree90a57981936937d51fa6dab56026f5f7c8bfcc80 /test/dlopen/Makefile.in
parent12a85731dc5fda3bc01ab19c82678b3bf122d794 (diff)
libdl: dlopen() mustn't forget RTLD_NODELETE flag
If RTLD_NODELETE is passed to dlopen() rather than set on shared library itself, flag propagation to rtld_flags is missed. Test-case taken from glibc. Signed-off-by: Leonid Lisovskiy <lly.dev@gmail.com> Signed-off-by: Waldemar Brodkorb <wbx@uclibc-ng.org>
Diffstat (limited to 'test/dlopen/Makefile.in')
-rw-r--r--test/dlopen/Makefile.in9
1 files changed, 8 insertions, 1 deletions
diff --git a/test/dlopen/Makefile.in b/test/dlopen/Makefile.in
index 85996def4..a02b2b96e 100644
--- a/test/dlopen/Makefile.in
+++ b/test/dlopen/Makefile.in
@@ -5,7 +5,7 @@
export UCLIBC_ONLY := 1
TESTS := dltest dltest2 dlstatic test1 test2 test3 dlundef dlafk dladdr \
- testscope
+ testscope nodelete
ifneq ($(HAVE_SHARED),y)
TESTS_DISABLED := test3
@@ -63,3 +63,10 @@ LDFLAGS_libtest3.so := -lpthread -Wl,-rpath,.
LDFLAGS_libC.so := -ldl
LDFLAGS_libB.so := ./libC.so -Wl,-rpath,.
LDFLAGS_libA.so := ./libB.so -Wl,-rpath,.
+
+nodelete: nodelmod1.so nodelmod2.so nodelmod3.so
+nodelmod3.so: nodelmod4.so
+LDFLAGS_nodelete := -rdynamic -ldl
+LDFLAGS_nodelmod1.so := -Wl,-z,nodelete
+LDFLAGS_nodelmod3.so := ./nodelmod4.so
+LDFLAGS_nodelmod4.so := -Wl,-z,nodelete