WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] [PATCH] tools: disable linker --as-needed option

On Tue, 2011-02-01 at 09:51 +0000, Jan Beulich wrote:
> >>> On 01.02.11 at 10:27, Ian Campbell <Ian.Campbell@xxxxxxxxxxxxx> wrote:
> > I'm not even sure when
> > --{no-,}as-needed came along, perhaps we don't actually need to worry?
> 
> 2.15 has it (released in May 2004), 2.13.2 didn't. I don't have a
> 2.14 sitting around.

Thanks.

My usual measure for this stuff is Debian. It seems Debian Lenny
(current stable, just about) has 2.18, Etch (previous stable) has 2.17
and Sarge (one before that) has 2.15. I think we can simply make the use
of this option unconditional.

Ian.

# HG changeset patch
# User Ian Campbell <ian.campbell@xxxxxxxxxx>
# Date 1296555650 0
# Node ID e4c9925852a021a3ccdc769f04fdaa99b05cffa0
# Parent  5b6663ba2bb2c54e8fa6745afa16297ebe43328d
tools: disable linker --as-needed option.

The Xen build system is not currently compatible with the --as-needed
linker option. The proper fix for this is turning out to be rather
invasive to the build system so simply disable for now with the
intention of revisiting for the 4.2 release.

The --no-as-needed option is available at least since binutils 2.15
(released in May 2004) and hence I think can be unconditionally relied
on.

Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
Reported/Tested-by: Nathan March <nathan@xxxxxx>

diff -r 5b6663ba2bb2 -r e4c9925852a0 tools/Rules.mk
--- a/tools/Rules.mk    Mon Jan 31 09:14:52 2011 +0000
+++ b/tools/Rules.mk    Tue Feb 01 10:20:50 2011 +0000
@@ -55,6 +55,9 @@ LDFLAGS += $(shell getconf LFS_LDFLAGS)
 LDFLAGS += $(shell getconf LFS_LDFLAGS)
 endif
 
+# Xen tools build is currently incompatible with ld --as-needed
+LDFLAGS += -Wl,--no-as-needed
+
 # 32-bit x86 does not perform well with -ve segment accesses on Xen.
 CFLAGS-$(CONFIG_X86_32) += $(call cc-option,$(CC),-mno-tls-direct-seg-refs)
 CFLAGS += $(CFLAGS-y)



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel