From bc526b60ee5c7cc9fe0540c94d72caf486a41675 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Wed, 11 Mar 1998 09:54:55 +0000 Subject: Update. 1998-03-11 Andreas Jaeger * sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Use _dl_debug_message. 1998-03-12 Matthias Urlichs * elf/dl-misc.c: Default for debug output should be stderr. * elf/dl-misc.c: Spurious garbage bytes after the PID in debug output. * elf/dl-lookup.c: reference_name may be NULL or empty. 1998-03-11 10:30 Andreas Schwab * aclocal.m4 (LIBC_PROG_FOO_GNU): Fix order of redirection. 1998-03-11 Ulrich Drepper * sysdeps/unix/sysv/linux/Dist: Add scsi/scsi.h. * sysdeps/unix/sysv/linux/scsi/sg.h: Include features.h. 1998-03-10 Andreas Schwab * sysdeps/unix/sysv/linux/scsi/scsi.h: New file. * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Install it. 1998-03-11 10:30 Andreas Schwab --- ChangeLog | 28 +++++++++++++++++++++++- aclocal.m4 | 2 +- elf/dl-lookup.c | 45 ++++++++++++++++++++++++++++----------- elf/dl-misc.c | 6 ++++-- localedata/ChangeLog | 5 +++++ localedata/locales/de_DE | 2 +- sysdeps/generic/dl-cache.c | 4 ++-- sysdeps/unix/sysv/linux/Dist | 1 + sysdeps/unix/sysv/linux/Makefile | 2 +- sysdeps/unix/sysv/linux/scsi/sg.h | 4 +++- 10 files changed, 77 insertions(+), 22 deletions(-) diff --git a/ChangeLog b/ChangeLog index 1974f0b..80619c5 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,4 +1,30 @@ -Wed Mar 11 10:30:53 1998 Andreas Schwab +1998-03-11 Andreas Jaeger + + * sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Use + _dl_debug_message. + +1998-03-12 Matthias Urlichs + + * elf/dl-misc.c: Default for debug output should be stderr. + * elf/dl-misc.c: Spurious garbage bytes after the PID in debug output. + * elf/dl-lookup.c: reference_name may be NULL or empty. + +1998-03-11 10:30 Andreas Schwab + + * aclocal.m4 (LIBC_PROG_FOO_GNU): Fix order of redirection. + +1998-03-11 Ulrich Drepper + + * sysdeps/unix/sysv/linux/Dist: Add scsi/scsi.h. + + * sysdeps/unix/sysv/linux/scsi/sg.h: Include features.h. + +1998-03-10 Andreas Schwab + + * sysdeps/unix/sysv/linux/scsi/scsi.h: New file. + * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Install it. + +1998-03-11 10:30 Andreas Schwab * sysdeps/m68k/elf/start.S: Let __libc_start_main do most of the init stuff. diff --git a/aclocal.m4 b/aclocal.m4 index c995e45..2842963 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -94,7 +94,7 @@ cross_compiling=$ac_cv_prog_cc_cross AC_DEFUN(LIBC_PROG_FOO_GNU, [# Most GNU programs take a -v and spit out some text including # the word 'GNU'. Some try to read stdin, so give them /dev/null. -if $1 -v &1 | grep GNU 2>&1 > /dev/null; then +if $1 -v &1 | grep GNU > /dev/null 2>&1; then $2 else $3 diff --git a/elf/dl-lookup.c b/elf/dl-lookup.c index f2cd981..b994ef7 100644 --- a/elf/dl-lookup.c +++ b/elf/dl-lookup.c @@ -229,15 +229,20 @@ _dl_lookup_symbol (const char *undef_name, const ElfW(Sym) **ref, { if (*ref == NULL || ELFW(ST_BIND) ((*ref)->st_info) != STB_WEAK) /* We could find no value for a strong reference. */ - _dl_signal_error (0, reference_name, + _dl_signal_error (0, (reference_name && reference_name[0] + ? reference_name + : (_dl_argv[0] ?: "
")), make_string (undefined_msg, undef_name)); *ref = NULL; return 0; } if (_dl_debug_bindings) - _dl_debug_message (1, "binding file ", reference_name, " to ", - current_value.m->l_name[0] + _dl_debug_message (1, "binding file ", + (reference_name && reference_name[0] + ? reference_name + : (_dl_argv[0] ?: "
")), + " to ", current_value.m->l_name[0] ? current_value.m->l_name : _dl_argv[0], ": symbol `", undef_name, "'\n", NULL); @@ -281,10 +286,13 @@ _dl_lookup_symbol_skip (const char *undef_name, const ElfW(Sym) **ref, } if (_dl_debug_bindings) - _dl_debug_message (1, "binding file ", reference_name, " to ", - current_value.m->l_name[0] + _dl_debug_message (1, "binding file ", + (reference_name && reference_name[0] + ? reference_name + : (_dl_argv[0] ?: "
")), + " to ", current_value.m->l_name[0] ? current_value.m->l_name : _dl_argv[0], - ": symbol `", undef_name, "'\n", NULL); + ": symbol `", undef_name, "' (skip)\n", NULL); *ref = current_value.s; return current_value.m->l_addr; @@ -318,7 +326,7 @@ _dl_lookup_versioned_symbol (const char *undef_name, const ElfW(Sym) **ref, if (res < 0) /* Oh, oh. The file named in the relocation entry does not contain the needed symbol. */ - _dl_signal_error (0, (*reference_name + _dl_signal_error (0, (reference_name && reference_name[0] ? reference_name : (_dl_argv[0] ?: "
")), make_string ("symbol ", undef_name, ", version ", @@ -334,7 +342,9 @@ _dl_lookup_versioned_symbol (const char *undef_name, const ElfW(Sym) **ref, { if (*ref == NULL || ELFW(ST_BIND) ((*ref)->st_info) != STB_WEAK) /* We could find no value for a strong reference. */ - _dl_signal_error (0, reference_name, + _dl_signal_error (0, (reference_name && reference_name[0] + ? reference_name + : (_dl_argv[0] ?: "
")), make_string (undefined_msg, undef_name, ", version ", version->name ?: NULL)); *ref = NULL; @@ -342,8 +352,11 @@ _dl_lookup_versioned_symbol (const char *undef_name, const ElfW(Sym) **ref, } if (_dl_debug_bindings) - _dl_debug_message (1, "binding file ", reference_name, " to ", - current_value.m->l_name[0] + _dl_debug_message (1, "binding file ", + (reference_name && reference_name[0] + ? reference_name + : (_dl_argv[0] ?: "
")), + " to ", current_value.m->l_name[0] ? current_value.m->l_name : _dl_argv[0], ": symbol `", undef_name, "' [", version->name, "]\n", NULL); @@ -389,18 +402,24 @@ _dl_lookup_versioned_symbol_skip (const char *undef_name, char buf[sizeof undefined_msg + len]; __mempcpy (__mempcpy (buf, undefined_msg, sizeof undefined_msg - 1), undef_name, len + 1); - _dl_signal_error (0, reference_name, buf); + _dl_signal_error (0, (reference_namee && reference_name[0] + ? reference_name + : (_dl_argv[0] ?: "
")), buf); } *ref = NULL; return 0; } if (_dl_debug_bindings) - _dl_debug_message (1, "binding file ", reference_name, " to ", + _dl_debug_message (1, "binding file ", + (reference_name && reference_name[0] + ? reference_name + : (_dl_argv[0] ?: "
")), + " to ", current_value.m->l_name[0] ? current_value.m->l_name : _dl_argv[0], ": symbol `", undef_name, "' [", version->name, - "]\n", NULL); + "] (skip)\n", NULL); *ref = current_value.s; return current_value.m->l_addr; diff --git a/elf/dl-misc.c b/elf/dl-misc.c index 1e13d0d..3d79636 100644 --- a/elf/dl-misc.c +++ b/elf/dl-misc.c @@ -77,7 +77,7 @@ _dl_sysdep_read_whole_file (const char *file, size_t *sizep, int prot) /* Descriptor to write debug messages to. */ -int _dl_debug_fd; +int _dl_debug_fd = 2; void @@ -122,7 +122,9 @@ _dl_debug_message (int new_line, const char *msg, ...) if (new_line) { char buf[7] = "00000:\t"; - __write (_dl_debug_fd, _itoa_word (pid, &buf[5], 10, 0), 7); + assert (pid >= 0 && pid < 100000); + _itoa_word (pid, &buf[5], 10, 0); + __write (_dl_debug_fd, buf, 7); new_line = 0; } diff --git a/localedata/ChangeLog b/localedata/ChangeLog index e968fe0..05b3b0b 100644 --- a/localedata/ChangeLog +++ b/localedata/ChangeLog @@ -1,3 +1,8 @@ +1998-03-11 Ulrich Drepper + + * locales/de_DE: Use common german data and time format not ISO + 8601. + 1998-03-08 Ulrich Drepper * locales/ru_RU: Correct inconsistencies in mon data. diff --git a/localedata/locales/de_DE b/localedata/locales/de_DE index b13f52f..c3e90eb 100644 --- a/localedata/locales/de_DE +++ b/localedata/locales/de_DE @@ -2197,7 +2197,7 @@ mon "";/ "";/ "" d_t_fmt "<%><%><%><%><%><%>" -d_fmt "<%><-><%><-><%>" +d_fmt "<%><.><%><.><%>" t_fmt "<%>" am_pm "";"" t_fmt_ampm "" diff --git a/sysdeps/generic/dl-cache.c b/sysdeps/generic/dl-cache.c index 2a2be57..c885c11 100644 --- a/sysdeps/generic/dl-cache.c +++ b/sysdeps/generic/dl-cache.c @@ -57,7 +57,7 @@ _dl_load_cache_lookup (const char *name) /* Print a message if the loading of libs is traced. */ if (_dl_debug_libs) - _dl_sysdep_message ("\t search cache=", LD_SO_CACHE, "\n", NULL); + _dl_debug_message (1, " search cache=", LD_SO_CACHE, "\n", NULL); if (cache == NULL) { @@ -106,7 +106,7 @@ _dl_load_cache_lookup (const char *name) /* Print our result if wanted. */ if (_dl_debug_libs && best != NULL) - _dl_sysdep_message ("\t trying file=", best, "\n", NULL); + _dl_debug_message (1, " trying file=", best, "\n", NULL); return best; } diff --git a/sysdeps/unix/sysv/linux/Dist b/sysdeps/unix/sysv/linux/Dist index 383f617..4471224 100644 --- a/sysdeps/unix/sysv/linux/Dist +++ b/sysdeps/unix/sysv/linux/Dist @@ -44,6 +44,7 @@ rt_sigreturn.c rt_sigsuspend.c rt_sigtimedwait.c scsi/sg.h +scsi/scsi.h sys/acct.h sys/debugreg.h sys/fsuid.h diff --git a/sysdeps/unix/sysv/linux/Makefile b/sysdeps/unix/sysv/linux/Makefile index e08089e..7b53e3a 100644 --- a/sysdeps/unix/sysv/linux/Makefile +++ b/sysdeps/unix/sysv/linux/Makefile @@ -16,7 +16,7 @@ sysdep_headers += sys/mount.h sys/acct.h sys/sysctl.h sys/mtio.h \ sys/user.h sys/sysmacros.h sys/procfs.h sys/prctl.h \ sys/debugreg.h sys/kd.h sys/soundcard.h sys/vt.h \ sys/quota.h sys/fsuid.h bits/mman.h \ - scsi/sg.h sys/pci.h sys/ultrasound.h + scsi/sg.h scsi/scsi.h sys/pci.h sys/ultrasound.h install-others += $(inst_includedir)/bits/syscall.h diff --git a/sysdeps/unix/sysv/linux/scsi/sg.h b/sysdeps/unix/sysv/linux/scsi/sg.h index c0a0c3a..ae7b2cf 100644 --- a/sysdeps/unix/sysv/linux/scsi/sg.h +++ b/sysdeps/unix/sysv/linux/scsi/sg.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997 Free Software Foundation, Inc. +/* Copyright (C) 1997, 1998 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -26,6 +26,8 @@ #ifndef _SCSI_SG_H #define _SCSI_SG_H 1 +#include + /* An SG device is accessed by writing "packets" to it, the replies are then read using the read call. The same header is used for replies; ignore the reply_len field. */ -- cgit v1.1