diff --git a/ChangeLog b/ChangeLog index 965ebe0c32..3e6cbac028 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2011-06-09 Roland McGrath + + * Makerules ($(common-objpfx)libc_pic.os): Use -Wl, before -r. + * elf/Makefile ($(objpfx)librtld.os): Likewise. + (reloc-link): Likewise. + 2011-06-09 Ulrich Drepper * elf/Makefile: Add rules to build pldd. diff --git a/Makerules b/Makerules index 82ffa1e2b8..472948fbc6 100644 --- a/Makerules +++ b/Makerules @@ -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 844c9ca56f..5b199e64ed 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