diff options
author | Leonid Lisovskiy <lly.dev@gmail.com> | 2016-01-13 21:00:05 +0300 |
---|---|---|
committer | Waldemar Brodkorb <wbx@uclibc-ng.org> | 2016-01-31 17:39:37 +0100 |
commit | 27f1b2c66c67e601dd619a1def70a8fd7ca5eeba (patch) | |
tree | 90a57981936937d51fa6dab56026f5f7c8bfcc80 /test/dlopen/Makefile.in | |
parent | 12a85731dc5fda3bc01ab19c82678b3bf122d794 (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.in | 9 |
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 |