diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | Makerules | 2 | ||||
-rw-r--r-- | elf/Makefile | 5 |
3 files changed, 10 insertions, 3 deletions
@@ -1,3 +1,9 @@ +2011-06-09 Roland McGrath <roland@hack.frob.com> + + * Makerules ($(common-objpfx)libc_pic.os): Use -Wl, before -r. + * elf/Makefile ($(objpfx)librtld.os): Likewise. + (reloc-link): Likewise. + 2011-06-09 Ulrich Drepper <drepper@gmail.com> * elf/Makefile: Add rules to build pldd. @@ -610,7 +610,7 @@ endif # between libc.so and ld.so, which can make it impossible to upgrade. ifeq ($(elf),yes) $(common-objpfx)libc_pic.os: $(common-objpfx)libc_pic.a - $(LINK.o) -nostdlib -nostartfiles -r -o $@ \ + $(LINK.o) -nostdlib -nostartfiles -Wl,-r -o $@ \ $(LDFLAGS-c_pic.os) -Wl,-d -Wl,--whole-archive $^ # Use our own special initializer and finalizer files for libc.so. $(common-objpfx)libc.so: $(elfobjdir)/soinit.os \ diff --git a/elf/Makefile b/elf/Makefile index 844c9ca..5b199e6 100644 --- a/elf/Makefile +++ b/elf/Makefile @@ -353,7 +353,7 @@ lib-noranlib: $(objpfx)$(rtld-installed-name) \ endif # Command to link into a larger single relocatable object. -reloc-link = $(LINK.o) -nostdlib -nostartfiles -r +reloc-link = $(LINK.o) -nostdlib -nostartfiles -Wl,-r $(objpfx)dl-allobjs.os: $(all-rtld-routines:%=$(objpfx)%.os) $(reloc-link) -o $@ $^ @@ -398,7 +398,8 @@ $(objpfx)rtld-libc.a: $(objpfx)librtld.mk FORCE $(MAKE) -f $< -f rtld-Rules $(objpfx)librtld.os: $(objpfx)dl-allobjs.os $(objpfx)rtld-libc.a - $(LINK.o) -nostdlib -nostartfiles -r -o $@ '-Wl,-(' $^ -lgcc '-Wl,-)' \ + $(LINK.o) -nostdlib -nostartfiles -Wl,-r -o $@ \ + '-Wl,-(' $^ -lgcc '-Wl,-)' \ -Wl,-Map,$@.map generated += librtld.map librtld.mk rtld-libc.a librtld.os.map |