This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch] Fix test suite failures with --as-needed


On 25/04/12 00:48, Carlos O'Donell wrote:
> On Tue, Apr 24, 2012 at 8:48 AM, Allan McRae <allan@archlinux.org> wrote:
>> 2012-04-16  Allan McRae  <allan@archlinux.org>
>>
>>        * elf/Makefile: (LDFLAGS-nodel2mod3.so: Use $(no-as-needed).
>>        (LDFLAGS-reldepmod5.so): Likewise.
>>        (LDFLAGS-reldep6mod1.so): Likewise.
>>        (LDFLAGS-reldep6mod4.so): Likewise.
>>        (LDFLAGS-reldep8mod3.so): Likewise.
>>        (LDFLAGS-unload4mod1.so): Likewise.
>>        (LDFLAGS-unload4mod2.so): Likewise.
>>        (LDFLAGS-tst-initorder): Likewise.
>>        (LDFLAGS-tst-initordera2.so): Likewise.
>>        (LDFLAGS-tst-initordera3.so): Likewise.
>>        (LDFLAGS-tst-initordera4.so): Likewise.
>>        (LDFLAGS-tst-initorderb2.so): Likewise.
>>        (LDFLAGS-noload): Likewise.
>>        (LDFLAGS-next): Likewise.
>>        (LDFLAGS-order2mod1.so): Likewise.
>>        (LDFLAGS-order2mod2.so): Likewise.
>>        (LDFLAGS-tst-initorder2): Likewise.
>>        (LDFLAGS-tst-initorder2a.so): Likewise.
>>        (LDFLAGS-tst-initorder2b.so): Likewise.
>>        (LDFLAGS-tst-initorder2c.so): Likewise.
>>        * stdlib/Makefile: (LDFLAGS-tst-putenv): Likewise.
>>
>>
>> nptl/ChangeLog:
>>
>> 2012-04-16  Allan McRae  <allan@archlinux.org>
>>
>>        * Makefile: (LDFLAGS-tst-tls5): Use $(no-as-needed).
>>        (LDFLAGS-tst-cancel24): Likewise.
> 
> Your mailer, or my stupidity have mangled the patch, and it doesn't apply.
> 
> Could you please send as an attachment to avoid mailer mangling.
> 

Attached in git format.

Allan
>From 25105f091ad1ca02386ceb72868dcd1af5e57a82 Mon Sep 17 00:00:00 2001
From: Allan McRae <allan@archlinux.org>
Date: Mon, 16 Apr 2012 14:06:47 +1000
Subject: [PATCH] Fix test-suite failues with -Wl,--as-needed

Signed-off-by: Allan McRae <allan@archlinux.org>
---
 elf/Makefile    |   21 ++++++++++++++++++++-
 nptl/Makefile   |    3 ++-
 stdlib/Makefile |    1 +
 3 files changed, 23 insertions(+), 2 deletions(-)

diff --git a/elf/Makefile b/elf/Makefile
index 59a3936..ea94f62 100644
--- a/elf/Makefile
+++ b/elf/Makefile
@@ -497,6 +497,18 @@ $(objpfx)tst-initordera3.so: $(objpfx)tst-initorderb2.so $(objpfx)tst-initorderb
 $(objpfx)tst-initordera4.so: $(objpfx)tst-initordera3.so
 $(objpfx)tst-initorder: $(objpfx)tst-initordera4.so $(objpfx)tst-initordera1.so $(objpfx)tst-initorderb2.so
 
+LDFLAGS-nodel2mod3.so = $(no-as-needed)
+LDFLAGS-reldepmod5.so = $(no-as-needed)
+LDFLAGS-reldep6mod1.so = $(no-as-needed)
+LDFLAGS-reldep6mod4.so = $(no-as-needed)
+LDFLAGS-reldep8mod3.so = $(no-as-needed)
+LDFLAGS-unload4mod1.so = $(no-as-needed)
+LDFLAGS-unload4mod2.so = $(no-as-needed)
+LDFLAGS-tst-initorder = $(no-as-needed)
+LDFLAGS-tst-initordera2.so = $(no-as-needed)
+LDFLAGS-tst-initordera3.so = $(no-as-needed)
+LDFLAGS-tst-initordera4.so = $(no-as-needed)
+LDFLAGS-tst-initorderb2.so = $(no-as-needed)
 LDFLAGS-tst-tlsmod5.so = -nostdlib
 LDFLAGS-tst-tlsmod6.so = -nostdlib
 
@@ -630,7 +642,7 @@ $(objpfx)vismain.out: $(addprefix $(objpfx),vismod3.so)
 vismain-ENV = LD_PRELOAD=$(addprefix $(objpfx),vismod3.so)
 
 $(objpfx)noload: $(objpfx)testobj1.so $(common-objpfx)dlfcn/libdl.so
-LDFLAGS-noload = -rdynamic
+LDFLAGS-noload = -rdynamic $(no-as-needed)
 $(objpfx)noload.out: $(objpfx)testobj5.so
 
 $(objpfx)noload-mem: $(objpfx)noload.out
@@ -675,6 +687,7 @@ $(objpfx)reldep4: $(libdl)
 $(objpfx)reldep4.out: $(objpfx)reldep4mod1.so $(objpfx)reldep4mod2.so
 
 $(objpfx)next: $(objpfx)nextmod1.so $(objpfx)nextmod2.so $(libdl)
+LDFLAGS-next = $(no-as-needed)
 
 $(objpfx)unload2: $(libdl)
 $(objpfx)unload2.out: $(objpfx)unload2mod.so $(objpfx)unload2dep.so
@@ -999,6 +1012,8 @@ $(objpfx)order2mod1.so: $(objpfx)order2mod4.so
 $(objpfx)order2mod4.so: $(objpfx)order2mod3.so
 $(objpfx)order2mod2.so: $(objpfx)order2mod3.so
 order2mod2.so-no-z-defs = yes
+LDFLAGS-order2mod1.so = $(no-as-needed)
+LDFLAGS-order2mod2.so = $(no-as-needed)
 
 tst-stackguard1-ARGS = --command "$(built-program-cmd) --child"
 tst-stackguard1-static-ARGS = --command "$(objpfx)tst-stackguard1-static --child"
@@ -1087,6 +1102,10 @@ $(objpfx)tst-initorder2: $(objpfx)tst-initorder2a.so $(objpfx)tst-initorder2d.so
 $(objpfx)tst-initorder2a.so: $(objpfx)tst-initorder2b.so
 $(objpfx)tst-initorder2b.so: $(objpfx)tst-initorder2c.so
 $(objpfx)tst-initorder2c.so: $(objpfx)tst-initorder2d.so
+LDFLAGS-tst-initorder2 = $(no-as-needed)
+LDFLAGS-tst-initorder2a.so = $(no-as-needed)
+LDFLAGS-tst-initorder2b.so = $(no-as-needed)
+LDFLAGS-tst-initorder2c.so = $(no-as-needed)
 define o-iterator-doit
 $(objpfx)tst-initorder2$o.os: tst-initorder2.c; \
 $$(compile-command.c) -DNAME=\"$o\"
diff --git a/nptl/Makefile b/nptl/Makefile
index 52277dd..be7a05c 100644
--- a/nptl/Makefile
+++ b/nptl/Makefile
@@ -456,6 +456,7 @@ $(objpfx)tst-tls4: $(libdl) $(shared-thread-library)
 $(objpfx)tst-tls4.out: $(objpfx)tst-tls4moda.so $(objpfx)tst-tls4modb.so
 
 $(objpfx)tst-tls5: $(objpfx)tst-tls5mod.so $(shared-thread-library)
+LDFLAGS-tst-tls5 = $(no-as-needed)
 LDFLAGS-tst-tls5mod.so = -Wl,-soname,tst-tls5mod.so
 
 ifeq ($(build-shared),yes)
@@ -499,7 +500,7 @@ $(objpfx)tst-clock2: $(common-objpfx)rt/librt.a
 $(objpfx)tst-rwlock14: $(common-objpfx)rt/librt.a
 endif
 
-LDFLAGS-tst-cancel24 = -lstdc++
+LDFLAGS-tst-cancel24 = $(no-as-needed) -lstdc++
 
 extra-B-pthread.so = -B$(common-objpfx)nptl/
 $(objpfx)libpthread.so: $(addprefix $(objpfx),$(crti-objs) $(crtn-objs))
diff --git a/stdlib/Makefile b/stdlib/Makefile
index 44eb20d..f7811c5 100644
--- a/stdlib/Makefile
+++ b/stdlib/Makefile
@@ -138,6 +138,7 @@ $(objpfx)tst-fmtmsg.out: tst-fmtmsg.sh $(objpfx)tst-fmtmsg
 	$(SHELL) -e $< $(common-objpfx) '$(run-program-prefix)' $(common-objpfx)stdlib/
 
 $(objpfx)tst-putenv: $(objpfx)tst-putenvmod.so
+LDFLAGS-tst-putenv = $(no-as-needed)
 
 $(objpfx)tst-putenvmod.so: $(objpfx)tst-putenvmod.os
 	$(build-module)
-- 
1.7.10


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]