diff options
author | Roland McGrath <roland@gnu.org> | 1996-06-11 21:07:00 +0000 |
---|---|---|
committer | Roland McGrath <roland@gnu.org> | 1996-06-11 21:07:00 +0000 |
commit | 852fc4b91e0c657e02c7d15bc24fbbae066ccae3 (patch) | |
tree | 16e0d249a0b7b0f6d47a410cdfdfe890d7a898cb /Makerules | |
parent | 6ba35316626b0aec32d29b7307965de4f4bb59fb (diff) | |
download | glibc-852fc4b91e0c657e02c7d15bc24fbbae066ccae3.tar.gz glibc-852fc4b91e0c657e02c7d15bc24fbbae066ccae3.tar.xz glibc-852fc4b91e0c657e02c7d15bc24fbbae066ccae3.zip |
* elf/Makefile ($(objpfx)$(rtld-installed-name)): New target to make
link to ld.so if that is not the installed name. (lib-noranlib): Depend on the installed name in the build directory instead of on ld.so. * Makeconfig (link-libc): Include $(elfobjdir)/$(rtld-installed-name) between libc.so and libc.a, because with libc.so's DT_NEEDED for ld.so ld searches libc.a before ld.so (is that an ld bug?). Add $(elfobjdir) to -rpath-link. * Makerules (elfobjdir): Define as . when $(subdir) is elf. * sysdeps/i386/dl-machine.h (elf_machine_rel): In R_386_32 case when relocating _dl_rtld_map, subtract SYM's value from final reloc value, but don't change *RELOC_ADDR before calling *RESOLVE, because it might call the function we are relocating!
Diffstat (limited to 'Makerules')
-rw-r--r-- | Makerules | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/Makerules b/Makerules index 0310b000c4..27053f31e8 100644 --- a/Makerules +++ b/Makerules @@ -493,7 +493,11 @@ LDFLAGS-c.so = -nostdlib -nostartfiles # Give libc.so an entry point and make it directly runnable itself. LDFLAGS-c.so += -e __libc_print_version # Use our own special initializer and finalizer files for libc.so. +ifeq (elf, $(subdir)) +elfobjdir := . +else elfobjdir := $(firstword $(objdir) $(..)elf) +endif $(common-objpfx)libc.so: $(elfobjdir)/soinit.so \ $(common-objpfx)libc_pic.a \ $(elfobjdir)/sofini.so $(elfobjdir)/ld.so |