summaryrefslogtreecommitdiff
path: root/elf
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>1996-05-04 13:57:05 +0000
committerRoland McGrath <roland@gnu.org>1996-05-04 13:57:05 +0000
commitdb2286f6d9f8d7715a1f60437a343ffd505f8af4 (patch)
treedbaed11784a6a416b989e6bde1d0b6ce0708f391 /elf
parent8f0c527e13b836a44fedbf6abc84e1901e2cc10d (diff)
* locale/setlocale.c (_nl_C_name): Variable removed.cvs/libc-960506cvs/libc-960505
* locale/C_name.c: New file. (_nl_C_name): Put it here instead. * locale/Makefile (aux): Add C_name. * sysdeps/mach/hurd/dl-sysdep.c (open): Don't pass io port in auth_user_authenticate rpc. (open): Avoid using strtol in digit conversion for "fd/N" magic. (_dl_sysdep_start): Likewise for memobj name in magic switches. * elf/Makefile (reloc-link): New variable. (dl-allobjs.so): New target, link together $(rtld-routines). (librtld.so): Depend on that instead of the rtld components. (generated): Add dl-allobjs.so.
Diffstat (limited to 'elf')
-rw-r--r--elf/Makefile13
1 files changed, 9 insertions, 4 deletions
diff --git a/elf/Makefile b/elf/Makefile
index dfb307b682..c973a0f461 100644
--- a/elf/Makefile
+++ b/elf/Makefile
@@ -39,7 +39,7 @@ include ../Makeconfig
ifeq (yes,$(build-shared))
extra-objs = $(rtld-routines:=.so) soinit.so sofini.so
-generated = librtld.so
+generated = librtld.so dl-allobjs.so
install-others = $(slibdir)/$(rtld-installed-name)
install-bin = ldd
@@ -52,14 +52,19 @@ endif
include ../Rules
+# Command to link into a larger single relocatable object.
+reloc-link = $(LINK.o) -nostdlib -nostartfiles -r -o $@
+
+$(objpfx)dl-allobjs.so: $(rtld-routines:%=$(objpfx)%.so)
+ $(reloc-link) $^
+
# Link together the dynamic linker into a single relocatable object.
# We use this to produce both the ABI-compliant and Linux-compatible
# dynamic linker shared objects below.
-$(objpfx)librtld.so: $(rtld-routines:%=$(objpfx)%.so) \
+$(objpfx)librtld.so: $(objpfx)dl-allobjs.so \
$(patsubst %,$(common-objpfx)lib%_pic.a,\
elf c $(LDLIBS-c.so:-l%=%))
- $(LINK.o) -nostdlib -nostartfiles -r -o $@ \
- '-Wl,-(' $^ -lgcc '-Wl,-)'
+ $(reloc-link) '-Wl,-(' $^ -lgcc '-Wl,-)'
$(objpfx)ld.so: $(objpfx)librtld.so
$(rtld-link) -Wl,-soname=$(rtld-installed-name)