mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-30 22:43:12 +03:00
Update.
1998-03-11 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Use _dl_debug_message. 1998-03-12 Matthias Urlichs <smurf@noris.de> * 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 <schwab@issan.informatik.uni-dortmund.de> * aclocal.m4 (LIBC_PROG_FOO_GNU): Fix order of redirection. 1998-03-11 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/Dist: Add scsi/scsi.h. * sysdeps/unix/sysv/linux/scsi/sg.h: Include features.h. 1998-03-10 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * 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 <schwab@issan.informatik.uni-dortmund.de>
This commit is contained in:
28
ChangeLog
28
ChangeLog
@ -1,4 +1,30 @@
|
|||||||
Wed Mar 11 10:30:53 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
|
1998-03-11 Andreas Jaeger <aj@arthur.rhein-neckar.de>
|
||||||
|
|
||||||
|
* sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Use
|
||||||
|
_dl_debug_message.
|
||||||
|
|
||||||
|
1998-03-12 Matthias Urlichs <smurf@noris.de>
|
||||||
|
|
||||||
|
* 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 <schwab@issan.informatik.uni-dortmund.de>
|
||||||
|
|
||||||
|
* aclocal.m4 (LIBC_PROG_FOO_GNU): Fix order of redirection.
|
||||||
|
|
||||||
|
1998-03-11 Ulrich Drepper <drepper@cygnus.com>
|
||||||
|
|
||||||
|
* sysdeps/unix/sysv/linux/Dist: Add scsi/scsi.h.
|
||||||
|
|
||||||
|
* sysdeps/unix/sysv/linux/scsi/sg.h: Include features.h.
|
||||||
|
|
||||||
|
1998-03-10 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
|
||||||
|
|
||||||
|
* 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 <schwab@issan.informatik.uni-dortmund.de>
|
||||||
|
|
||||||
* sysdeps/m68k/elf/start.S: Let __libc_start_main do most of the
|
* sysdeps/m68k/elf/start.S: Let __libc_start_main do most of the
|
||||||
init stuff.
|
init stuff.
|
||||||
|
2
aclocal.m4
vendored
2
aclocal.m4
vendored
@ -94,7 +94,7 @@ cross_compiling=$ac_cv_prog_cc_cross
|
|||||||
AC_DEFUN(LIBC_PROG_FOO_GNU,
|
AC_DEFUN(LIBC_PROG_FOO_GNU,
|
||||||
[# Most GNU programs take a -v and spit out some text including
|
[# 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.
|
# the word 'GNU'. Some try to read stdin, so give them /dev/null.
|
||||||
if $1 -v </dev/null 2>&1 | grep GNU 2>&1 > /dev/null; then
|
if $1 -v </dev/null 2>&1 | grep GNU > /dev/null 2>&1; then
|
||||||
$2
|
$2
|
||||||
else
|
else
|
||||||
$3
|
$3
|
||||||
|
@ -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)
|
if (*ref == NULL || ELFW(ST_BIND) ((*ref)->st_info) != STB_WEAK)
|
||||||
/* We could find no value for a strong reference. */
|
/* 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] ?: "<main program>")),
|
||||||
make_string (undefined_msg, undef_name));
|
make_string (undefined_msg, undef_name));
|
||||||
*ref = NULL;
|
*ref = NULL;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (_dl_debug_bindings)
|
if (_dl_debug_bindings)
|
||||||
_dl_debug_message (1, "binding file ", reference_name, " to ",
|
_dl_debug_message (1, "binding file ",
|
||||||
current_value.m->l_name[0]
|
(reference_name && reference_name[0]
|
||||||
|
? reference_name
|
||||||
|
: (_dl_argv[0] ?: "<main program>")),
|
||||||
|
" to ", current_value.m->l_name[0]
|
||||||
? current_value.m->l_name : _dl_argv[0],
|
? current_value.m->l_name : _dl_argv[0],
|
||||||
": symbol `", undef_name, "'\n", NULL);
|
": 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)
|
if (_dl_debug_bindings)
|
||||||
_dl_debug_message (1, "binding file ", reference_name, " to ",
|
_dl_debug_message (1, "binding file ",
|
||||||
current_value.m->l_name[0]
|
(reference_name && reference_name[0]
|
||||||
|
? reference_name
|
||||||
|
: (_dl_argv[0] ?: "<main program>")),
|
||||||
|
" to ", current_value.m->l_name[0]
|
||||||
? current_value.m->l_name : _dl_argv[0],
|
? current_value.m->l_name : _dl_argv[0],
|
||||||
": symbol `", undef_name, "'\n", NULL);
|
": symbol `", undef_name, "' (skip)\n", NULL);
|
||||||
|
|
||||||
*ref = current_value.s;
|
*ref = current_value.s;
|
||||||
return current_value.m->l_addr;
|
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)
|
if (res < 0)
|
||||||
/* Oh, oh. The file named in the relocation entry does not
|
/* Oh, oh. The file named in the relocation entry does not
|
||||||
contain the needed symbol. */
|
contain the needed symbol. */
|
||||||
_dl_signal_error (0, (*reference_name
|
_dl_signal_error (0, (reference_name && reference_name[0]
|
||||||
? reference_name
|
? reference_name
|
||||||
: (_dl_argv[0] ?: "<main program>")),
|
: (_dl_argv[0] ?: "<main program>")),
|
||||||
make_string ("symbol ", undef_name, ", version ",
|
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)
|
if (*ref == NULL || ELFW(ST_BIND) ((*ref)->st_info) != STB_WEAK)
|
||||||
/* We could find no value for a strong reference. */
|
/* 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] ?: "<main program>")),
|
||||||
make_string (undefined_msg, undef_name,
|
make_string (undefined_msg, undef_name,
|
||||||
", version ", version->name ?: NULL));
|
", version ", version->name ?: NULL));
|
||||||
*ref = NULL;
|
*ref = NULL;
|
||||||
@ -342,8 +352,11 @@ _dl_lookup_versioned_symbol (const char *undef_name, const ElfW(Sym) **ref,
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (_dl_debug_bindings)
|
if (_dl_debug_bindings)
|
||||||
_dl_debug_message (1, "binding file ", reference_name, " to ",
|
_dl_debug_message (1, "binding file ",
|
||||||
current_value.m->l_name[0]
|
(reference_name && reference_name[0]
|
||||||
|
? reference_name
|
||||||
|
: (_dl_argv[0] ?: "<main program>")),
|
||||||
|
" to ", current_value.m->l_name[0]
|
||||||
? current_value.m->l_name : _dl_argv[0],
|
? current_value.m->l_name : _dl_argv[0],
|
||||||
": symbol `", undef_name, "' [", version->name,
|
": symbol `", undef_name, "' [", version->name,
|
||||||
"]\n", NULL);
|
"]\n", NULL);
|
||||||
@ -389,18 +402,24 @@ _dl_lookup_versioned_symbol_skip (const char *undef_name,
|
|||||||
char buf[sizeof undefined_msg + len];
|
char buf[sizeof undefined_msg + len];
|
||||||
__mempcpy (__mempcpy (buf, undefined_msg, sizeof undefined_msg - 1),
|
__mempcpy (__mempcpy (buf, undefined_msg, sizeof undefined_msg - 1),
|
||||||
undef_name, len + 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] ?: "<main program>")), buf);
|
||||||
}
|
}
|
||||||
*ref = NULL;
|
*ref = NULL;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (_dl_debug_bindings)
|
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] ?: "<main program>")),
|
||||||
|
" to ",
|
||||||
current_value.m->l_name[0]
|
current_value.m->l_name[0]
|
||||||
? current_value.m->l_name : _dl_argv[0],
|
? current_value.m->l_name : _dl_argv[0],
|
||||||
": symbol `", undef_name, "' [", version->name,
|
": symbol `", undef_name, "' [", version->name,
|
||||||
"]\n", NULL);
|
"] (skip)\n", NULL);
|
||||||
|
|
||||||
*ref = current_value.s;
|
*ref = current_value.s;
|
||||||
return current_value.m->l_addr;
|
return current_value.m->l_addr;
|
||||||
|
@ -77,7 +77,7 @@ _dl_sysdep_read_whole_file (const char *file, size_t *sizep, int prot)
|
|||||||
|
|
||||||
|
|
||||||
/* Descriptor to write debug messages to. */
|
/* Descriptor to write debug messages to. */
|
||||||
int _dl_debug_fd;
|
int _dl_debug_fd = 2;
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
@ -122,7 +122,9 @@ _dl_debug_message (int new_line, const char *msg, ...)
|
|||||||
if (new_line)
|
if (new_line)
|
||||||
{
|
{
|
||||||
char buf[7] = "00000:\t";
|
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;
|
new_line = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,3 +1,8 @@
|
|||||||
|
1998-03-11 Ulrich Drepper <drepper@cygnus.com>
|
||||||
|
|
||||||
|
* locales/de_DE: Use common german data and time format not ISO
|
||||||
|
8601.
|
||||||
|
|
||||||
1998-03-08 Ulrich Drepper <drepper@cygnus.com>
|
1998-03-08 Ulrich Drepper <drepper@cygnus.com>
|
||||||
|
|
||||||
* locales/ru_RU: Correct inconsistencies in mon data.
|
* locales/ru_RU: Correct inconsistencies in mon data.
|
||||||
|
@ -2197,7 +2197,7 @@ mon "<J><a><n><u><a><r>";/
|
|||||||
"<N><o><v><e><m><b><e><r>";/
|
"<N><o><v><e><m><b><e><r>";/
|
||||||
"<D><e><z><e><m><b><e><r>"
|
"<D><e><z><e><m><b><e><r>"
|
||||||
d_t_fmt "<%><a><SP><%><d><SP><%><b><SP><%><Y><SP><%><T><SP><%><Z>"
|
d_t_fmt "<%><a><SP><%><d><SP><%><b><SP><%><Y><SP><%><T><SP><%><Z>"
|
||||||
d_fmt "<%><Y><-><%><m><-><%><d>"
|
d_fmt "<%><d><.><%><m><.><%><Y>"
|
||||||
t_fmt "<%><T>"
|
t_fmt "<%><T>"
|
||||||
am_pm "";""
|
am_pm "";""
|
||||||
t_fmt_ampm ""
|
t_fmt_ampm ""
|
||||||
|
@ -57,7 +57,7 @@ _dl_load_cache_lookup (const char *name)
|
|||||||
|
|
||||||
/* Print a message if the loading of libs is traced. */
|
/* Print a message if the loading of libs is traced. */
|
||||||
if (_dl_debug_libs)
|
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)
|
if (cache == NULL)
|
||||||
{
|
{
|
||||||
@ -106,7 +106,7 @@ _dl_load_cache_lookup (const char *name)
|
|||||||
|
|
||||||
/* Print our result if wanted. */
|
/* Print our result if wanted. */
|
||||||
if (_dl_debug_libs && best != NULL)
|
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;
|
return best;
|
||||||
}
|
}
|
||||||
|
@ -44,6 +44,7 @@ rt_sigreturn.c
|
|||||||
rt_sigsuspend.c
|
rt_sigsuspend.c
|
||||||
rt_sigtimedwait.c
|
rt_sigtimedwait.c
|
||||||
scsi/sg.h
|
scsi/sg.h
|
||||||
|
scsi/scsi.h
|
||||||
sys/acct.h
|
sys/acct.h
|
||||||
sys/debugreg.h
|
sys/debugreg.h
|
||||||
sys/fsuid.h
|
sys/fsuid.h
|
||||||
|
@ -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/user.h sys/sysmacros.h sys/procfs.h sys/prctl.h \
|
||||||
sys/debugreg.h sys/kd.h sys/soundcard.h sys/vt.h \
|
sys/debugreg.h sys/kd.h sys/soundcard.h sys/vt.h \
|
||||||
sys/quota.h sys/fsuid.h bits/mman.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
|
install-others += $(inst_includedir)/bits/syscall.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.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
@ -26,6 +26,8 @@
|
|||||||
#ifndef _SCSI_SG_H
|
#ifndef _SCSI_SG_H
|
||||||
#define _SCSI_SG_H 1
|
#define _SCSI_SG_H 1
|
||||||
|
|
||||||
|
#include <features.h>
|
||||||
|
|
||||||
/* An SG device is accessed by writing "packets" to it, the replies
|
/* 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
|
are then read using the read call. The same header is used for
|
||||||
replies; ignore the reply_len field. */
|
replies; ignore the reply_len field. */
|
||||||
|
Reference in New Issue
Block a user