summaryrefslogtreecommitdiff
path: root/nss
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>1996-07-03 18:51:10 +0000
committerRoland McGrath <roland@gnu.org>1996-07-03 18:51:10 +0000
commit8a594e3cb7ea389cec5043cfcfd865d2bd0b8138 (patch)
tree935db58a3859f00a437f60fe675b1748834eee00 /nss
parentf0585c83b2b70f4fb04c4c2f3611b2a5150cd888 (diff)
Wed Jul 3 11:26:28 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* time/strftime.c (strftime: do_number): Adjust P and I after sprintf in case it wrote fewer than MAXDIGITS chars. * stdio/fwrite.c (fwrite: fill_buffer): Separate flushing for last newline from flushing full buffer in loop, fix test so no fflush is done when last byte written exactly fills the buffer. * nss/Makefile ($(services:%=$(objpfx)libnss_%.so)): Depend on libc.so. * sysdeps/mach/hurd/Makefile (LDLIBS-c.so): Variable removed. (libc.so): Instead, give this deps on lib{mach,hurd}user.so. * elf/dl-debug.c (_dl_debug_initialize): Use LDBASE arg instead of extracting _dl_rtld_map.l_addr. * sysdeps/i386/dl-machine.h (elf_machine_rel): Declare _dl_rtld_map as weak. * sysdeps/alpha/dl-machine.h (elf_machine_rela): Likewise. * shlib-versions (*-*-*): Set libnss_db=1. * elf/rtld.c (dl_main): Set _dl_rtld_map's DT_DEBUG location too.
Diffstat (limited to 'nss')
-rw-r--r--nss/Makefile5
1 files changed, 5 insertions, 0 deletions
diff --git a/nss/Makefile b/nss/Makefile
index 4ab774a809..8df173cbdf 100644
--- a/nss/Makefile
+++ b/nss/Makefile
@@ -68,3 +68,8 @@ $(libnss_db-routines:%=$(objpfx)%.c): $(objpfx)db-%.c: nss_files/files-%.c
echo '#define GENERIC "../nss_db/db-XXX.c"';\
echo '#include <$<>') > $@.new
mv -f $@.new $@
+
+# Depend on libc.so so a DT_NEEDED is generated in the shared objects.
+# This ensures they will load libc.so for needed symbols if loaded by
+# a statically-linked program that hasn't already loaded it.
+$(services:%=$(objpfx)libnss_%.so): $(common-objpfx)libc.so