| Age | Commit message (Collapse) | Author | Files | Lines |
|
Even though the alloca usage is relatively small and fixed size the code
can be written without using alloca. Convert to local variables.
Checked on x86_64-linux-gnu.
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
|
|
|
|
|
|
This patch is split out of
<https://sourceware.org/pipermail/libc-alpha/2022-December/144122.html>.
atoi has undefined behavior on out-of-range input, which makes it
problematic to use anywhere in glibc that might be processing input
out-of-range for atoi but not specified to produce undefined behavior
for the function calling atoi. Change some uses of atoi to call
strtol instead; this avoids the undefined behavior, though there is no
guarantee that the overflow handling of strtol is really right in
those places either. This also serves to avoid localplt test failures
given an installed header redirection for strtol (which means that the
call from the inline atoi implementation doesn't end up at a hidden
alias from libc_hidden_proto).
Certainly, the use of atoi is questionable in argp-help.c (shared with
gnulib, so shouldn't depend on glibc implementation details, and
processing user-provided input), and maybe also in argp-parse.c (I'm
not sure what that code in argp-parse.c is meant to be used for). I
also changed inet/rexec.c and resolv/res_init.c similarly to use
strtol to avoid such localplt failures, although given those files (in
those versions) are only used in glibc it's not problematic for them
to rely on the specific behavior of glibc's atoi on out-of-range input
(in the absence of compiler optimizations based on the undefined
behavior) in the same way it's problematic for gnulib code to do so.
There may be other uses of atoi (or atol or atoll), in any of glibc's
installed code, for which it would also be appropriate to avoid the
undefined behavior on out-of-range input; this patch only fixes the
specific cases needed to avoid localplt failures.
Tested for x86_64.
|
|
I used these shell commands:
../glibc/scripts/update-copyrights $PWD/../gnulib/build-aux/update-copyright
(cd ../glibc && git commit -am"[this commit message]")
and then ignored the output, which consisted lines saying "FOO: warning:
copyright statement not found" for each of 7061 files FOO.
I then removed trailing white space from math/tgmath.h,
support/tst-support-open-dev-null-range.c, and
sysdeps/x86_64/multiarch/strlen-vec.S, to work around the following
obscure pre-commit check failure diagnostics from Savannah. I don't
know why I run into these diagnostics whereas others evidently do not.
remote: *** 912-#endif
remote: *** 913:
remote: *** 914-
remote: *** error: lines with trailing whitespace found
...
remote: *** error: sysdeps/unix/sysv/linux/statx_cp.c: trailing lines
|
|
I used these shell commands:
../glibc/scripts/update-copyrights $PWD/../gnulib/build-aux/update-copyright
(cd ../glibc && git commit -am"[this commit message]")
and then ignored the output, which consisted lines saying "FOO: warning:
copyright statement not found" for each of 6694 files FOO.
I then removed trailing white space from benchtests/bench-pthread-locks.c
and iconvdata/tst-iconv-big5-hkscs-to-2ucs4.c, to work around this
diagnostic from Savannah:
remote: *** pre-commit check failed ...
remote: *** error: lines with trailing whitespace found
remote: error: hook declined to update refs/heads/master
|
|
|
|
Also, change sources.redhat.com to sourceware.org.
This patch was automatically generated by running the following shell
script, which uses GNU sed, and which avoids modifying files imported
from upstream:
sed -ri '
s,(http|ftp)(://(.*\.)?(gnu|fsf|sourceware)\.org($|[^.]|\.[^a-z])),https\2,g
s,(http|ftp)(://(.*\.)?)sources\.redhat\.com($|[^.]|\.[^a-z]),https\2sourceware.org\4,g
' \
$(find $(git ls-files) -prune -type f \
! -name '*.po' \
! -name 'ChangeLog*' \
! -path COPYING ! -path COPYING.LIB \
! -path manual/fdl-1.3.texi ! -path manual/lgpl-2.1.texi \
! -path manual/texinfo.tex ! -path scripts/config.guess \
! -path scripts/config.sub ! -path scripts/install-sh \
! -path scripts/mkinstalldirs ! -path scripts/move-if-change \
! -path INSTALL ! -path locale/programs/charmap-kw.h \
! -path po/libc.pot ! -path sysdeps/gnu/errlist.c \
! '(' -name configure \
-execdir test -f configure.ac -o -f configure.in ';' ')' \
! '(' -name preconfigure \
-execdir test -f preconfigure.ac ';' ')' \
-print)
and then by running 'make dist-prepare' to regenerate files built
from the altered files, and then executing the following to cleanup:
chmod a+x sysdeps/unix/sysv/linux/riscv/configure
# Omit irrelevant whitespace and comment-only changes,
# perhaps from a slightly-different Autoconf version.
git checkout -f \
sysdeps/csky/configure \
sysdeps/hppa/configure \
sysdeps/riscv/configure \
sysdeps/unix/sysv/linux/csky/configure
# Omit changes that caused a pre-commit check to fail like this:
# remote: *** error: sysdeps/powerpc/powerpc64/ppc-mcount.S: trailing lines
git checkout -f \
sysdeps/powerpc/powerpc64/ppc-mcount.S \
sysdeps/unix/sysv/linux/s390/s390-64/syscall.S
# Omit change that caused a pre-commit check to fail like this:
# remote: *** error: sysdeps/sparc/sparc64/multiarch/memcpy-ultra3.S: last line does not end in newline
git checkout -f sysdeps/sparc/sparc64/multiarch/memcpy-ultra3.S
|
|
* All files with FSF copyright notices: Update copyright dates
using scripts/update-copyrights.
* locale/programs/charmap-kw.h: Regenerated.
* locale/programs/locfile-kw.h: Likewise.
|
|
* All files with FSF copyright notices: Update copyright dates
using scripts/update-copyrights.
* locale/programs/charmap-kw.h: Regenerated.
* locale/programs/locfile-kw.h: Likewise.
|
|
Mark internal argp functions with attribute_hidden to allow direct
access to them within libc.so and libc.a without using GOT nor PLT.
[BZ #18822]
* argp/argp-fmtstream.c: Include <argp-fmtstream.h>.
* argp/argp-fs-xinl.c: Likewise.
* argp/argp-help.c: Include <argp.h> and <argp-fmtstream.h>.
* argp/argp-parse.c: Include <argp.h>.
* argp/argp-xinl.c: Likewise.
* include/argp-fmtstream.h: New file.
* include/argp.h (__argp_error): Add attribute_hidden.
(__argp_failure): Likewise.
(__argp_input): Likewise.
(__argp_state_help): Likewise.
|
|
|
|
|
|
|
|
|
|
|
|
in utilities.
|
|
|
|
|
|
|
|
|
|
2004-03-08 Paul Eggert <eggert@cs.ucla.edu>
Merge from gnulib. We now assume C89 or better.
* posix/getopt1.c (const): Remove.
* posix/getopt.c (const): Likewise.
* posix/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
_getopt_long_only_r, main): Use prototypes, not old-style definitions.
* posix/getopt.c (exchange, _getopt_initialize, _getopt_internal_r,
_getopt_internal, getopt, main): Likewise.
* posix/getopt.h (getopt, getopt_long, getopt_long_only): Likewise.
* posix/getopt.c [!defined VMS || !HAVE_STRING_H]:
Include <string.h> regardless. No need for <strings.h>.
[!defined _LIBC]: Include "gettext.h" rather than rolling it ourselves.
(_): Define to gettext always.
(my_index): Remove: all uses changed to strchr.
(strlen): Remove declaration.
* posix/getopt.h (struct option.name): Always const char *.
2004-03-08 Marcus Brinkmann <marcus@gnu.org>
* posix/getopt.h (_getopt_internal): Move to ...
* posix/getopt_int.h: ... here. New file.
* include/getopt_int.h: New file.
* include/getopt.h: Remove libc_hidden_proto for getopt_long
and getopt_long_only.
* posix/getopt1.c: Include "getopt_int.h". Remove
libc_hidden_def for getopt_long and getopt_long_only.
(_getopt_long_r, _getopt_long_only_r): New functions.
* posix/getopt.c: Include "getopt_int.h".
(__getopt_initialized): Variable removed.
(nextchar, ordering, posixly_correct, first_nonopt, last_nonopt):
Static variables removed.
(nonoption_flags_max_len, nonoption_flags_len) [_LIBC &&
USE_NONOPTION_FLAGS]: Static variables removed.
(getopt_data): New static variable.
(SWAP_FLAGS): Use d->__nonoption_flags_len instead
nonoption_flags_len.
(exchange): Add new argument D of type struct getopt_data *.
Replace optind with d->optind, optarg with d->optarg, opterr with
d->opterr, optopt with d->optopt, nextchar with d->__nextchar,
first_nonopt with d->__first_nonopt, last_nonopt with
d->__last_nonopt, d->ordering with d->__ordering,
d->posixly_correct with d->__posixly_correct (which is now an
int instead a string, so fix users), nonoption_flags_len
with d->__nonoption_flags_len, nonoption_flags_max_len with
d->__nonoption_flags_max_len.
(_getopt_initialize): Likewise.
(_getopt_internal): Rename to ...
(_getopt_internal_r): ... this. Also add new argument D of type
struct getopt_data * and use of members of D rather than global or
static variables as described for exchange() above. Add new argument
to invocations of _getopt_initialize and exchange.
(_getopt_internal): Reimplement in terms of _getopt_internal_r.
* argp/argp-parse.c: Include <getopt_int.h>.
[_LIBC]: Do not include <bits/libc-lock.h>.
[!_LIBC && HAVE_CTHREADS_H]: Do not include <cthreads.h>.
[!_LIBC] (_argp_hang): Make static.
(getopt_lock, LOCK_GETOPT, UNLOCK_GETOPT): Remove.
(_argp_unlock_xxx): Remove.
(parser_init): Do not use LOCK_GETOPT.
(parser_finalize): Do not use UNLOCK_GETOPT.
(struct parser): New member OPT_DATA.
(parser_init): Initialize parser->opt_data. Use
parser->opt_data.opterr instead of opterr.
(parser_parse_opt): Use parser->opt_data.optarg instead optarg.
(parser_parse_next): Likewise. Use parser->opt_data.optind
instead optind. Use parser->opt_data.optopt instead of optopt.
Call _getopt_long_only_r and _getopt_long_r instead of
getopt_long_only and getopt_long, and pass the extra argument.
|
|
2003-10-10 Simon Josefsson <jas@extundo.com>
* argp/argp-namefrob.h [!_LIBC]: Include mempcpy.h, strcase.h,
strchrnul.h, strndup.h (from gnulib).
* argp/argp-parse.c: Add alloca.h include snippet verbatim from
Autoconf manual.
* argp/argp-help.c: Replace alloca.h include snipper with verbatim
Autoconf manual version.
* argp/argp.h: Map __restrict to restrict or empty string when
necessary, copied verbatim from posix/regex.h.
|
|
2003-08-22 Simon Josefsson <jas@extundo.com>
* argp/argp-fmtstream.h [!__attribute__]: Define to nothing.
* argp/argp-help.c: Don't include malloc.h, some platforms
complain and it doesn't appear to be used.
[!_LIBC && HAVE_STRERROR_R && !HAVE_DECL_STRERROR_R]: Declare
strerror_r.
[!_LIBC && !HAVE_STRERROR_R && !HAVE_DECL_STRERROR]: Declare
strerror.
(hol_entry_long_iterate): Change __attribute to __attribute__.
(_help, __argp_error, __argp_failure) [!_LIBC && (HAVE_FLOCKFILE
&& HAVE_FUNLOCKFILE)]: Protect call to flockfile and funlockfile.
(__argp_basename) [!_LIBC]: New. Taken from LSH, by Niels Möller,
modifed after comments from Ulrich Drepper.
(__argp_short_program_name): Ditto.
(__argp_state_help, __argp_error, __argp_failure): Use it.
(__argp_failure): Use strerror when necessary.
* argp/argp-namefrob.h (__flockfile, __funlockfile, __mempcpy)
(__strchrnul, __strerror_r, __strndup) [!_LIBC]: Remove __-prefix.
(clearerr_unlocked, feof_unlocked, ferror_unlocked)
(fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked)
(fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked)
(putc_unlocked, putchar_unlocked) [!_LIBC && !HAVE_DECL_*]: Map to
non-unlocked functions.
[!_LIBC]: Add prototypes for __argp_basename and
__argp_short_program_name.
* argp/argp-parse.c (argp_default_parser): Only use
program_invocation{_short,}_name if declared.
(parser_init): Use __argp_short_program_name.
* argp/argp-xinl.c [_LIBC || HAVE_FEATURES_H]: Add CPP check for
'#include features.h'.
* argp/argp.h [!__attribute__]: Define to nothing.
|
|
2002-04-08 Ulrich Drepper <drepper@redhat.com>
* Makeconfig (CPPFLAGS): Also add CPPFLAGS-<basename> where <basename>
is the name of the source file without extension.
* Makefile (distribute): Add cppflags-iterator.mk.
* cppflags-iterator.mk: New file.
* extra-lib.mk: For the sources of the library run
cppflags-iterator.mk.
* include/libintl.h: Declare __dcgettext_internal and
_libc_intl_domainname_internal. Define __dcgettext using these
two symbols if used in libc itself.
* argp/argp-help.c: Define dgettext using __dcgettext_internal and
_libc_intl_domainname_internal.
* argp/argp-parse.c: Likewise.
* intl/dcgettext.c (__dcgettext): Use INTDEF to define alias.
* intl/dgettext.c: Call __dcgettext_internal instead of __dcgettext.
* intl/gettext.c: Likewise.
* locale/SYS_libc.c (_libc_intl_domainname): Use INTDEF to define
alias.
* posix/regcomp.c (gettext): Use __dcgettext_internal instead of
__dcgettext.
* posix/regex_internal.c (gettext): Likewise.
|
|
* stdio-common/itowa-digits.c (_itowa_lower_digits): Define as hidden.
(_itowa_upper_digits): Likewise.
* libio/stdio.c (_IO_stdin, _IO_stdout, _IO_stderr): Define as hidden.
* libio/libio.h [_LIBC] (_IO_stdin, _IO_stdout, _IO_stderr): Declare
as hidden.
* libio/libioP.h: Declare _IO_file_jumps_mmap, _IO_wfile_jumps,
_IO_wfile_jumps_mmap, _IO_proc_jumps, _IO_old_proc_jumps,
_IO_str_jumps, _IO_wstr_jumps, _IO_file_jumps_internal,
_IO_wfile_jumps_internal, and _IO_list_all_internal as hidden.
* gmon/gmon.c (__bb_head): Define as hidden.
* gmon/bb_exit_func.c (__bb_head): Declare as hidden.
* argp/argp-parse.c (_argp_hang): Define as static.
* include/libc-symbols.h (_INTVARDEF): Adjust for visibility
handling in latest compilers.
* inet/in6_addr.c (in6addr_any): Use INTVARDEF not INTDEF to
define alias.
* libio/fileops.c (_IO_file_jumps): Likewise.
* libio/stdfiles.c (_IO_list_all): Likewise.
* libio/wfileops.c (_IO_wfile_jumps): Likewise.
* malloc/malloc.h: Move __libc_malloc_initialized declaration to
include/malloc.h.
* include/malloc.h: Add __libc_malloc_initialized declaration
here. Mark variable hidden.
* malloc/malloc.c: Include <malloc.h> not "malloc.h".
* elf/dl-open.c (__libc_argc): Declare as hidden.
(__libc_argv): Likewise.
* sysdeps/generic/wordexp.c (__libc_argc): Declare as hidden.
(__libc_argv): Likewise.
* sysdeps/mach/hurd/i386/init-first.c: Define __libc_argc and
__libc_argv as hidden.
* sysdeps/mach/hurd/mips/init-first.c: Likewise.
* sysdeps/mach/hurd/powerpc/init-first.c: Likewise.
* sysdeps/unix/sysv/aix/init-first.c: Likewise.
* sysdeps/unix/sysv/linux/init-first.c: Likewise.
|
|
2001-07-06 Paul Eggert <eggert@twinsun.com>
* manual/argp.texi: Remove ignored LGPL copyright notice; it's
not appropriate for documentation anyway.
* manual/libc-texinfo.sh: "Library General Public License" ->
"Lesser General Public License".
2001-07-06 Andreas Jaeger <aj@suse.de>
* All files under GPL/LGPL version 2: Place under LGPL version
2.1.
|
|
* posix/regex.c (gettext): Use correct translation domain for glibc.
* argp/argp-parse.c: Use __dcgettext instead of dcgettext for glibc.
* argp/argp-help.c: Likewise.
* inet/getnameinfo.c (getnameinfo): Use __snprintf instead of snprintf.
* inet/rexec.c (rexec_af): Use __snprintf instead of snprintf.
* misc/regexp.c (__step): Use __regexec instead of regexec.
(__advance): Likewise.
* nss/digits_dots.c: Use __inet_aton instead of inet_aton.
* misc/daemon.c (daemon): Use __fork instead of fork.
|
|
2000-10-04 Ulrich Drepper <drepper@redhat.com>
* argp/argp-parse.c (argp_default_argp): Set libc as message domain.
(argp_version_argp): Likewise.
|
|
2000-10-04 Ulrich Drepper <drepper@redhat.com>
* argp/argp-help.c: Make sure we get the correct gettext and
dgettext definitions.
* argp/argp-parse.c: Likewise.
|
|
* string/endian.h: Explain the _*_ENDIAN constant values a bit
more. Patch by scarlet@mit.edu [PR libc/1799].
* io/ftwtest-sh: Add -f parameter to chmod if -R is also given.
[PR libc/1792].
* argp/argp-parse.c (parser_finalize): Reverse order in which
parsers are run for ARGP_KEY_END. [PR libc/1755].
|
|
1999-04-28 Ulrich Drepper <drepper@cygnus.com>
* manager.c (pthread_allocate_stack): Optimize initialization of new
thread descriptor.
|
|
* argp/argp-help.c: Likewise.
* argp/argp-parse.c: Likewise.
|
|
1998-03-06 12:42 Ulrich Drepper <drepper@cygnus.com>
* argp/argp.h (struct argp): Add new field domain.
* argp/argp-help.c: Change all gettext calls to dgettext and use
domain field from appropriate argp in call.
* argp/argp-parse.c: Likewise.
|
|
1997-06-21 02:48 Ulrich Drepper <drepper@cygnus.com>
* config.h.in: Add DO_STATIC_NSS.
* config.make.in: Add build-static-nss.
* elf/eval.c: Use __getdelim instead of __getline.
* locale/programs/locale.c: Correct comment.
* manual/libc.texinfo: Update copyright and date.
Remove A4 option.
* sysdeps/libm-ieee754/k_standard.c: Always return HUGE_VAL
for gamma overflow.
* sysdeps/libm-ieee754/w_gamma.c: Handle SVID and ISO C behaviour.
* sysdeps/libm-ieee754/w_gammaf.c: Likewise.
* sysdeps/libm-ieee754/w_gammalp.c: Likewise.
* po/ko.po: Update.
1997-06-13 10:06 Richard Henderson <rth@tamu.edu>
The Great Bit File Move:
* configure.in (AC_INIT): Look in include/ for features.h.
(sysnames): Add include as the final search directory.
(AC_OUTPUT): Create a bits directory in the build directory.
* Makeconfig (CPPFLAGS): Look in include/ for libc-symbols.h.
* Makefile: Make sure the target directory exists when installing
<gnu/stubs.h> and <gnu/lib-names.h>.
* csu/Makefile: Use $(compile.S) and $(compile.c) instead of
invoking $(CC) directly, as the former have the full include path.
* ansidecl.h: Removed.
* aliases.h: Moved to include/.
* alloca.h: Likewise.
* argp.h: Likewise.
* argz.h: Likewise.
* arpa/ftp.h: Likewise.
* arpa/inet.h: Likewise.
* arpa/nameser.h: Likewise.
* arpa/telnet.h: Likewise.
* arpa/tftp.h: Likewise.
* assert.h: Likewise.
* ctype.h: Likewise.
* db.h: Likewise.
* dirent.h: Likewise.
* dlfcn.h: Likewise.
* elf.h: Likewise.
* endian.h: Likewise.
* envz.h: Likewise.
* err.h: Likewise.
* errno.h: Likewise.
* error.h: Likewise.
* fcntl.h: Likewise.
* features.h: Likewise.
* fnmatch.h: Likewise.
* ftw.h: Likewise.
* getopt.h: Likewise.
* glob.h: Likewise.
* gnu-versions.h: Likewise.
* grp.h: Likewise.
* langinfo.h: Likewise.
* libc-symbols.h: Likewise.
* libgen.h: Likewise.
* libintl.h: Likewise.
* limits.h: Likewise.
* linewrap.h: Likewise.
* link.h: Likewise.
* locale.h: Likewise.
* malloc.h: Likewise.
* math.h: Likewise.
* mathcalls.h: Likewise.
* mcheck.h: Likewise.
* memory.h: Likewise.
* netdb.h: Likewise.
* netgroup.h: Likewise.
* netinet/ether.h: Likewise.
* netinet/in.h: Likewise.
* nlist.h: Likewise.
* nss.h: Likewise.
* nsswitch.h: Likewise.
* obstack.h: Likewise.
* poll.h: Likewise.
* posix1_lim.h: Likewise.
* posix2_lim.h: Likewise.
* printf.h: Likewise.
* protocols/routed.h: Likewise.
* protocols/rwhod.h: Likewise.
* protocols/talkd.h: Likewise.
* protocols/timed.h: Likewise.
* pwd.h: Likewise.
* regex.h: Likewise.
* resolv.h: Likewise.
* rpc/auth_unix.h: Likewise.
* rpc/clnt.h: Likewise.
* rpc/netdb.h: Likewise.
* rpc/pmap_clnt.h: Likewise.
* rpc/pmap_prot.h: Likewise.
* rpc/pmap_rmt.h: Likewise.
* rpc/rpc.h: Likewise.
* rpc/rpc_msg.h: Likewise.
* rpc/svc.h: Likewise.
* rpc/svc_auth.h: Likewise.
* rpc/types.h: Likewise.
* rpc/xdr.h: Likewise.
* sched.h: Likewise.
* search.h: Likewise.
* set-hooks.h: Likewise.
* setjmp.h: Likewise.
* sgtty.h: Likewise.
* shadow.h: Likewise.
* signal.h: Likewise.
* stab.def: Likewise.
* stab.h: Likewise.
* stdio.h: Likewise.
* stdlib.h: Likewise.
* string.h: Likewise.
* strings.h: Likewise.
* sys/bitypes.h: Likewise.
* sys/cdefs.h: Likewise.
* sys/dir.h: Likewise.
* sys/errno.h: Likewise.
* sys/fcntl.h: Likewise.
* sys/file.h: Likewise.
* sys/gmon.h: Likewise.
* sys/ioctl.h: Likewise.
* sys/ipc.h: Likewise.
* sys/msg.h: Likewise.
* sys/poll.h: Likewise.
* sys/queue.h: Likewise.
* sys/resource.h: Likewise.
* sys/select.h: Likewise.
* sys/sem.h: Likewise.
* sys/shm.h: Likewise.
* sys/signal.h: Likewise.
* sys/socket.h: Likewise.
* sys/stat.h: Likewise.
* sys/statfs.h: Likewise.
* sys/syslog.h: Likewise.
* sys/termios.h: Likewise.
* sys/time.h: Likewise.
* sys/timeb.h: Likewise.
* sys/times.h: Likewise.
* sys/types.h: Likewise.
* sys/uio.h: Likewise.
* sys/un.h: Likewise.
* sys/unistd.h: Likewise.
* sys/utsname.h: Likewise.
* sys/vlimit.h: Likewise.
* sys/vtimes.h: Likewise.
* sys/wait.h: Likewise.
* syscall.h: Likewise.
* syslog.h: Likewise.
* tar.h: Likewise.
* termios.h: Likewise.
* time.h: Likewise.
* ttyent.h: Likewise.
* unistd.h: Likewise.
* utime.h: Likewise.
* utmp.h: Likewise.
* values.h: Likewise.
* wchar.h: Likewise.
* wctype.h: Likewise.
* wordexp.h: Likewise.
* xlocale.h: Likewise.
* xopen_lim.h: Likewise.
* linuxthreads/sysdeps/alpha/semaphorebits.h: -> .../bits/semaphore.h.
* linuxthreads/sysdeps/powerpc/semaphorebits.h: Likewise.
* linuxthreads/sysdeps/pthread/cmpxchg/semaphorebits.h: Likewise.
* linuxthreads/sysdeps/pthread/no-cmpxchg/semaphorebits.h: Likewise.
* linuxthreads/sysdeps/pthread/libc-lock.h: -> bits/
* sysdeps/mach/libc-lock.h: Likewise.
* sysdeps/stub/libc-lock.h: Likewise.
* linuxthreads/sysdeps/pthread/stdio-lock.h: Likewise.
* linuxthreads/sysdeps/unix/sysv/linux/local_lim.h: Likewise.
* sysdeps/mach/hurd/local_lim.h: Likewise.
* sysdeps/stub/local_lim.h: Likewise.
* sysdeps/unix/sysv/linux/local_lim.h: Likewise.
* sysdeps/unix/sysv/local_lim.h: Likewise.
* sysdeps/unix/sysv/sco3.2/local_lim.h: Likewise.
* linuxthreads/sysdeps/unix/sysv/linux/posix_opt.h: Likewise.
* sysdeps/mach/hurd/posix_opt.h: Likewise.
* sysdeps/stub/posix_opt.h: Likewise.
* sysdeps/unix/bsd/posix_opt.h: Likewise.
* sysdeps/unix/bsd/ultrix4/posix_opt.h: Likewise.
* sysdeps/unix/sysv/linux/posix_opt.h: Likewise.
* math/cmathcalls.h: -> bits/
* math/mathcalls.h: Likewise.
* misc/stab.def: -> bits/
* posix/posix1_lim.h: -> bits/
* posix/posix2_lim.h: Likewise.
* sysdeps/alpha/__math.h: -> .../fpu/bits/mathinline.h
* sysdeps/i386/fpu/__math.h: Likewise.
* sysdeps/m68k/fpu/__math.h: Likewise.
* sysdeps/m68k/fpu/switch/__math.h: Likewise.
* sysdeps/powerpc/__math.h: Likewise.
* sysdeps/stub/__math.h: Likewise.
* sysdeps/alpha/bytesex.h: -> .../bits/endian.h
* sysdeps/arm/bytesex.h: Likewise.
* sysdeps/i386/bytesex.h: Likewise.
* sysdeps/m68k/bytesex.h: Likewise.
* sysdeps/mips/bytesex.h: Likewise.
* sysdeps/mips/dec/bytesex.h: Likewise.
* sysdeps/mips/mipsel/bytesex.h: Likewise.
* sysdeps/mips/p40/bytesex.h: Likewise.
* sysdeps/sparc/bytesex.h: Likewise.
* sysdeps/stub/bytesex.h: Likewise.
* sysdeps/alpha/fpu/fenvbits.h: -> .../bits/fenv.h
* sysdeps/i386/fpu/fenvbits.h: Likewise.
* sysdeps/m68k/fpu/fenvbits.h: Likewise.
* sysdeps/powerpc/fenvbits.h: Likewise.
* sysdeps/stub/fenvbits.h: Likewise.
* sysdeps/alpha/jmp_buf.h: -> .../bits/setenv.h
* sysdeps/arm/jmp_buf.h: Likewise.
* sysdeps/i386/jmp_buf.h: Likewise.
* sysdeps/m68k/jmp_buf.h: Likewise.
* sysdeps/mips/jmp_buf.h: Likewise.
* sysdeps/sparc/jmp_buf.h: Likewise.
* sysdeps/powerpc/jmp_buf.h: Likewise.
* sysdeps/stub/jmp_buf.h: Likewise.
* sysdeps/vax/jmp_buf.h: Likewise.
* sysdeps/generic/confname.h: -> bits/
* sysdeps/unix/sysv/irix4/confname.h: Likewise.
* sysdeps/unix/sysv/sco3.2.4/confname.h: Likewise.
* sysdeps/generic/gnu/types.h: -> ../bits/types.h
* sysdeps/unix/sysv/linux/alpha/gnu/types.h: Likewise.
* sysdeps/unix/sysv/linux/gnu/types.h: Likewise.
* sysdeps/generic/ioctl-types.h: -> bits/
* sysdeps/unix/s |