Check the main application only if SHARED is defined

This commit is contained in:
H.J. Lu 2012-10-20 16:16:59 -07:00
parent 335e6931e2
commit f2eed20524
5 changed files with 25 additions and 3 deletions

View File

@ -1,3 +1,15 @@
2012-10-20 H.J. Lu <hongjiu.lu@intel.com>
[BZ #14683]
* elf/Makefile (tests-static): Add tst-leaks1-static.
(tests): Also depend on $(objpfx)tst-leaks1-static-mem.
($(objpfx)tst-leaks1-static): New rule.
($(objpfx)tst-leaks1-static-mem): Likewise.
(tst-leaks1-static-ENV): New macro.
* elf/dl-open.c (dl_open_worker): Check the main application
only if SHARED is defined.
* elf/tst-leaks1-static.c: New file.
2012-10-20 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/bits/fcntl-linux.h: New file, contains

2
NEWS
View File

@ -16,7 +16,7 @@ Version 2.17
14328, 14331, 14336, 14337, 14347, 14349, 14376, 14417, 14459, 14476,
14477, 14505, 14510, 14516, 14518, 14519, 14530, 14532, 14538, 14543,
14544, 14545, 14557, 14562, 14568, 14576, 14579, 14583, 14587, 14602,
14621, 14638, 14645, 14648, 14652, 14660, 14661, 14694, 14716.
14621, 14638, 14645, 14648, 14652, 14660, 14661, 14683, 14694, 14716.
* Support for STT_GNU_IFUNC symbols added for s390 and s390x.
Optimized versions of memcpy, memset, and memcmp added for System z10 and

View File

@ -119,7 +119,8 @@ tests = tst-tls1 tst-tls2 tst-tls9 tst-leaks1
ifeq (yes,$(have-initfini-array))
tests += tst-array1 tst-array2 tst-array3 tst-array4 tst-array5
endif
tests-static = tst-tls1-static tst-tls2-static tst-stackguard1-static
tests-static = tst-tls1-static tst-tls2-static tst-stackguard1-static \
tst-leaks1-static
ifeq (yes,$(build-shared))
tests-static += tst-tls9-static
tst-tls9-static-ENV = \
@ -161,7 +162,8 @@ endif
endif
endif
ifeq ($(cross-compiling),no)
tests: $(objpfx)tst-leaks1-mem $(objpfx)noload-mem
tests: $(objpfx)tst-leaks1-mem $(objpfx)tst-leaks1-static-mem \
$(objpfx)noload-mem
endif
tlsmod17a-suffixes = 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
tlsmod18a-suffixes = 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
@ -1051,7 +1053,12 @@ $(objpfx)tst-leaks1: $(libdl)
$(objpfx)tst-leaks1-mem: $(objpfx)tst-leaks1.out
$(common-objpfx)malloc/mtrace $(objpfx)tst-leaks1.mtrace > $@
$(objpfx)tst-leaks1-static: $(common-objpfx)dlfcn/libdl.a
$(objpfx)tst-leaks1-static-mem: $(objpfx)tst-leaks1-static.out
$(common-objpfx)malloc/mtrace $(objpfx)tst-leaks1-static.mtrace > $@
tst-leaks1-ENV = MALLOC_TRACE=$(objpfx)tst-leaks1.mtrace
tst-leaks1-static-ENV = MALLOC_TRACE=$(objpfx)tst-leaks1-static.mtrace
$(objpfx)tst-addr1: $(libdl)

View File

@ -189,9 +189,11 @@ dl_open_worker (void *a)
{
const void *caller_dlopen = args->caller_dlopen;
#ifdef SHARED
/* We have to find out from which object the caller is calling.
By default we assume this is the main application. */
call_map = GL(dl_ns)[LM_ID_BASE]._ns_loaded;
#endif
struct link_map *l;
for (Lmid_t ns = 0; ns < GL(dl_nns); ++ns)

1
elf/tst-leaks1-static.c Normal file
View File

@ -0,0 +1 @@
#include "tst-leaks1.c"