aboutsummaryrefslogtreecommitdiffstats
path: root/packages/glibc/glibc-2.3.2/10_cvs.patch
diff options
context:
space:
mode:
Diffstat (limited to 'packages/glibc/glibc-2.3.2/10_cvs.patch')
-rw-r--r--packages/glibc/glibc-2.3.2/10_cvs.patch177118
1 files changed, 177118 insertions, 0 deletions
diff --git a/packages/glibc/glibc-2.3.2/10_cvs.patch b/packages/glibc/glibc-2.3.2/10_cvs.patch
index e69de29bb2..0c3ecdcb40 100644
--- a/packages/glibc/glibc-2.3.2/10_cvs.patch
+++ b/packages/glibc/glibc-2.3.2/10_cvs.patch
@@ -0,0 +1,177118 @@
+--- glibc-2.3.2/CANCEL-FILE-WAIVE 1969-12-31 19:00:00.000000000 -0500
++++ glibc-2.3.2/CANCEL-FILE-WAIVE 2003-09-02 05:24:58.000000000 -0400
+@@ -0,0 +1,33 @@
++mkdtemp.os
++tmpnam.os
++tmpnam_r.os
++__assert.os
++assert.os
++assert-perr.os
++gconv_builtin.os
++gconv_simple.os
++gconv.os
++iconv.os
++strfmon.os
++strfmon_l.os
++argp-xinl.os
++iofdopen.os
++printf_fp.os
++printf_fphex.os
++printf_size.os
++strxfrm.os
++strxfrm_l.os
++strcoll.os
++strcoll_l.os
++alphasort.os
++alphasort64.os
++set-freeres.os
++btowc.os
++wctob.os
++mblen.os
++strops.os
++wstrops.os
++fmemopen.os
++closedir.os
++hsearch.os
++hsearch_r.os
+--- glibc-2.3.2/ChangeLog 2003-02-28 20:10:14.000000000 -0500
++++ glibc-2.3.2/ChangeLog 2003-09-20 09:40:33.000000000 -0400
+@@ -1,3 +1,5919 @@
++2003-09-19 Ulrich Drepper <drepper@redhat.com>
++
++ * elf/Makefile ($(objpfx)librtld.os): Create link map also for
++ final build to ease quality control.
++
++ * sysdeps/unix/sysv/linux/getcwd.c (__getcwd): If compiled for
++ ld.so, don't include NULL buffer pointer handling.
++
++2003-09-19 Jakub Jelinek <jakub@redhat.com>
++
++ * dlfcn/dlopen.c (dlopen): Add static_link_warning.
++
++2003-09-18 Jakub Jelinek <jakub@redhat.com>
++
++ * libio/memstream.c (open_memstream): Use _IO_init instead of
++ _IO_old_init.
++
++2003-09-17 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/generic/wordexp.c (eval_expr_val): Use strtol since we
++ have to recognize octal and hexadecimal numbers as well. Simplify
++ function, signs are handled in strtol.
++ * posix/wordexp-test.c: Add tests for octal and hexadecimal
++ numbers in arithmetic expressions.
++
++2003-09-17 Jakub Jelinek <jakub@redhat.com>
++
++ * elf/Makefile (distribute): Add tst-alignmod.c.
++ (tests): Add tst-align.
++ (modules-names): Add tst-alignmod.
++ (CFLAGS-tst-align.c, CFLAGS-tst-alignmod.c): Add
++ $(stack-align-test-flags).
++ ($(objpfx)tst-align): Depend on libdl.
++ ($(objpfx)tst-align.out): Depend on tst-alignmod.so.
++ * elf/tst-align.c: New file.
++ * elf/tst-alignmod.c: New file.
++ * misc/Makefile (CFLAGS-tst-tsearch.c): Add $(stack-align-test-flags).
++ * misc/tst-tsearch.c: Include tst-stack-align.h.
++ (stack_align_check): New array.
++ (cmp_fn, walk_action): Use TEST_STACK_ALIGN ().
++ (main): Report error if stack was not enough aligned
++ in cmp_fn or walk_action.
++ * stdlib/Makefile (CFLAGS-tst-qsort.c): Add $(stack-align-test-flags).
++ * stdlib/tst-qsort.c: Include tst-stack-align.h.
++ (align_check): New var.
++ (compare): Use TEST_STACK_ALIGN () macro.
++ (main): Report error if stack was not enough aligned in compare.
++ * sysdeps/i386/i686/Makefile (stack-align-test-flags): Remove
++ unneeded -mpreferred-stack-boundary=4.
++ * sysdeps/x86_64/tst-stack-align.h: New file.
++
++ * libio/memstream.c (_IO_wmem_jumps): Remove unused structure.
++ (_IO_wmem_sync, _IO_wmem_finish): Remove unused functions.
++
++2003-09-17 Philip Blundell <philb@gnu.org>
++
++ * sysdeps/arm/dl-machine.h (CALL_ROUTINE): Deleted.
++ (BX): Define.
++ (ELF_MACHINE_RUNTIME_TRAMPOLINE): Optimise a little.
++
++ * sysdeps/arm/sysdep.h (DO_RET): New.
++
++ * sysdeps/unix/sysv/linux/arm/vfork.S: Add #error if __NR_vfork
++ required but not defined. Improve test of error code.
++
++2003-09-17 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/i386/Makefile (stack-align-test-flags): Add
++ -malign-double -mpreferred-stack-boundary=4.
++
++2003-09-17 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/posix/utimes.c (__utimes): Truncate instead of round.
++ * sysdeps/unix/sysv/linux/utimes.c (__utimes): Likewise.
++
++2003-09-15 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/i386/Makefile (sysdep-CFLAGS): If not in math or csu
++ subdir, add -mpreferred-stack-boundary=4, with few exceptions.
++
++2003-09-17 Jakub Jelinek <jakub@redhat.com>
++
++ * Makeconfig (stack-align-test-flags): Set.
++ * stdlib/Makefile (CFLAGS-tst-bsearch.c): Add
++ $(stack-align-test-flags).
++ * stdlib/tst-bsearch.c: Include tst-stack-align.h.
++ (align_check): New var.
++ (comp): Use TEST_STACK_ALIGN macro.
++ (do_test): Fail if align_check != 1.
++ * sysdeps/generic/tst-stack-align.h: New file.
++ * sysdeps/i386/i686/Makefile (stack-align-test-flags): Add -msse.
++ * sysdeps/i386/i686/tst-stack-align.h: New file.
++
++2003-09-17 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/i386/clone.S: Make sure child gets a
++ stack which is aligned (mod 16).
++
++2003-09-17 Uwe Reimann <Uwe_Reimann@gmx.net>
++ Hans-Peter Nilsson <hp@axis.com>
++
++ * sysdeps/cris/dl-machine.h (elf_machine_type_class): Classify
++ R_CRIS_GLOB_DAT as ELF_RTYPE_CLASS_PLT. Clarify comment.
++
++2003-09-17 Jakub Jelinek <jakub@redhat.com>
++
++ * dirent/scandir.c: Include bits/libc-lock.h.
++ (struct scandir_cancel_struct): New type.
++ (cancel_handler): New function.
++ (SCANDIR): Add __libc_cleanup_{push,pop}, save state into
++ scandir_cancel_struct.
++
++2003-09-16 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/Dist: Remove internal_statvfs.c.
++ * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
++ Add internal_statvfs.
++ * sysdeps/unix/sysv/linux/fstatvfs.c: Call __internal_statvfs
++ instead of including "internal_statvfs.c".
++ * sysdeps/unix/sysv/linux/statvfs.c: Likewise.
++ * sysdeps/unix/sysv/linux/internal_statvfs.c: Make it a real function.
++ Add code to avoid the stat calls on all the reported mount points
++ when we can determine mismatch in advance.
++ * sysdeps/unix/sysv/linux/linux_fsinfo.h: Add AUTOFS_SUPER_MAGIC and
++ USBDEVFS_SUPER_MAGIC.
++
++2003-09-16 Jakub Jelinek <jakub@redhat.com>
++
++ * posix/Versions (sched_getaffinity, sched_setaffinity): Change
++ from GLIBC_2.3.2 to GLIBC_2.3.3 symbol version.
++
++2003-09-16 Bruno Haible <bruno@clisp.org>
++
++ * intl/tst-gettext2.sh: Set GCONV_PATH and LOCPATH only after
++ invoking msgfmt, not before.
++
++2003-09-15 Jakub Jelinek <jakub@redhat.com>
++
++ * argp/argp.h (argp_parse, __argp_parse): Remove __THROW.
++ * argp/Makefile (CFLAGS-argp-help.c, CFLAGS-argp-parse.c): Add
++ $(uses-callbacks).
++ * dirent/Makefile (CFLAGS-scandir.c, CFLAGS-scandir64.c): Likewise.
++ * elf/Makefile (CFLAGS-dl-iterate-phdr.c,
++ CFLAGS-dl-iterate-phdr-static.c): Add $(uses-callbacks).
++ * elf/dl-iteratephdr.c (cancel_handler): New function.
++ (__dl_iterate_phdr): Add __libc_cleanup_{push,pop}.
++ * elf/link.h (dl_iterate_phdr): Remove __THROW.
++ * io/Makefile (CFLAGS-fts.c): Merge into one assignment.
++ Add $(uses-callbacks).
++ (CFLAGS-ftw.c, CFLAGS-ftw64.c): Add $(uses-callbacks).
++ * misc/Makefile (CFLAGS-tsearch.c, CFLAGS-lsearch.c): Change
++ $(exceptions) to $(uses-callbacks).
++ * Makeconfig (uses-callbacks): Set to $(exceptions).
++ * posix/Makefile (CFLAGS-glob.c, CFLAGS-glob64.c): Add
++ $(uses-callbacks).
++ * stdlib/Makefile (CFLAGS-bsearch.c, CFLAGS-msort.c, CFLAGS-qsort.c):
++ Likewise.
++
++2003-09-15 Andreas Schwab <schwab@suse.de>
++
++ * sysdeps/m68k/setjmp.c: Add hidden_def.
++
++2003-09-14 Ulrich Drepper <drepper@redhat.com>
++
++ * libio/memstream.c (open_memstream): Don't allow wide char operations.
++
++ * dirent/dirent.h: Remove __THROW from scandir.
++
++2003-09-14 Philip Blundell <philb@gnu.org>
++
++ * sysdeps/unix/sysv/linux/arm/mmap.S: Use sys_mmap2 if it's known
++ to be available.
++
++ * sysdeps/unix/sysv/linux/arm/mmap64.S: Optimise code a little.
++
++ * sysdeps/arm/memset.S: Rewrite.
++
++2003-09-12 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: New.
++ (__SSIZE_T_TYPE): Define to __SWORD_TYPE for gcc 2.95.x and
++ __SLONGWORD_TYPE otherwise.
++
++2003-09-14 Ulrich Drepper <drepper@redhat.com>
++
++ * io/Makefile (CFLAGS-ftw.c): Add -fexceptions.
++ (CFLAGS-ftw64.c): Likewise.
++
++2003-09-13 Ulrich Drepper <drepper@redhat.com>
++
++ * nscd/Makefile (CFLAGS-nscd_getpw_r.c): Add -fexceptions.
++ (CFLAGS-nscd_getgr_r.c): Likewise.
++ (CFLAGS-nscd_gethst_r.c): Likewise.
++
++2003-09-12 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/if_index.c: Use only non-cancelable
++ interfaces.
++
++ * grp/Makefile (CFLAGS-getgrgid_r.c, CFLAGS-getgrnam_r.c,
++ CFLAGS-fgetgrent.c, CFLAGS-fgetgrent_r.c, CFLAGS-putgrent.c,
++ CFLAGS-initgroups.c, CFLAGS-getgrgid.c): Add -fexceptions.
++ * inet/Makefile (CFLAGS-either_ntoh.c, CFLAGS-either_hton.c,
++ CFLAGS-getnetgrent.c, CFLAGS-getnetgrent_r.c): Likewise.
++ * io/Makefile (CFLAGS-posix_fallocate.c, CFLAGS-posix_fallocate64.c):
++ Likewise.
++ * misc/Makefile (CFLAGS-err.c): Likewise.
++ * posix/Makefile (CFLAGS-getaddrinfo.c, CFLAGS-spawn.c,
++ CFLAGS-spawnp.c, CFLAGS-spawni.c, CFLAGS-pause.c, CFLAGS-glob.c,
++ CFLAGS-glob64.c): Likewise.
++ * pwd/Makefile (CFLAGS-getpw.c): Likewise.
++ * shadow/Makefile (CFLAGS-fgetspent.c, CFLAGS-fgetspent_r.c,
++ CFLAGS-putspent.c, CFLAGS-getspnam.c, CFLAGS-getspnam_r.c): Likewise.
++ * stdio-common/Makefile (CFLAGS-cuserid.c): Likewise.
++ * sunrpc/Makefile (CFLAGS-openchild.c): Likewise.
++
++ * stdlib/Makefile (CFLAGS-mkstemp.c): Remove definition.
++
++ * libio/stdio.h: Remove __THROW from cuserid prototype.
++
++ * locale/loadarchive.c: Use only non-cancelable interfaces.
++ * resolv/herror.c (herror): Likewise.
++
++ * malloc/hooks.c: Before using IO stream mark stream so it uses
++ only non-cancelable interfaces.
++ * malloc/malloc.c: Likewise.
++ * posix/getopt.c: Likewise.
++
++
++2003-09-11 Jakub Jelinek <jakub@redhat.com>
++
++ * Makerules (LDFLAGS-c.so): Remove -u __register_frame.
++
++2003-09-12 Ulrich Drepper <drepper@redhat.com>
++
++ * stdio-common/stdio_ext.h: Mark most functions with __THROW.
++
++ * misc/err.h: Remove __THROW from all prototypes.
++
++ * posix/getopt.h (__THROW): Define if not already defined. Add
++ __THROW to the getopt functions.
++
++2003-09-11 Ulrich Drepper <drepper@redhat.com>
++
++ * io/Makefile (CFLAGS-lockf.c): Add -fexceptions.
++ (CFLAGS-fts.c): Likewise.
++ * io/fcntl.h: Remove __THROW from lockf prototypes.
++ * io/fts.h: Remove most __THROW.
++
++2003-09-11 H.J. Lu <hongjiu.lu@intel.com>
++
++ * elf/tls-macros.h (TLS_IE): Add a stop bit for ia64.
++ (TLS_LD): Likewise.
++ (TLS_GD): Likewise.
++
++2003-09-11 Jakub Jelinek <jakub@redhat.com>
++
++ * libio/fileops.c (_IO_new_file_overflow): Add INTUSE to
++ _IO_free_backup_area call.
++
++2003-09-10 Chris Demetriou <cgd@broadcom.com>
++
++ * sysdeps/unix/sysv/linux/mips/pread64.c (__libc_pread64): Fix
++ syscall invocation.
++ * sysdeps/unix/sysv/linux/mips/pwrite64.c (__libc_pwrite64): Likewise.
++ * sysdeps/unix/sysv/linux/mips/pread.c (__libc_pread): Likewise.
++ Also, only assert off_t size is 4 for N32 and O32, and clean up
++ white space.
++ * sysdeps/unix/sysv/linux/mips/pwrite.c (__libc_pwrite): Likewise.
++
++2003-09-10 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr):
++ Don't use c_ispeed under [! _HAVE_STRUCT_TERMIOS_C_ISPEED].
++ Don't use c_ospeed under [! _HAVE_STRUCT_TERMIOS_C_OSPEED].
++ * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Likewise.
++ Reported by Daniel Jacobowitz <drow@mvista.com>.
++
++2003-09-10 Jakub Jelinek <jakub@redhat.com>
++
++ * string/Makefile (strop-tests): Add memccpy.
++ * string/test-memccpy.c: New test.
++
++2003-09-09 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT): Add
++ siginfo_t * argument before, change into struct ucontext *.
++ (SIGCONTEXT_EXTRA_ARGS): Define to _si,.
++ (GET_PC, GET_FRAME, GET_STACK): Adjust for ctx being a pointer
++ instead of structure.
++ * sysdeps/unix/sysv/linux/x86_64/register-dump.h (REGISTER_DUMP):
++ Likewise.
++
++2003-09-09 Ulrich Drepper <drepper@redhat.com>
++
++ * string/stratcliff.c (main): Check memccpy.
++
++2003-04-11 Jes Sorensen <jes@wildopensource.com>
++
++ * sysdeps/ia64/memccpy.S: When recovering for src_aligned and the
++ character is found during recovery, use correct register when
++ determining the position of the found character.
++
++2003-04-01 Jes Sorensen <jes@wildopensource.com>
++
++ * sysdeps/ia64/memccpy.S: Use speculatively loads for readahead to
++ avoid segfaults when reading from unmapped pages. For aligned
++ reload and continue, for misaligned, roll back and use byte copy.
++ Save ar.ec on entry and restore on exit.
++
++2003-09-09 Chris Demetriou <cgd@broadcom.com>
++
++ * sysdeps/unix/mips/sysdep.h (PSEUDO_END): Undef before defining.
++
++2003-09-08 Chris Demetriou <cgd@broadcom.com>
++
++ * sysdeps/mips/mips64/n32/Implies: Move ieee754/ldbl-128 to
++ the top of the list.
++ * sysdeps/mips/mips64/n64/Implies: Likewise.
++
++2003-09-08 Roland McGrath <roland@frob.com>
++
++ * sysdeps/unix/sysv/linux/speed.c
++ (cfsetospeed): Only set c_ospeed under [_HAVE_STRUCT_TERMIOS_C_OSPEED].
++ (cfsetispeed): Only set c_ispeed under [_HAVE_STRUCT_TERMIOS_C_ISPEED].
++ * sysdeps/unix/sysv/linux/bits/termios.h
++ (_HAVE_STRUCT_TERMIOS_C_ISPEED, _HAVE_STRUCT_TERMIOS_C_OSPEED): Define.
++ * sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise.
++ * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise.
++
++2003-09-08 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/x86_64/register-dump.h: Undo last change.
++ * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h: Likewise.
++
++2003-09-08 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/generic/bits/types.h (__quad_t): Make long int if 64-bit.
++ (__u_quad_t): Make unsigned long int if 64-bit.
++ (__SQUAD_TYPE): Make long int if 64-bit.
++ (__UQUAD_TYPE): Make unsigned long int if 64-bit.
++ * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: Remove.
++
++2003-09-08 Ulrich Drepper <drepper@redhat.com>
++
++ * Makefile (tests): Run check-c++-types.sh if possible.
++ * scripts/check-c++-types.h: New file.
++ * scripts/data/c++-types-i386-linux-gnu.data: New file.
++
++2003-09-08 Andreas Jaeger <aj@suse.de>
++
++ * sysdeps/unix/sysv/linux/x86_64/register-dump.h (register_dump):
++ Use struct sigcontext.
++
++ * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
++ Use struct sigcontext.
++ (GET_PC): Adopt.
++ (GET_FRAME): Likewise.
++ (GET_STACK): Likewise.
++
++2003-09-08 Wolfram Gloger <wg@malloc.de>
++
++ * malloc/malloc.c (sYSMALLOc): Move foreign sbrk accounting into
++ contiguous case. Bug report from Prem Gopalan <prem@mazunetworks.com>.
++ (mALLOPt): Avoid requirement of C99.
++
++2003-09-08 Ulrich Drepper <drepper@redhat.com>
++
++ * libio/bug-ftell.c: Include <sys/types.h>.
++ (main): Mark cp as const.
++
++2003-09-07 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/syscalls.list (fcntl): Remove.
++ * sysdeps/unix/sysv/linux/x86_64/fcntl.c: Remove.
++
++2003-09-05 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Fill in c_ispeed
++ and c_ospeed fields.
++ * sysdeps/unix/sysv/linux/speed.c (cfsetospeed): Set c_ospeed field.
++ (cfsetispeed): Set c_ispeed field.
++ * sysdeps/unix/sysv/linux/tcsetattr.c (IBAUD0): Define unconditionally
++ to match corresponding speed.c code.
++
++2003-09-06 Ulrich Drepper <drepper@redhat.com>
++
++ * libio/wfileops.c (_IO_wfile_underflow): Mark beginning of the
++ narrow character buffer.
++ * libio/Makefile: Add rules to build and run bug-ftell.
++ * libio/bug-ftell.c: New file.
++
++ * stdio-common/vfprintf.c: Don't use the first grouping number twice.
++
++ * stdio-common/vfscanf.c (vfscanf): Fix recognition of characters
++ matching the decimal point and possibly leading the thousands
++ separator. This caused the recognition of thousands separators to
++ always fail.
++
++2003-09-05 Ulrich Drepper <drepper@redhat.com>
++
++ * libio/fileops.c (_IO_new_file_overflow): Handle switching to
++ write mode from read in backup buffer.
++ * libio/Makefile (tests): Add bug-ungetc2.
++ * libio/bug-ungetc2.c: New file.
++
++2003-09-05 Roland McGrath <roland@redhat.com>
++
++ * nss/getXXbyYY.c (FUNCTION_NAME): Remove unused variable.
++
++2003-09-04 Roland McGrath <roland@frob.com>
++
++ * sysdeps/mach/hurd/mmap.c (__mmap): If io_map fails with MIG_BAD_ID,
++ EOPNOTSUPP, or ENOSYS, change it to ENODEV.
++
++2003-09-04 H.J. Lu <hongjiu.lu@intel.com>
++
++ * sysdeps/unix/sysv/linux/ia64/bits/sigstack.h (MINSIGSTKSZ):
++ Fix a typo.
++
++2003-09-05 Andreas Jaeger <aj@suse.de>
++
++ * sysdeps/i386/bits/string.h (__memrchr): Do addition in assembler
++ to make it conforming C.
++ * sysdeps/i386/i486/bits/string.h (__memrchr): Likewise.
++
++ * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Change
++ prototype to use variable argument lists and get the possible one
++ argument via va_arg.
++ * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Likewise.
++ * sysdeps/unix/sysv/linux/x86_64/fcntl.c: New.
++
++2003-09-04 Ulrich Drepper <drepper@redhat.com>
++
++ * posix/unistd.h: Add back __THROW to sysconf, pathconf, fpathconf.
++
++ * sysdeps/unix/sysv/linux/pathconf.c (__statfs_filesize_max):
++ Report correct value for vxfs.
++ * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define VXFS_SUPER_MAGIC.
++
++ * gmon/gmon.c: Use only not-cancelable syscalls to write profiling
++ data.
++
++ * sysdeps/generic/utmp_file.c: Use not-cancelable syscalls all
++ over the place. It would be allowed to have these functions as
++ cancellation points but the cleanup would be ugly and a lot of
++ work.
++
++ * sysdeps/generic/not-cancel.h (fcntl_not_cancel): Define.
++ * sysdeps/unix/sysv/linux/not-cancel.h (fcntl_not_cancel): Define.
++
++ * include/fcntl.h (__fcntl_nocancel): Declare.
++ * sysdeps/unix/sysv/linux/fcntl.c: New file.
++ * sysdeps/unix/sysv/linux/i386/fcntl.c (__libc_fcntl): Only enable
++ cancellation if absolutely needed.
++ (__fcntl_nocancel): Define.
++
++ * posix/unistd.h (gethostid): Remove __THROW. Clarify comment.
++ * sysdeps/unix/sysv/linux/Makefile (CFLAGS-gethostid.c): Add
++ -fexceptions.
++ * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Use
++ extend_alloca.
++
++ * resolv/res_init.c (__res_nclose): Use close_not_cancel_no_status
++ instead of __close.
++
++ * nss/getXXbyYY.c (FUNCTION_NAME): Add a few casts. Remove
++ unnecessary errno handling.
++
++ * nss/getXXbyYY_r.c (INTERNAL): Use better variable name.
++ Initialize it in all cases. Change it to be a bit more like the
++ code we had before.
++
++2003-09-04 Jakub Jelinek <jakub@redhat.com>
++
++ * libio/fileops.c (_IO_file_read, _IO_new_file_write): Add
++ __builtin_expect.
++ (_IO_file_open): Likewise. Use close_not_cancel.
++
++2003-09-04 Ulrich Drepper <drepper@redhat.com>
++
++ * libio/libio.h: Define _IO_FLAGS2_NOTCANCEL.
++ * libio/fileops.c [_LIBC]: Remove close macro.
++ (_IO_file_open): If _IO_FLAGS2_NOTCANCEL is set, use open_not_cancel.
++ (_IO_new_file_open): Recognize 'c' flag in mode string.
++ (_IO_file_read): If _IO_FLAGS2_NOTCANCEL is set use read_not_cancel.
++ (_IO_new_file_write): If _IO_FLAGS2_NOTCANCEL is set use
++ write_not_cancel.
++ * iconv/gconv_conf.c: Use fopen with 'c' mode flag.
++ * inet/rcmd.c: Likewise.
++ * inet/ruserpass.c: Likewise.
++ * intl/localealias.c: Likewise.
++ * malloc/mtrace.c: Likewise.
++ * misc/getpass.c: Likewise.
++ * misc/getttyent.c: Likewise.
++ * misc/mntent_r.c: Likewise.
++ * misc/getusershell.c: Likewise.
++ * nss/nsswitch.c: Likewise.
++ * resolv/res_hconf.c: Likewise.
++ * resolv/res_init.c: Likewise.
++ * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
++ * time/getdate.c: Likewise.
++ * time/tzfile.c: Likewise.
++ * misc/fstab.h: Undo last change.
++ * misc/mntent.h: Likewise.
++ * misc/Makefile: Remove CFLAGS-mntent_r.c, CFLAGS-mntent.c, and
++ CFLAGS-fstab.c definition.
++
++2003-09-04 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/generic/unwind.h (_Unwind_GetBSP): Add prototype.
++
++2003-09-03 Ulrich Drepper <drepper@redhat.com>
++
++ * nss/getXXbyYY_r.c (INTERNAL): Explicitly set errno and avoid
++ returning ERANGE if this wasn't intended.
++
++2003-09-03 Jakub Jelinek <jakub@redhat.com>
++
++ * intl/loadmsgcat.c (open, close, read, mmap, munmap): Define as
++ function-like macros.
++
++2003-09-03 Ulrich Drepper <drepper@redhat.com>
++
++ * grp/Makefile (CFLAGS-getgrent_r.c): Add -fexceptions.
++ (CFLAGS-getgrent.c): Likewise.
++ * pwd/Makefile (CFLAGS-getpwent_r.c): Add -fexceptions.
++ (CFLAGS-getpwent.c): Likewise.
++ * shadow/Makefile (CFLAGS-getspent_r.c): Add -fexceptions.
++ (CFLAGS-getspent.c): Likewise.
++
++ * inet/Makefile: Add -fexceptions to CFLAGS for the various
++ getXXent and getXXbyYY functions.
++
++ * locale/loadlocale.c: Use not-cancelable variants of open, close,
++ and read.
++
++2003-09-02 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove
++ rt_sigsuspend, rt_sigprocmask, rt_sigtimedwait, rt_sigqueueinfo and
++ rt_sigpending.
++ * sysdeps/unix/sysv/linux/alpha/sigaction.c (__syscall_rt_sigaction):
++ New prototype.
++ * sysdeps/unix/sysv/linux/arm/syscalls.list (__syscall_*): Remove
++ unused __syscall_ stubs.
++ * sysdeps/unix/sysv/linux/arm/Makefile (sysdep_routines): Remove
++ rt_*.
++ * sysdeps/unix/sysv/linux/cris/Makefile: Removed.
++ * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list
++ (__syscall_recvfrom, __syscall_sendto): Remove unused aliases.
++ * sysdeps/unix/sysv/linux/mips/syscalls.list (__syscall_*): Remove
++ unused __syscall_ stubs.
++ * sysdeps/unix/sysv/linux/mips/Makefile (sysdep_routines): Remove rt_*.
++ * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list
++ (__syscall_*): Remove unused __syscall_ stubs.
++ * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list
++ (__syscall_*): Likewise.
++ * sysdeps/unix/sysv/linux/powerpc/Makefile (sysdep_routines): Remove
++ rt_*.
++ * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__syscall_*):
++ Remove unused __syscall_ stubs.
++ * sysdeps/unix/sysv/linux/sh/Makefile (sysdep_routines): Remove rt_*.
++ * sysdeps/unix/sysv/linux/rt_sigaction.c: Removed.
++ * sysdeps/unix/sysv/linux/rt_sigpending.c: Removed.
++ * sysdeps/unix/sysv/linux/rt_sigprocmask.c: Removed.
++ * sysdeps/unix/sysv/linux/rt_sigqueueinfo.c: Removed.
++ * sysdeps/unix/sysv/linux/rt_sigreturn.c: Removed.
++ * sysdeps/unix/sysv/linux/rt_sigsuspend.c: Removed.
++ * sysdeps/unix/sysv/linux/rt_sigtimedwait.c: Removed.
++ * sysdeps/unix/sysv/linux/s_pread64.c: Removed.
++ * sysdeps/unix/sysv/linux/s_pwrite64.c: Removed.
++ * sysdeps/unix/sysv/linux/alpha/gethostname.c: Remove unused
++ __syscall_* prototypes.
++ * sysdeps/unix/sysv/linux/alpha/ipc_priv.h: Likewise.
++ * sysdeps/unix/sysv/linux/alpha/msgctl.c: Likewise.
++ * sysdeps/unix/sysv/linux/alpha/semctl.c: Likewise.
++ * sysdeps/unix/sysv/linux/alpha/shmctl.c: Likewise.
++ * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/chown.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/fchown.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/fxstat.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/getegid.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/geteuid.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/getgid.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/getgroups.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/getmsg.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/xstat.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/getresgid.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/getresuid.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/getrlimit.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/getuid.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/lchown.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/lockf64.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/lxstat.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/putmsg.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/setfsuid.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/setgroups.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/setregid.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/setrlimit.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
++ * sysdeps/unix/sysv/linux/ia64/fxstat.c: Likewise.
++ * sysdeps/unix/sysv/linux/ia64/lxstat.c: Likewise.
++ * sysdeps/unix/sysv/linux/ia64/sigaction.c: Likewise.
++ * sysdeps/unix/sysv/linux/ia64/sigpending.c: Likewise.
++ * sysdeps/unix/sysv/linux/ia64/sigprocmask.c: Likewise.
++ * sysdeps/unix/sysv/linux/ia64/sigsuspend.c: Likewise.
++ * sysdeps/unix/sysv/linux/ia64/xstat.c: Likewise.
++ * sysdeps/unix/sysv/linux/m68k/chown.c: Likewise.
++ * sysdeps/unix/sysv/linux/mips/ftruncate64.c: Likewise.
++ * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
++ * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
++ * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise.
++ * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
++ * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
++ * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise.
++ * sysdeps/unix/sysv/linux/mips/truncate64.c: Likewise.
++ * sysdeps/unix/sysv/linux/mips/ustat.c: Likewise.
++ * sysdeps/unix/sysv/linux/mips/xmknod.c: Likewise.
++ * sysdeps/unix/sysv/linux/powerpc/chown.c: Likewise.
++ * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
++ * sysdeps/unix/sysv/linux/s390/s390-32/chown.c: Likewise.
++ * sysdeps/unix/sysv/linux/s390/s390-32/lchown.c: Likewise.
++ * sysdeps/unix/sysv/linux/s390/s390-64/xstat.c: Likewise.
++ * sysdeps/unix/sysv/linux/s390/s390-64/fxstat.c: Likewise.
++ * sysdeps/unix/sysv/linux/s390/s390-64/lxstat.c: Likewise.
++ * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c: Likewise.
++ * sysdeps/unix/sysv/linux/s390/s390-64/sigpending.c: Likewise.
++ * sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c: Likewise.
++ * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
++ * sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c: Likewise.
++ * sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c: Likewise.
++ * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise.
++ * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
++ * sysdeps/unix/sysv/linux/execve.c: Likewise.
++ * sysdeps/unix/sysv/linux/aio_sigqueue.c: Likewise.
++ * sysdeps/unix/sysv/linux/reboot.c: Likewise.
++ * sysdeps/unix/sysv/linux/_exit.c: Likewise.
++ * sysdeps/unix/sysv/linux/ftruncate64.c: Likewise.
++ * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
++ * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
++ * sysdeps/unix/sysv/linux/gai_sigqueue.c: Likewise.
++ * sysdeps/unix/sysv/linux/readahead.c: Likewise.
++ * sysdeps/unix/sysv/linux/getcwd.c: Likewise.
++ * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
++ * sysdeps/unix/sysv/linux/getdents.c: Likewise.
++ * sysdeps/unix/sysv/linux/readv.c: Likewise.
++ * sysdeps/unix/sysv/linux/getpriority.c: Likewise.
++ * sysdeps/unix/sysv/linux/sigaction.c: Likewise.
++ * sysdeps/unix/sysv/linux/ipc_priv.h: Likewise.
++ * sysdeps/unix/sysv/linux/llseek.c: Likewise.
++ * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
++ * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
++ * sysdeps/unix/sysv/linux/mmap64.c: Likewise.
++ * sysdeps/unix/sysv/linux/ustat.c: Likewise.
++ * sysdeps/unix/sysv/linux/poll.c: Likewise.
++ * sysdeps/unix/sysv/linux/pread64.c: Likewise.
++ * sysdeps/unix/sysv/linux/writev.c: Likewise.
++ * sysdeps/unix/sysv/linux/pread.c: Likewise.
++ * sysdeps/unix/sysv/linux/ptrace.c: Likewise.
++ * sysdeps/unix/sysv/linux/sigpending.c: Likewise.
++ * sysdeps/unix/sysv/linux/sigprocmask.c: Likewise.
++ * sysdeps/unix/sysv/linux/sigqueue.c: Likewise.
++ * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
++ * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
++ * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
++ * sysdeps/unix/sysv/linux/truncate64.c: Likewise.
++ * sysdeps/unix/sysv/linux/xmknod.c: Likewise.
++ * sysdeps/unix/sysv/linux/xstat64.c: Likewise.
++
++2003-09-02 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Revert last change.
++ * sysdeps/unix/sysv/linux/powerpc/syscalls.list: New file.
++ * sysdeps/unix/sysv/linux/sparc/syscalls.list: New file.
++
++2003-09-02 Ulrich Drepper <drepper@redhat.com>
++
++ * stdio-common/Makefile (CFLAGS-vprintf.c): Add -fexceptions.
++
++ * intl/loadmsgcat.c: For _LIBC, call not cancelable versions of
++ open, close, and read.
++
++ * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Also define
++ *_nocancel name.
++
++ * sysdeps/unix/sysv/linux/i386/syscalls.list: Add waitpid.
++
++ * libio/Makefile (CFLAGS-oldtmpfile.c): Add -fexceptions.
++ * sysdeps/generic/tmpfile.c (tmpfile): Use __unlink instead of remove.
++ * libio/oldtmpfile.c (__old_tmpfile): Likewise.
++
++ * misc/Makefile (CFLAGS-getusershell.c): Add -fexceptions.
++
++ * io/Makefile (CFLAGS-statfs.c): Add -fexceptions.
++ (CFLAGS-fstatfs.c): Likewise.
++ (CFLAGS-statvfs.c): Likewise.
++ (CFLAGS-fstatvfs.c): Likewise.
++
++2003-09-01 Ulrich Drepper <drepper@redhat.com>
++
++ * misc/Makefile (CFLAGS-getsysstats.c): Add -fexceptions.
++ * posix/unistd.h: Remove __THROW from pathconf, fpathconf,
++ sysconf.
++ * posix/Makefile (CFLAGS-sysconf.c): Add -fexceptions.
++ (CFLAGS-pathconf.c): Likewise.
++ (CFLAGS-fpathconf.c): Likewise.
++
++ * misc/Makefile (CFLAGS-fstab.c): Add -fexceptions.
++ * misc/fstab.h: Remove all __THROW.
++ * misc/Makefile (CFLAGS-mntent.c): Add -fexceptions.
++ (CFLAGS-mntent_r.c): Likewise.
++ * misc/mntent.h: Remove most __THROW.
++
++ * misc/Makefile (CFLAGS-mkstemp.c): Add -fexceptions.
++ (CFLAGS-mkstemp64.c): Likewise.
++
++ * sysdeps/generic/wordexp.c (parse_comm): Disable cancellation
++ around call to exec_comm.
++ * posix/wordexp.h: Remove __THROW from wordexp.
++ * posix/Makefile (CFLAGS-wordexp.c): Add -fexceptions.
++
++ * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Use
++ not-cancelable functions.
++
++ * libio/Makefile (CFLAGS-oldiofopen.c): Add -fexceptions.
++ (CFLAGS-iofopen.c): Likewise.
++ (CFLAGS-iofopen64.c): Likewise.
++
++ * stdlib/fmtmsg.c (fmtmsg): Disable cancellation around output
++ functions.
++ * stdlib/Makefile (CFLAGS-fmtmsg.c): Add -fexceptions.
++ * stdlib/fmtmsg.h: Remove __THROW from fmtmsg.
++
++ * stdlib/stdlib.h: Remove __THROW from posix_openpt and getpt.
++ * login/Makefile (CFLAGS-getpt.c): Add -fexceptions.
++
++2003-09-01 Thorsten Kukuk <kukuk@suse.de>
++
++ * nis/nss_compat/compat-spwd.c (getspnam_plususer): Return
++ NSS_STATUS_SUCCESS if entry was found.
++ (getspent_next_file): Store user in blacklist after entry
++ was found, use innetgr.
++
++2003-09-01 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise.c: New.
++ * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c: New.
++
++ * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Fix tls offset
++ computation for TCB_AT_TP. Support l_firstbyte_offset != 0 for
++ DTV_AT_TP, optimize.
++
++2003-08-31 Kaz Kojima <kkojima@rr.iij4u.or.jp>
++
++ * sysdeps/unix/sysv/linux/sh/Versions: Add posix_fadvise64 and
++ posix_fallocate64 at GLIBC_2.3.3.
++ * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO_ERRVAL): Define.
++ (PSEUDO_END_ERRVAL, ret_ERRVAL): Likewise.
++
++2003-08-08 H.J. Lu <hongjiu.lu@intel.com>
++
++ * sysdeps/unix/sysv/linux/ia64/syscalls.list: Remove __syscall_
++ functions.
++
++2003-08-31 Ulrich Drepper <drepper@redhat.com>
++
++ * libio/libioP.h (_IO_acquire_lock_fct): Define as inline function.
++ Code by Richard Henderson.
++
++2003-08-31 Philip Blundell <philb@gnu.org>
++
++ * sysdeps/unix/sysv/linux/arm/Versions: Add posix_fadvise64 and
++ posix_fallocate64 at GLIBC_2.3.3.
++
++2003-08-31 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/x86_64/bsd-_setjmp.S: Use HIDDEN_JUMPTARGET.
++ * include/setjmp.h: Add libc_hidden_proto for __sigsetjmp.
++
++2003-08-30 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/generic/sysdep.h (cfi_window_save, CFI_WINDOW_SAVE): Define.
++ * sysdeps/unix/sysv/linux/sparc/bits/setjmp.h: Allow file to be
++ included multiple times.
++ * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone): Pass
++ ptid, tls, ctid arguments to the kernel.
++ * sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c (__getpagesize):
++ Use INTERNAL_SYSCALL instead of __syscall_getpagesize.
++ * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c
++ (__libc_sigaction): Use INLINE_SYSCALL instead of
++ __syscall_rt_sigaction.
++ * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
++ (__syscall_getgroups, __syscall_getpagesize, __syscall__llseek,
++ __syscall_setfsgid, __syscall_setfsuid, __syscall_setgid,
++ __syscall_setgroups, __syscall_setregid, __syscall_setreuid,
++ __syscall_ipc, __syscall_setuid, __syscall_rt_sigaction,
++ __syscall_rt_sigpending, __syscall_rt_sigprocmask,
++ __syscall_rt_sigqueueinfo, __syscall_rt_sigsuspend,
++ __syscall_rt_sigtimedwait): Remove unneeded syscall stubs.
++ * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile (sysdep_routines):
++ Remove rt_sigsuspend, rt_sigprocmask, rt_sigtimedwait,
++ rt_sigqueueinfo, rt_sigaction and rt_sigpending.
++ * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
++ (__CLONE_SYSCALL_STRING): Define.
++ * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Add
++ CFI directives.
++ * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
++ (__CLONE_SYSCALL_STRING): Define.
++ * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_CLONE_SYSCALL):
++ Define.
++ * sysdeps/unix/sysv/linux/sparc/system.c: New file.
++
++2003-08-30 Ulrich Drepper <drepper@redhat.com>
++
++ * sunrpc/rpc/clnt.h: Remove a few __THROW.
++ * sunrpc/Makefile (CFLAGS-auth_unix.c): Add -fexceptions.
++ (CFLAGS-key_call.c): Likewise.
++ (CFLAGS-pmap_rmt.c): Likewise.
++ (CFLAGS-clnt_perr.c): Likewise.
++ * sunrpc/rpc/auth.h: Remove serveral __THROW.
++
++ * inet/Makefile (CFLAGS-gethstbyad_r.c): Add -fexceptions.
++ (CFLAGS-gethstbynm_r.c): Likewise.
++ (CFLAGS-gethstbynm2_r.c): Likewise.
++ (CFLAGS-rcmd.c): Likewise.
++ * resolv/Makefile (CFLAGS-res_hconf.c): Add -fexceptions.
++
++ * argp/Makefile (CFLAGS-argp-help.c): Add -fexceptions.
++ (CFLAGS-argp-fmtstream.c): Likewise.
++ * argp/argp.h: Remove a number of __THROW.
++
++ * misc/sys/syslog.h (vsyslog): Remove __THROW.
++
++ * misc/Makefile (CFLAGS-getpass.c): Add -fexceptions.
++ * misc/getpass.c (getpass): Add cleanup handler to ensure the
++ stream is closed even if the thread is canceled.
++ (call_fclose): New function.
++ * posix/unistd.h: Remove __THROW from getpass prototype.
++
++ * posix/Makefile (CFLAGS-getopt.c): Add -fexceptions.
++
++ * signal/signal.h (psignal): Remove __THROW.
++ * stdio-common/Makefile (CFLAGS-psignal.c): Add -fexceptions.
++
++ * misc/Makefile (CFLAGS-error.c): Define.
++ * misc/error.c (error): Disable cancellation handling around the
++ actual output. The message should in any case be printed.
++ (error_at_line): Likewise.
++
++ * misc/error.h: Protect parameter names with leading __.
++
++2003-08-28 Carlos O'Donell <carlos@baldric.uwo.ca>
++
++ * sysdeps/unix/sysv/linux/hppa/syscalls.list: Add semtimedop.
++
++2003-08-29 Jakub Jelinek <jakub@redhat.com>
++
++ * libio/iofgetpos64.c (_IO_new_fgetpos64): Move lock release to the
++ end.
++
++2003-08-29 Ulrich Drepper <drepper@redhat.com>
++
++ * libio/stdio.h: Remove a few more __THROW.
++
++2003-08-29 Jakub Jelinek <jakub@redhat.com>
++
++ * libio/Makefile: Compile fputc.c, fputwc.c, freopen64.c, freopen.c,
++ fseek.c, fseeko64.c, fseeko.c, ftello64.c, ftello.c, fwide.c, getc.c,
++ getchar.c, getwc.c, getwchar.c, iofclose.c, iofflush.c, iofgetpos64.c,
++ iofgetpos.c, iofgets.c, iofgetws.c, iofputs.c, iofputws.c, iofread.c,
++ iofsetpos64.c, iofsetpos.c, ioftell.c, iofwrite.c, iogetdelim.c,
++ iogetline.c, iogets.c, iogetwline.c, ioputs.c, ioseekoff.c,
++ ioseekpos.c, iosetbuffer.c, iosetvbuf.c, ioungetc.c, ioungetwc.c,
++ oldfileops.c, oldiofclose.c, oldiofgetpos64.c, oldiofgetpos.c,
++ oldiofsetpos64.c, oldiofsetpos.c, peekc.c, putc.c, putchar.c, putwc.c,
++ putwchar.c and rewind.c with exceptions.
++ * sysdeps/generic/bits/stdio-lock.h (_IO_acquire_lock,
++ _IO_release_lock): Define.
++ * libio/fileops.c (_IO_new_file_underflow): Use it.
++ * libio/fputc.c (fputc): Likewise.
++ * libio/fputwc.c (fputwc): Likewise.
++ * libio/freopen64.c (freopen64):
++ * libio/freopen.c (freopen): Likewise.
++ * libio/fseek.c (fseek): Likewise.
++ * libio/fseeko64.c (fseeko64): Likewise.
++ * libio/fseeko.c (fseeko): Likewise.
++ * libio/ftello64.c (ftello64): Likewise.
++ * libio/ftello.c (ftello): Likewise.
++ * libio/fwide.c (fwide): Likewise.
++ * libio/getc.c (_IO_getc): Likewise.
++ * libio/getchar.c (getchar): Likewise.
++ * libio/getwc.c (_IO_getwc): Likewise.
++ * libio/getwchar.c (getwchar): Likewise.
++ * libio/iofclose.c (_IO_new_fclose):
++ * libio/iofflush.c (_IO_fflush): Likewise.
++ * libio/iofgetpos64.c (_IO_new_fgetpos64): Likewise.
++ * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
++ * libio/iofgets.c (_IO_fgets): Likewise.
++ * libio/iofgetws.c (fgetws): Likewise.
++ * libio/iofputs.c (_IO_fputs): Likewise.
++ * libio/iofputws.c (fputws): Likewise.
++ * libio/iofread.c (_IO_fread): Likewise.
++ * libio/iofsetpos64.c (_IO_new_fsetpos64): Likewise.
++ * libio/iofsetpos.c (_IO_new_fsetpos): Likewise.
++ * libio/ioftell.c (_IO_ftell): Likewise.
++ * libio/iofwrite.c (_IO_fwrite): Likewise.
++ * libio/iogetdelim.c (_IO_getdelim): Likewise.
++ * libio/iogets.c (_IO_gets): Likewise.
++ * libio/ioputs.c (_IO_puts): Likewise.
++ * libio/ioseekoff.c (_IO_seekoff): Likewise.
++ * libio/ioseekpos.c (_IO_seekpos): Likewise.
++ * libio/iosetbuffer.c (_IO_setbuffer): Likewise.
++ * libio/iosetvbuf.c (_IO_setvbuf): Likewise.
++ * libio/ioungetc.c (_IO_ungetc): Likewise.
++ * libio/ioungetwc.c (ungetwc): Likewise.
++ * libio/oldiofclose.c (_IO_old_fclose): Likewise.
++ * libio/oldiofgetpos64.c (_IO_old_fgetpos64): Likewise.
++ * libio/oldiofgetpos.c (_IO_old_fgetpos): Likewise.
++ * libio/oldiofsetpos64.c (_IO_old_fsetpos64): Likewise.
++ * libio/oldiofsetpos.c (_IO_old_fsetpos): Likewise.
++ * libio/peekc.c (_IO_peekc_locked): Likewise.
++ * libio/putc.c (_IO_putc): Likewise.
++ * libio/putchar.c (putchar): Likewise.
++ * libio/putwc.c (putwc): Likewise.
++ * libio/putwchar.c (putwchar): Likewise.
++ * libio/rewind.c (rewind): Likewise.
++ * libio/wfileops.c (_IO_wfile_underflow): Likewise.
++
++2003-08-29 Ulrich Drepper <drepper@redhat.com>
++
++ * signal/signal.h: sighold, sigrelse, sigignore, sigset were
++ available in XPG4.2.
++
++2003-08-27 Phil Knirsch <pknirsch@redhat.com>
++ Jakub Jelinek <jakub@redhat.com>
++
++ * sunrpc/svc.c (svc_getreqset): Fix fds_bits reading on 64-bit
++ big endian arches. Don't read beyond end of fds_bits array.
++
++2003-04-27 Bruno Haible <bruno@clisp.org>
++
++ * manual/message.texi (Advanced gettext functions): Add information
++ about Korean, Portuguese, Latvian. Gaeilge is also known as Irish.
++ Add section about Lithuanian, reported by Ricardas Cepas
++ <rch@richard.eu.org>.
++ Add information about Croatian.
++ Ukrainian is like Russian, reported by Andy Rysin <arysin@yahoo.com>.
++ Remove remark about continuation lines that is not true for PO files.
++ Fix formula for Slovenian, reported by Roman Maurer
++ <roman.maurer@amis.net>.
++
++2003-08-27 Ulrich Drepper <drepper@redhat.com>
++
++ * math/math_private.h: Declare __copysignf.
++ * sysdeps/ieee754/flt-32/s_scalbnf.c: Use __copysignf instead of
++ copysignf.
++
++ * sysdeps/x86_64/fpu/bits/mathinline.h: Define __signbitf,
++ __signbit, and __signbitl inline functions.
++
++ * sysdeps/unix/sysv/linux/x86_64/__start_context.S: Use
++ HIDDEN_JUMPTARGET instead of JUMPTARGET to call exit().
++
++ * sysdeps/x86_64/bsd-_setjmp.S [PIC]: Jump to __GI___sigsetjmp.
++ * sysdeps/x86_64/setjmp.S: Add libc_hidden_def for __sigsetjmp.
++
++2003-08-27 Jakub Jelinek <jakub@redhat.com>
++
++ * inet/inet_mkadr.c (inet_makeaddr): Optimize.
++
++2003-08-27 Ulrich Drepper <drepper@redhat.com>
++
++ * include/stdio.h: Add declarations for __builtin_fwrite and
++ __builtin_fwrite_unlocked.
++
++2003-08-27 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/opendir.c (__opendir): Make sure even struct dirent64
++ fits into allocation. Add padding on 32-bit arches so that
++ dirp->data is enough aligned for struct dirent64.
++ Avoid clearing of the buffer, just clear DIR structure.
++
++2003-08-26 Ulrich Drepper <drepper@redhat.com>
++
++ * nss/nsswitch.c: Add libc_hidden_def for __nss_lookup_function.
++ * nss/nsswitch.h: Add libc_hidden_proto for __nss_lookup_function.
++
++2003-08-26 Steven Munroe <sjmunroe@us.ibm.com>
++
++ * sysdeps/powerpc/powerpc64/elf/Makefile: New file.
++
++2003-08-26 Jakub Jelinek <jakub@redhat.com>
++
++ * login/programs/utmpdump.c (print_entry): Cast tv_usec to long
++ to match format string.
++ * sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c (union semun): Add
++ __old_buf.
++ (__new_semctl): Shut up warning.
++ * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h
++ (_dl_string_hwcap): Add __attribute__ ((always_inline)).
++
++2003-08-26 Jakub Jelinek <jakub@redhat.com>
++
++ * elf/ldconfig.c (search_dir): When checking for GNU-style .so
++ link file use the real file name, not the resolved name we got by
++ following the symlinks.
++
++2003-08-25 Ulrich Drepper <drepper@redhat.com>
++
++ * libio/oldfileops.c (_IO_old_file_init): Initialize _mode field
++ if the object size is large enough.
++
++2003-08-25 Jakub Jelinek <jakub@redhat.com>
++
++ * elf/ldconfig.c (search_dir): Treat symlink as regular file
++ if it won't point to itself unless it is .so symlink for the linker.
++
++2003-08-25 Ulrich Drepper <drepper@redhat.com>
++
++ * libio/libio.h (_IO_fwide): In the mode==0 optimization, don't
++ use _mode if _IO_fwide_maybe_incompatible.
++ * libio/iofwide.c (_IO_fwide): Move the test for mode == 0 after
++ the compatibility test.
++
++2003-08-25 Jakub Jelinek <jakub@redhat.com>
++
++ * elf/cache.c (save_cache): Don't write beyond end of file_entries
++ buffer.
++ Duplicate last old cache entry if the count would be odd.
++
++2003-08-25 Andreas Jaeger <aj@suse.de>
++
++ * sysdeps/unix/sysv/linux/posix_fadvise64.c: Cast arguments of
++ __LONG_LONG_PAIR to long.
++
++2003-08-25 Philip Blundell <philb@gnu.org>
++
++ * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_ERRVAL): Define.
++ (PSEUDO_END_ERRVAL, ret_ERRVAL): Likewise.
++
++2003-08-18 Alfred M. Szmidt <ams@kemisten.nu>
++
++ * sysdeps/generic/bits/libc-lock.h (__libc_cleanup_pop): Redefine
++ and use __libc_cleanup_region_end instead.
++
++2003-08-25 Ulrich Drepper <drepper@redhat.com>
++
++ * elf/ldconfig.c (search_dir): Revert patch of 2003-7-21.
++
++2003-08-22 Ulrich Drepper <drepper@redhat.com>
++
++ * io/fcntl.h (posix_fallocate): Change type of third parameter to
++ off_t.
++ (posix_fallocate64): Change type of third parameter to off64_t.
++ * sysdeps/generic/posix_fallocate.c: Adjust for type change.
++ * sysdeps/posix/posix_fallocate.c: Likewise.
++ * sysdeps/generic/posix_fallocate64.c: Likewise.
++ * sysdeps/posix/posix_fallocate64.c: Likewise. Add compatibility
++ code for 32-bit platforms.
++ * sysdeps/unix/sysv/linux/i386/Versions: Add new version for
++ posix_fallocate64.
++ * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: Likewise.
++ * sysdeps/unix/sysv/linux/s390/s390-32/Versions: Likewise.
++ * sysdeps/unix/sysv/linux/sparc/sparc32/Versions: Likewise.
++
++2003-08-19 Ulrich Drepper <drepper@redhat.com>
++
++ * string/bits/string2.h (__STRING2_COPY_TYPE): Add attribute to
++ the type, not to name.
++
++ * stdio-common/test-vfprintf.c (main): Don't write temporary file
++ into source directory.
++
++ * malloc/malloc.c (_int_free): Add cheap test for some invalid
++ block sizes.
++
++ * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Fix typo in
++ syscall name.
++
++2003-08-18 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/shm_open.c (shm_open): Fold EISDIR error
++ into EINVAL.
++
++2003-08-18 H.J. Lu <hongjiu.lu@intel.com>
++
++ * sysdeps/ia64/dl-machine.h (elf_machine_rela): Use _dl_reloc_bad_type.
++ (elf_machine_lazy_rel): Likewise.
++
++2003-08-18 Art Haas <ahaas@airmail.net>
++
++ * malloc/malloc.h: Remove unneeded ';' where closing the C++
++ extern block.
++
++2003-08-18 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/ia64/dl-fptr.h (ELF_MACHINE_LOAD_ADDRESS): Support
++ loading big binaries where @gprel(sym) cannot be handled in 'add'
++ but instead has to be used with 'movl'.
++
++2003-08-17 Juergen Kreileder <jk@blackdown.de>
++ Andreas Jaeger <aj@suse.de>
++
++ * sysdeps/x86_64/bits/byteswap.h: New file.
++
++2003-08-17 Andreas Jaeger <aj@suse.de>
++
++ * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Fix typo.
++
++2003-08-16 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_ERRVAL,
++ PSEUDO_RET_ERRVAL, ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
++ * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_ERRVAL,
++ PSEUDO_RET_ERRVAL, ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
++ * sysdeps/unix/alpha/sysdep.h (PSEUDO_ERRVAL,
++ ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
++ * sysdeps/unix/mips/sysdep.h (PSEUDO_ERRVAL,
++ ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
++ * sysdeps/unix/sparc/sysdep.h (PSEUDO_ERRVAL,
++ ret_ERRVAL): Define.
++ * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO_ERRVAL,
++ PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
++ * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (PSEUDO_ERRVAL,
++ PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
++ * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h (PSEUDO_ERRVAL):
++ Define.
++ * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PSEUDO_ERRVAL,
++ PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
++ * sysdeps/unix/sysdep.h (PSEUDO_END_ERRVAL): Define.
++
++ * sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64,
++ posix_fadvise64_64): Remove.
++ * sysdeps/unix/sysv/linux/alpha/syscalls.list (posix_fadvise64): Add
++ V flag.
++ * sysdeps/unix/sysv/linux/ia64/syscalls.list (posix_fadvise64):
++ Likewise.
++ * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list
++ (posix_fadvise64): Likewise.
++ * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list
++ (posix_fadvise64): Likewise.
++ * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list
++ (posix_fadvise64): Likewise.
++ * sysdeps/unix/sysv/linux/x86_64/syscalls.list (posix_fadvise64):
++ Likewise.
++ * sysdeps/unix/sysv/linux/i386/posix_fadvise64_64.S: Moved to...
++ * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: ...here.
++ (__posix_fadvise64_l64): Fix a typo in fadvise64 syscall invocation.
++ (__posix_fadvise64_l32): New function.
++ * sysdeps/unix/sysv/linux/i386/Makefile: Revert last change.
++ * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions (libc): Export
++ posix_fadvise64@@GLIBC_2.3.3.
++ * sysdeps/unix/sysv/linux/s390/s390-32/Versions (libc): Likewise.
++ * sysdeps/unix/sysv/linux/sparc/sparc32/Versions (libc): Likewise.
++ * sysdeps/unix/sysv/linux/posix_fadvise.c (posix_fadvise): Return
++ error value.
++ * sysdeps/unix/sysv/linux/posix_fadvise64.c: New file.
++
++ * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
++ (SYSCALL_ERROR_HANDLER): Use TLS errno/__libc_errno if USE___THREAD.
++
++2003-08-15 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/sparc/sparc32/dl-machine.h (WEAKADDR): Remove.
++ (elf_machine_matches_host): Remove weak extern stuff.
++ Use GL(dl_hwcap) unconditionally and GL(dl_hwcap_mask) if SHARED.
++ (elf_machine_runtime_setup, sparc_fixup_plt): Remove weak extern
++ stuff. Use GL(dl_hwcap) unconditionally.
++
++2003-08-16 Alan Modra <amodra@bigpond.net.au>
++
++ * sysdeps/powerpc/powerpc64/elf/start.S: Add a nop after
++ __libc_start_main branch.
++
++2003-08-16 Jakub Jelinek <jakub@redhat.com>,
++ Andreas Jaeger <aj@suse.de>
++
++ * sysdeps/generic/posix_fadvise.c (posix_fadvise): Return ENOSYS
++ instead of setting errno.
++ * sysdeps/generic/posix_fadvise64.c (posix_fadvise64): Likewise.
++
++2003-08-16 Andreas Jaeger <aj@suse.de>
++
++ * sysdeps/generic/posix_fadvise.c (posix_fadvise): Adjust prototype.
++ * sysdeps/generic/posix_fadvise64.c (posix_fadvise64): Likewise.
++
++2003-08-15 Ulrich Drepper <drepper@redhat.com>
++
++ * io/fcntl.h (posix_fadvise64): Change type of third parameter to
++ off_t.
++ * sysdeps/unix/sysv/linux/posix_fadvise.c: Adjust definition.
++ * sysdeps/unix/make-syscalls.sh: Recognize V prefix to the parameter
++ description indicating the error value is returned, not -1.
++ * sysdeps/unix/sysv/linux/kernel-features.h: Add definition of
++ __ASSUME_FADVISE64_64_SYSCALL.
++ * sysdeps/unix/sysv/linux/syscalls.list: Don't define madvise and
++ posix_madvise in one file. Have posix_madvise defined with error
++ value returned.
++ Define posix_fadvise64_64 entry. Add version info to posix_fadvise64
++ entry.
++ * sysdeps/unix/sysv/linux/i386/posix_fadvise.S: New file.
++ * sysdeps/unix/sysv/linux/i386/sysdep.h: Define PSEUDO_ERRVAL,
++ PSEUDO_END_ERRVAL, and ret_ERRVAL.
++ * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/i386/Versions [GLIBC_2.3.3]: Add
++ posix_fadvise64.
++
++ * posix/Makefile (routines): Add posix_madvise.
++ * sysdeps/generic/madvise.c: Don't define posix_madvise.
++ * sysdeps/generic/posix_madvise.c: New file.
++ * sysdeps/unix/sysv/aix/posix_madvise.c: New file.
++ * sysdeps/unix/sysv/linux/i386/Makefile [subdir=io] (subdir_routines):
++ Add posix_fadvise64_64.
++
++2003-08-15 Jakub Jelinek <jakub@redhat.com>
++
++ * assert/assert.h (assert_perror): Use __builtin_expect for gcc >=
++ 3.0, not for !gcc or gcc < 3.0.
++
++2003-08-11 Carlos O'Donell <carlos@baldric.uwo.ca>
++
++ * dlfcn/default.c (main): Cast dlsym loaded value to same type as main.
++ Address passed to test_in_mod1 and test_in_mod2 without casting.
++ * dlfcn/defaultmod1.c: Change prototype of test_in_mod1.
++ (test_in_mod1): Cast dlsym loaded value to same type as mainp.
++ * dlfcn/defaultmod2.c: Change prototype of test_in_mod2.
++ (test_in_mod2): Cast dlsym loaded value to same type as mainp.
++
++2003-08-15 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/sparc/sparc32/elf/configure.in (libc_cv_sparc32_tls):
++ Change quotes before using [].
++
++ * sysdeps/unix/sysv/linux/sparc/sys/user.h: New file.
++
++ * sysdeps/sparc/sparc32/bits/atomic.h (__sparc32_atomic_lock):
++ Renamed to...
++ (__sparc32_atomic_locks): ...this. Change into 64-byte array.
++ (__sparc32_atomic_do_lock, __sparc32_atomic_do_unlock): Add addr
++ argument. Select one of 64 locks from address bits.
++ (atomic_compare_and_exchange_val_acq,
++ atomic_compare_and_exchange_bool_acq): Pass memory address to
++ __sparc32_atomic_do_{,un}lock.
++
++2003-08-14 Ulrich Drepper <drepper@redhat.com>
++
++ * assert/assert.h (assert): Use !! in front of expression to allow
++ use of pointers.
++
++ * iconvdata/cp932.c: Fixed checking of a few border of code areas.
++ Changed conversion of JIS X 0201 from using a table to calculating.
++ * iconvdata/euc-jp-ms.c: Fixed conversion table and rewrote
++ conversion routine. Changed CHARSET_NAME definition from EUCJP-MS to
++ EUC-JP-MS.
++ * iconvdata/tst-tables.sh: Add CP932 and EUC-JP-MS.
++ * iconvdata/CP932.irreversible: New file.
++ * iconvdata/EUC-JP-MS.irreversible: New file.
++ Patch by MORIYAMA Masayuki <msyk@mtg.biglobe.ne.jp>.
++
++2003-08-13 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/i386/syscalls.list: Add time syscall.
++
++ * elf/Makefile: Use LC_ALL=C in a few cases where we call external
++ text processing tools.
++
++ * sysdeps/pthread/aio_misc.h (struct waitlist): Don't add caller_pid
++ element unless BROKEN_THREAD_SIGNALS is defined.
++ (struct requestlist): Likewise.
++ * sysdeps/pthread/aio_misc.c (__aio_enqueue_request): Don't fill in
++ caller_pid of new request unless BROKEN_THREAD_SIGNALS is defined.
++ * sysdeps/pthread/aio_suspend.c (aio_suspend): Likewise.
++ * sysdeps/pthread/aio_notify.c (__aio_notify_only): Remove caller_pid
++ parameter unless BROKEN_THREAD_SIGNALS is defined. Adjust callers.
++ Pass current PID to __aio_sigqueue.
++ * sysdeps/pthread/lio_listio.c (lio_listio): Adjust __aio_notify_only
++ call. Don't initialize caller_pid field of waitlist element.
++
++2003-08-12 Jakub Jelinek <jakub@redhat.com>
++
++ * libio/libioP.h (_IO_vtable_offset): Define.
++ * libio/freopen.c (freopen): Use it.
++ * libio/ioputs.c (_IO_puts): Likewise.
++ * libio/freopen64.c (freopen64): Likewise.
++ * libio/genops.c (__underflow, __uflow, _IO_flush_all_lockp):
++ Likewise.
++ * libio/iofclose.c (_IO_new_fclose): Likewise.
++ * libio/iofputs.c (_IO_fputs): Likewise.
++ * libio/ioftell.c (_IO_ftell): Likewise.
++ * libio/iofwrite.c (_IO_fwrite): Likewise.
++ * libio/ioseekoff.c (_IO_seekoff_unlocked): Likewise.
++ * libio/iosetbuffer.c (_IO_setbuffer): Likewise.
++ * stdio-common/vfprintf.c (ORIENT, vfprintf): Likewise.
++ * stdio-common/vfscanf.c (ORIENT): Likewise.
++
++2003-08-11 Ulrich Drepper <drepper@redhat.com>
++
++ * assert/assert.h: Use __builtin_expect in assert and
++ assert_perror definitions if possible.
++
++2003-08-07 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/generic/ldsodefs.h (_rtld_global): Add
++ _dl_rtld_lock_recursive and _dl_rtld_unlock_recursive.
++ * elf/rtld.c (rtld_lock_default_lock_recursive,
++ rtld_lock_default_unlock_recursive): New functions.
++ (dl_main): Initialize _dl_rtld_lock_recursive and
++ _dl_rtld_unlock_recursive.
++
++2003-08-05 Jakub Jelinek <jakub@redhat.com>
++
++ * elf/ldconfig.c (main): Append SLIBDIR and LIBDIR to
++ config_file directories instead of prepending.
++
++2003-08-02 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/kernel-features.h: Define
++ __ASSUME_CLONE_STOPPED.
++
++2003-08-01 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/generic/bits/libc-lock.h
++ (__libc_cleanup_push,__libc_cleanup_pop): Define even here.
++
++2003-08-01 Roland McGrath <roland@frob.com>
++
++ * sysdeps/mach/hurd/getdents.c: Just use sysdeps/generic/getdents.c.
++
++2003-07-31 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/generic/bits/types.h (__ssize_t): Use __SSIZE_T_TYPE
++ instead of __SWORD_TYPE.
++ * sysdeps/generic/bits/typesizes.h (__SSIZE_T_TYPE): Define.
++ * sysdeps/mach/hurd/bits/typesizes.h (__SSIZE_T_TYPE): Define.
++ * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h (__SSIZE_T_TYPE):
++ Define.
++ * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h (__SSIZE_T_TYPE):
++ Define.
++ * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h (__SSIZE_T_TYPE):
++ Define.
++ * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: New file.
++
++ * dlfcn/dlerror.c (once): New.
++ (dlerror): Call __libc_once.
++ (_dlerror_run): Remove once.
++
++ * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h (struct sigcontext):
++ Sync with 2.5.7 and 2.5.73 kernel changes.
++
++ * dlfcn/eval.c (funcall): Add noinline attribute to shut up warnings.
++ * elf/rtld.c (dl_main): Cast ElfW(Addr) arguments with %Zx/%Zd
++ formats to size_t.
++ * elf/dl-lookup.c (_dl_debug_bindings): Likewise.
++ * elf/tst-tls6.c (do_test): Use %zd format for l_tls_modid.
++ * elf/tst-tls8.c (do_test): Use %zd format for modid1 and modid2.
++ * gmon/tst-sprofil.c (main): Add parens to shut up warning.
++ * iconv/tst-iconv3.c (main): Use %td instead of %zd for pointer
++ difference argument.
++ * stdio-common/tst-wc-printf.c (main): Cast arguments with %C
++ format to wint_t.
++ * stdlib/tst-limits.c (main): For WORD_BIT and LONG_BIT, use
++ %d format and cast expected value to int.
++ * sysdeps/generic/libc-start.c (STATIC): Add
++ __attribute__((always_inline) if LIBC_START_MAIN is already defined.
++ * sysdeps/powerpc/fpu/w_sqrt.c (a_nan, a_inf): Change from uint32_t
++ to ieee_float_shape_type.
++ (__sqrt): Avoid type punning.
++ * sysdeps/powerpc/fpu/w_sqrtf.c (a_nan, a_inf): Change from uint32_t
++ to ieee_float_shape_type.
++ (__sqrtf): Avoid type punning.
++ * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Don't define
++ refsym if in dl-conflict.c.
++ * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise.
++ * sysdeps/unix/sysv/linux/i386/semctl.c (union semun): Add __old_buf.
++ (__new_semctl): Shut up warning.
++ * sysdeps/unix/sysv/linux/semctl.c (union semun): Add __old_buf.
++ (__new_semctl): Shut up warning.
++ * sysdeps/unix/sysv/linux/shmctl.c (__new_shmctl): Wrap long lines.
++ Change old into union of __old_shmid_ds and __old_shminfo structs.
++ Adjust all users.
++ * wcsmbs/wcsmbs-tst1.c (main): Cast arguments with %C format to wint_t.
++
++ * sysdeps/unix/sysv/linux/utimes.c (__utimes): Fix actime and
++ modtime computation.
++ * sysdeps/unix/sysv/linux/futimes.c (__futimes): Likewise.
++ * sysdeps/posix/utimes.c (__utimes): Likewise.
++
++2003-07-30 Jakub Jelinek <jakub@redhat.com>
++
++ * elf/dl-reloc.c (_dl_allocate_static_tls): Don't return any value,
++ call dl_signal_error directly. If already relocated, call
++ GL(dl_init_static_tls) directly, otherwise queue it for later.
++ (CHECK_STATIC_TLS): Undo 2003-07-24 change.
++ * elf/rtld.c (dl_main): Initialize GL(dl_init_static_tls).
++ * elf/dl-open.c (dl_open_worker): Call GL_dl_init_static_tls
++ for all static TLS initializations delayed in _dl_allocate_static_tls.
++ * elf/dl-support.c (_dl_init_static_tls): New variable.
++ * include/link.h (struct link_map): Add l_need_tls_init.
++ * sysdeps/generic/ldsodefs.h (_rtld_global): Add _dl_init_static_tls.
++ (_dl_nothread_init_static_tls): New prototype.
++ (_dl_allocate_static_tls): Adjust prototype.
++
++ * elf/tls-macros.h (VAR_INT_DEF): Add alignment directive.
++
++2003-07-31 Alexandre Oliva <aoliva@redhat.com>
++
++ * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
++ elf_machine_rel_relative, elf_machine_rela_relative): Don't assume
++ reloc_addr is aligned.
++ * sysdeps/alpha/dl-machine.h (elf_machine_rela,
++ elf_machine_rela_relative): Adjust.
++ * sysdeps/arm/dl-machine.h (elf_machine_rel, elf_machine_rela,
++ elf_machine_rel_relative, elf_machine_rela_relative): Adjust.
++ * sysdeps/cris/dl-machine.h (elf_machine_rela,
++ elf_machine_rela_relative): Adjust.
++ * sysdeps/hppa/dl-machine.h (elf_machine_rela,
++ elf_machine_rela_relative): Adjust.
++ * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela,
++ elf_machine_rel_relative, elf_machine_rela_relative): Adjust.
++ * sysdeps/ia64/dl-machine.h (elf_machine_rela,
++ elf_machine_rela_relative): Adjust.
++ * sysdeps/m68k/dl-machine.h (elf_machine_rela,
++ elf_machine_rela_relative): Adjust.
++ * sysdeps/mips/dl-machine.h (elf_machine_rela,
++ elf_machine_rela_relative): Adjust.
++ * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela,
++ elf_machine_rela_relative): Adjust.
++ * sysdeps/powerpc/powerpc64/dl-machine.h
++ (elf_machine_rela_relative, elf_machine_rela): Adjust.
++ * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela,
++ elf_machine_rela_relative): Adjust.
++ * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela,
++ elf_machine_rela_relative): Adjust.
++ * sysdeps/sh/dl-machine.h (elf_machine_rela,
++ elf_machine_rela_relative): Adjust.
++ * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela,
++ elf_machine_rela_relative): Adjust.
++ * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela,
++ elf_machine_rela_relative): Adjust.
++ * sysdeps/x86_64/dl-machine.h (elf_machine_rela,
++ elf_machine_rela_relative): Adjust.
++
++2003-07-29 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Restore
++ alignment of TCB used before the last change so that it matches
++ ld's output for IE code.
++
++2003-07-29 Jakub Jelinek <jakub@redhat.com>
++
++ * include/ctype.h (__ctype_b_loc, __ctype_toupper_loc,
++ __ctype_tolower_loc): Avoid "dereferencing type-punned pointer will
++ break strict-aliasing rules" warnings.
++
++2003-07-29 Roland McGrath <roland@redhat.com>
++
++ * elf/Makefile: Revert accidental changes in last commit.
++ * elf/dl-support.c: Likewise.
++
++ * rt/tst-timer2.c: New file.
++ * rt/Makefile (tests): Add it.
++
++2003-07-25 Jakub Jelinek <jakub@redhat.com>
++
++ * elf/dl-support.c (_dl_hwcap): Add nocommon attribute.
++
++2003-07-29 Roland McGrath <roland@redhat.com>
++
++ * elf/Makefile (tests) [$(build-shared) = yes]:
++ Depend on $(test-modules).
++ * dlfcn/Makefile: Likewise.
++
++2003-07-28 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/generic/bits/types.h (__STD_TYPE): New macro.
++ Use that instead of `typedef' when using __*_TYPE macros in rhs.
++
++ * elf/tst-tls14.c [USE_TLS && HAVE___THREAD]: Conditionalize on this.
++ * elf/tst-tlsmod14a.c: Likewise.
++
++ * sysdeps/unix/sysv/linux/sys/sysctl.h: Include <linux/compiler.h>
++ before <linux/sysctl.h>.
++
++2003-07-27 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/syscalls.list: time syscall never fails.
++ * sysdeps/unix/sysv/linux/x86_64/time.S: time syscall never fails.
++ * sysdeps/unix/sysv/i386/time.S: time syscall never fails.
++ * sysdeps/unix/syscalls.list: umask syscall never fails.
++
++2003-07-27 Andreas Jaeger <aj@suse.de>
++
++ * sysdeps/unix/sysv/linux/init-first.c: Mark init as used.
++
++2003-07-25 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/a.out.h: Replace with i386 version.
++ Include bits/a.out.h.
++ * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add
++ bits/a.out.h.
++ * sysdeps/unix/sysv/linux/bits/a.out.h: New file.
++ * sysdeps/unix/sysv/linux/i386/bits/a.out.h: New file.
++ * sysdeps/unix/sysv/linux/m68k/bits/a.out.h: New file.
++ * sysdeps/unix/sysv/linux/x86_64/bits/a.out.h: New file.
++ * sysdeps/unix/sysv/linux/alpha/a.out.h: New file.
++ * sysdeps/unix/sysv/linux/alpha/bits/a.out.h: New file.
++ * sysdeps/unix/sysv/linux/sparc/a.out.h: New file.
++ * sysdeps/unix/sysv/linux/sparc/bits/a.out.h: New file.
++
++2003-07-24 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/pthread/aio_cancel.c (aio_cancel): Return AIO_ALLDONE
++ if aiocbp != NULL and has already completed. Return -1/EINVAL if
++ aiocbp->aio_fildes does not match fildes.
++
++2003-07-24 Ulrich Drepper <drepper@redhat.com>
++
++ * timezone/zic.c (rpytime): Replace cheap overflow check with a
++ functioning one.
++
++ * include/link.h (struct link_map): Add l_tls_firstbyte_offset field.
++ * sysdeps/generic/dl-tls.c [TLS_TCB_AT_TP] (_dl_determine_tlsoffset):
++ Fix calculation of offsets to take misalignment of first byte in
++ file into account.
++ * elf/dl-load.c (_dl_map_object_from_fd): Initialize
++ l_tls_firstbyte_offset field.
++ * elf/rtld.c (_dl_start_final, _dl_start, dl_main): Likewise.
++ * elf/dl-reloc.c (_dl_allocate_static_tls): Change return type to int.
++ Take l_tls_firstbyte_offset information into account.
++ (CHECK_STATIC_TLS): _dl_allocate_static_tls can fail now.
++ * sysdeps/generic/ldsodefs.h: Adjust _dl_allocate_static_tls prototype.
++ * elf/Makefile: Add rules to build and run tst-tls14.
++ * elf/tst-tls14.c: New file.
++ * elf/tst-tlsmod14a.c: New file.
++ * elf/tst-tlsmod14b.c: New file.
++
++2003-07-23 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/pthread/lio_listio.c (LIO_OPCODE_BASE): Define.
++ (lio_listio): Use it.
++ * sysdeps/pthread/lio_listio64.c: Include lio_listio.c instead of
++ after few defines to avoid duplication.
++
++2003-07-22 Jakub Jelinek <jakub@redhat.com>
++
++ * include/stdio.h (__libc_fatal): Add libc_hidden_proto.
++ * include/dlfcn.h (__libc_dlopen_mode, __libc_dlsym, __libc_dlclose):
++ Likewise.
++ * elf/dl-libc.c (__libc_dlopen_mode, __libc_dlsym, __libc_dlclose):
++ Add libc_hidden_def.
++ * sysdeps/generic/libc_fatal.c (__libc_fatal): Likewise.
++ * sysdeps/posix/libc_fatal.c (__libc_fatal): Likewise.
++ * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Likewise.
++ * elf/Versions (libc): Export __libc_dlopen_mode@@GLIBC_PRIVATE,
++ __libc_dlsym@@GLIBC_PRIVATE and __libc_dlclose@@GLIBC_PRIVATE.
++ * libio/Versions (libc): Export __libc_fatal@@GLIBC_PRIVATE.
++ * sysdeps/generic/unwind-dw2.c: Readd #ifs removed during last
++ change.
++ * sysdeps/generic/unwind.inc: Removed.
++
++ * include/resolv.h (__resp): Declare. Define to __libc_resp
++ if in libc.so.
++ (_res): If USE___THREAD, define to (*__resp).
++ * resolv/res_libc.c (_res): Normal .bss variable with compat_symbol
++ even if USE___THREAD.
++ (__resp): New __thread variable.
++ (__libc_resp): New alias.
++ * resolv/Versions (libc): Export _res@GLIBC_2.0 even if
++ USE_TLS && HAVE___THREAD. Export __resp@@GLIBC_PRIVATE.
++ * sysdeps/generic/res-state.c (__res_state): Return __resp
++ if USE___THREAD.
++
++2003-07-22 H.J. Lu <hongjiu.lu@intel.com>
++
++ * elf/dl-support.c (_dl_hwcap): New variable.
++ (_dl_aux_init): Initialize GL(dl_hwcap) for static binaries.
++
++ * sysdeps/i386/fpu/fclrexcpt.c: Include <unistd.h>, <ldsodefs.h>
++ and <dl-procinfo.h>.
++ (__feclearexcept): Clear MXCSR if needed.
++ * sysdeps/i386/fpu/fsetexcptflg.c: Likewise.
++
++ * sysdeps/i386/fpu_control.h (_FPU_GETCW, _FPU_SETCW): Document
++ that newer hardware needs more than these macros.
++
++ * sysdeps/i386/setfpucw.c: New file.
++
++2003-07-22 Jakub Jelinek <jakub@redhat.com>
++
++ * elf/Makefile (CFLAGS-ldconfig.c): Define IS_IN_ldconfig.
++ * elf/ldconfig.c: Include dl-procinfo.c.
++ (PROCINFO_CLASS): Define.
++ * sysdeps/generic/ldsodefs.h (PROCINFO_CLASS): Define.
++ * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.c: New file.
++ * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.h: New file.
++ * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (PROCINFO_CLASS):
++ Define if not yet defined. Use it instead of EXTERN. Undefine
++ at the end of the file.
++ * sysdeps/unix/sysv/linux/arm/dl-procinfo.c (PROCINFO_CLASS):
++ Likewise.
++ * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.c
++ (PROCINFO_CLASS): Likewise.
++ * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.c
++ (PROCINFO_CLASS): Likewise.
++
++2003-07-22 H.J. Lu <hongjiu.lu@intel.com>
++
++ * elf/ldconfig.c (main): Issue a fatal error if relative path
++ is used to build cache.
++
++2003-07-22 Ulrich Drepper <drepper@redhat.com>
++
++ * elf/readlib.c (process_file): Avoid possible overflow in assignment.
++
++2003-07-21 Art Haas <ahaas@airmail.net>
++
++ * manual/charset.texi (Converting a Character): Fix example code so a
++ valid pointer is returned.
++
++2003-07-22 Andreas Jaeger <aj@suse.de>
++
++ * elf/readlib.c (process_file): Check that file is a shared
++ object.
++
++ * elf/sofini.c (__FRAME_END__): Use attribute used so that gcc
++ will not optimize it away.
++ (__DTOR_END__): Likewise.
++ (__CTOR_END__): Likewise.
++
++ * include/libc-symbols.h (_elf_set_element): Use attribute used so
++ that gcc will not optimize it away.
++ (link_warning): Likewise.
++
++2003-07-22 Ulrich Drepper <drepper@redhat.com>
++
++ * wcsmbs/wcpncpy.c (__wcpncpy): Correct destination pointer handling.
++ * wcsmbs/Makefile (tests): Add tst-wcpncpy.
++ * wcsmbs/tst-wcpncpy.c: New file.
++
++2003-07-21 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/bits/sched.h (CLONE_STOPPED): Define.
++
++ * sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Reverse use of
++ stmxcsr and ldmxcsr.
++
++ * Makerules (build-module-helper): Add -z defs unless explicitly said
++ not to do it.
++ * dlfcn/Makefile: Define various *-no-z-defs variables for test DSOs
++ which has undefined symbols.
++ * elf/Makefile: Likewise.
++
++ * sysdeps/i386/fpu/fedisblxcpt.c: Use dl_hwcap, not dl_hwcap_mask.
++ * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
++ * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
++ * sysdeps/i386/fpu/fesetround.c: Likewise.
++ * sysdeps/i386/fpu/ftestexcept.c: Likewise.
++
++2003-07-21 HJ Lu <hongjiu.lu@intel.com>
++
++ * elf/ldconfig.c (search_dir): Treat symlink as regular file
++ if it won't point to itself.
++
++2003-07-20 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/ia64/hp-timing.h (REPEAT_READ): Cast to long int not to int.
++
++2003-07-20 Andreas Jaeger <aj@suse.de>
++
++ * iconvdata/cp932.c (BODY): STANDARD_ERR_HANDLER is now called
++ STANDARD_TO_LOOP_ERR_HANDLER.
++ * iconvdata/euc-jp-ms.c (BODY): Likewise.
++
++2003-07-19 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ZERO): Fix typo.
++
++ * sysdeps/unix/sysv/linux/syscalls.list: Remove affinity syscalls.
++
++2003-07-16 Daniel Jacobowitz <drow@mvista.com>
++ Andreas Jaeger <aj@suse.de>
++
++ * sysdeps/unix/sysv/linux/mips/bits/shm.h (SHMLBA): Define to
++ 256K, remove unneeded declaration of __getpagesize.
++
++2003-07-16 Andreas Schwab <schwab@suse.de>
++
++ * sysdeps/unix/sysv/linux/futimes.c: Include <string.h>.
++
++2003-07-15 Ulrich Drepper <drepper@redhat.com>
++
++ * io/test-utime.c (main): Make test yet more robust.
++
++2003-07-14 Ulrich Drepper <drepper@redhat.com>
++
++ More cancellation handling fixups.
++ * sysdeps/unix/sysv/linux/not-cancel.h: Add waitpid_not_cancel.
++ * sysdeps/generic/not-cancel.h: Likewise.
++ * catgets/open_catalog.c: Use not-cancelable syscalls.
++ * time/Makefile (CFLAGS-getdate.c): Add -fexceptions.
++ * sysdeps/unix/sysv/linux/llseek.c: Must not be cancelable.
++ * sysdeps/unix/syscalls.list: Don't mark lseek as cancelable.
++ * dlfcn/dlfcn.h: Mark dlopen with __THROW again.
++ * io/fcntl.h: Don't mark posix_fallocate with __THROW.
++ * libio/fileops.c: Use not-cancelable syscalls for fclose.
++ * libio/iopopen.c: Use no-cancelable syscalls.
++ * libio/stdio.h: Mark popen and pclose with __THROW again.
++ * misc/Makefile (CFLAGS-syslog.c): Add -fexceptions.
++ * misc/syslog.c: Fix locking and cancellation cleanup handling.
++ * posix/unistd.h: Mark ttyname and ttyname_r again with __THROW.
++ * stdio-common/Makefile (CFLAGS-tmpfile.c, CFLAGS-tmpfile64.c,
++ CFLAGS-tempname.c): Add -fexceptions.
++ * stdlib/Makefile (CFLAGS-mkstemp.c): Add -fexceptions.
++ * string/string.h: Mark strerror and strerror_r with _THROW again.
++ * sysdeps/generic/unwind.inc: New file. Copied from gcc.
++ * sysdeps/generic/unwind-dw2.c: Update from gcc version. Remove
++ #ifs since we now need all the code compiled.
++ * sysdeps/posix/spawni.c: Use close_not_cancel instead of close.
++ * sysdeps/unix/closedir.c: Use not-cancelable syscalls.
++ * sysdeps/unix/opendir.c: Likewise.
++
++ * iconvdata/Makefile (modules): Add CP932 and EUC-JP-MS.
++ Add rule for EUC-JP-MS dependency.
++ * iconvdata/cp932.c: New file.
++ * iconvdata/eucjp-ms.c: New file.
++ * iconvdata/gconv-modules: Add entries for CP932 and EUC-JP-MS.
++ Patch by MORIYAMA Masayuki <msyk@mtg.biglobe.ne.jp>.
++
++2003-07-15 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S (__socket): Add
++ cfi directives.
++
++2003-07-14 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
++
++ * sysdeps/unix/sysv/linux/kernel-features.h
++ (__ASSUME_FIXED_CLONE_SYSCALL): New macro.
++ * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Use it.
++
++ * sysdeps/unix/sysv/linux/utimes.c: Include sysdep.h.
++
++2003-07-14 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/kernel-features.h: Define
++ __ASSUME_TGKILL for Alpha appropriately.
++
++2003-07-12 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/bits/statfs.h (_STATFS_F_FRSIZE): Define.
++ * sysdeps/unix/sysv/linux/alpha/bits/statfs.h (_STATFS_F_FRSIZE):
++ Likewise.
++ * sysdeps/unix/sysv/linux/s390/bits/statfs.h (_STATFS_F_FRSIZE):
++ Likewise.
++
++ * sysdeps/unix/sysv/linux/kernel-features.h: Define
++ __ASSUME_UTIMES for x86 and kernels > 2.5.75.
++
++ * sysdeps/unix/sysv/linux/futimes.c (__futimes): Handle case with
++ second parameter == NULL.
++ * sysdeps/unix/sysv/linux/utimes.c: New file.
++
++2003-07-12 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/futimes.c: Include kernel-features.h.
++ * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_UTIMES): Fix
++ a typo.
++
++2003-07-12 Ulrich Drepper <drepper@redhat.com>
++
++ * time/sys/time.h: Namespace cleanup.
++ * sysdeps/unix/sysv/linux/kernel-features.h: Define
++ __ASSUME_UTIMES for the architectures which always had the syscall.
++ * sysdeps/unix/sysv/linux/futimes.c: New file.
++
++2003-07-12 Kaz Kojima <kkojima@rr.iij4u.or.jp>
++
++ * sysdeps/unix/sysv/linux/sh/socket.S: Save and restore the PR
++ register across CENABLE and CDISABLE.
++
++2003-07-11 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/sigwait.c: Include string.h.
++ * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
++ * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
++ * sysdeps/unix/sysv/linux/sleep.c (__sleep): Cast value to unsigned
++ int before assigning to max to avoid warnings.
++
++2003-07-11 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S (__socket): Add
++ cfi directives.
++ * sysdeps/unix/sysv/linux/s390/s390-32/socket.S (__socket): Likewise.
++ * sysdeps/unix/sysv/linux/s390/s390-64/socket.S (__socket): Likewise.
++
++2003-07-10 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/powerpc/powerpc64/elf/start.S: Set section flags of
++ .data.rel.ro.local to "aw".
++
++2003-07-10 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/m68k/Makefile: Remove CLFAGS-.oS addition.
++ * Makeconfig (CFLAGS-.oS): Use PIC-ccflag instead of pic-ccflag.
++ (PIC-ccflag): Define.
++
++2003-07-04 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/s390/s390-32/elf/start.S: Emit position independent code
++ if PIC.
++ * sysdeps/s390/s390-64/elf/start.S: Likewise.
++
++2003-07-07 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/powerpc/powerpc64/elf/start.S: Put L(start_address)
++ into .data.rel.ro.local section if PIC to avoid DT_TEXTREL.
++
++2003-07-07 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/kernel-features.h: Version
++ __ASSUME_CORRECT_SI_PID and __ASSUME_TGKILL if possible.
++
++ * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Adjust for
++ compilation with HAVE_AUX_SECURE defined.
++
++2003-07-05 Richard Henderson <rth@redhat.com>
++
++ * sysdeps/alpha/elf/initfini.c: Avoid .ent/.end.
++
++2003-07-03 Ulrich Drepper <drepper@redhat.com>
++
++ * configure.in: Also check for .cfi_rel_offset pseudo-op.
++
++2003-07-03 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/prof-freq.c (__profile_frequency): Fix a
++ typo.
++
++2003-07-03 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_AT_CLKTCK):
++ Define.
++ * sysdeps/unix/sysv/linux/prof-freq.h: New file.
++
++2003-07-02 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Protect new_sysinfo
++ decl and use with #ifdef NEED_DL_SYSINFO.
++
++2003-07-02 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Don't set
++ GL(dl_sysinfo) unles GL(dl_sysinfo_dso) is also set.
++ * sysdeps/unix/sysv/linux/kernel-features.h: Define
++ __ASSUME_VSYSCALL only for 2.5.69 and up since this is when the
++ vsyscall DSO was added.
++
++ * posix/bits/posix1_lim.h (_POSIX_NGROUPS_MAX): Define to 8 or 0
++ depending on selected standard.
++ (NGROUPS_MAX): Define to 8 if not defined.
++
++2003-07-02 Andreas Jaeger <aj@suse.de>
++
++ * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: New file.
++
++2003-05-04 H.J. Lu <hongjiu.lu@intel.com>
++
++ * malloc/arena.c (arena_get2): Add atomic_write_barrier.
++ * malloc/thread-m.h: Include <atomic.h>.
++ (atomic_full_barrier): Provide default.
++ (atomic_read_barrier): Likewise.
++ (atomic_write_barrier): Likewise.
++ * sysdeps/ia64/bits/atomic.h (atomic_full_barrier): New #define.
++
++2003-06-30 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/generic/sysdep.h: Define cfi_rel_offset and CFI_REL_OFFSET.
++
++2003-06-30 Richard Henderson <rth@redhat.com>
++
++ * sysdeps/alpha/bits/atomic.h (__arch_compare_and_exchange_bool_*_int):
++ Invert the sense of the return value.
++ (__arch_exchange_16_int): Fix paste-o.
++ (__arch_exchange_{32,64}_int): Fix think-o.
++
++ * sysdeps/unix/sysv/linux/alpha/clone.S: Load child_tid properly.
++
++2003-06-30 Richard Henderson <rth@redhat.com>
++
++ * include/sys/resource.h (__getrusage): Mark hidden.
++ * include/sys/time.h (__settimeofday, __setitimer, __utimes): Likewise.
++ * include/sys/wait.h (__wait4): Likewise.
++
++2003-06-17 Guido Guenther <agx@sigxcpu.org>
++
++ * sysdeps/unix/sysv/linux/mips/xstatconv.c: Handle STAT_IS_KERNEL_STAT
++ case.
++ (xstat_conv): Rename to __xstat_conv and remove static inline.
++ (xstat64_conv): Likewise.
++
++2003-06-29 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/sleep.c (__sleep): Handle parameter
++ values which cannot be handled in one nanosleep call.
++
++2003-06-25 Alfred M. Szmidt <ams@kemisten.nu>
++
++ * sysdeps/generic/bits/in.h (IPV6_HOPOPTS, IPV6_DSTOPTS): New macros.
++ (IPV6_RXHOPOPTS, IPV6_RXDSTOPTS): Use them.
++
++ * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: Typo fix.
++
++2003-06-04 Thorsten Kukuk <kukuk@suse.de>
++
++ * sysdeps/unix/sysv/linux/net/if_arp.h: Sync with kernel header,
++ fix typo.
++
++2003-06-26 Steven Munroe <sjmunroe@us.ibm.com>
++
++ * sysdeps/unix/sysv/linux/xstatconv.h [!STAT_IS_KERNEL_STAT]:
++ Conditionalize function definitions that use struct kernel_stat.
++ * sysdeps/unix/sysv/linux/fxstat.c: Remove __syscall_fstat extern.
++ * sysdeps/unix/sysv/linux/lxstat.c: Remove __syscall_lstat extern.
++ * sysdeps/unix/sysv/linux/xstat.c: Remove __syscall_stat extern.
++
++2003-06-28 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/s390/semtimedop.c (semtimedop): Add real
++ implementation.
++
++2003-06-07 Thorsten Kukuk <kukuk@suse.de>
++
++ * nis/nss_compat/compat-grp.c: Remove unused nis_first variable.
++ (getgrent_next_file): Don't store group name to early in blacklist.
++
++ * nis/nss_compat/compat-pwd.c (internal_getpwuid_r): Save strlen result
++ and use memcpy instead of strcpy.
++
++2003-06-28 Ulrich Drepper <drepper@redhat.com>
++
++ * nis/nss_compat/compat-grp.c: Optimize several little things. Use
++ stream unlocked.
++ * nis/nss_compat/compat-initgroups.c: Likewise.
++ * nis/nss_compat/compat-pwd.c: Likewise.
++ * nis/nss_compat/compat-spwd.c: Likewise.
++
++2003-06-27 Thorsten Kukuk <kukuk@suse.de>
++
++ * nis/nss_compat/compat-initgroups.c: Don't use our own NIS/NIS+
++ functions, dlopen corresponding NSS module instead.
++
++2003-06-27 Jeroen Dekkers <jeroen@dekkers.cx>
++
++ * sysdeps/mach/hurd/alpha/init-first.c: Remove call to __libc_init.
++ * sysdeps/mach/hurd/i386/init-first.c: Likewise.
++ * sysdeps/mach/hurd/mips/init-first.c: Likewise.
++ * sysdeps/mach/hurd/powerpc/init-first.c: Likewise.
++
++2003-06-27 Ulrich Drepper <drepper@redhat.com>
++
++ * rt/Makefile (CFLAGS-librt-cancellation.c): Define.
++
++2003-06-26 Roland McGrath <roland@frob.com>
++
++ * sysdeps/mach/configure.in: Barf rather than define NO_CREATION_TIME.
++ * sysdeps/mach/configure: Regenerated.
++ * sysdeps/mach/hurd/times.c (times_init): Function removed.
++ (__times): Assume `creation_time' field is available.
++ * sysdeps/mach/hurd/Makefile [$(subdir) = csu] (sysdep_routines):
++ Don't append set-init.
++ * sysdeps/mach/hurd/set-init.c: File removed.
++
++2003-06-26 Roland McGrath <roland@redhat.com>
++
++ * elf/elf.h (AT_SECURE): New macro.
++ * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Grok it,
++ set __libc_enable_secure.
++ (_dl_show_auxv): Add AT_SECURE to name table.
++ * elf/dl-support.c (_dl_aux_init): Grok AT_SECURE, set
++ __libc_enable_secure and __libc_enable_secure_decided.
++ * sysdeps/unix/sysv/linux/ldsodefs.h
++ [__ASSUME_AT_SECURE] (HAVE_AUX_SECURE): Define it.
++ * sysdeps/unix/sysv/linux/kernel-features.h
++ [__LINUX_KERNEL_VERSION >= 132426] (__ASSUME_AT_SECURE): Define it.
++
++2003-06-26 Ulrich Drepper <drepper@redhat.com>
++
++ * io/test-utime.c: If _STATBUF_ST_NSEC is defined, adjust lower
++ boundary test to take rounding of nanoseconds into account.
++
++ * sysdeps/unix/sysv/linux/bits/stat.h: Define _STATBUF_ST_NSEC.
++ * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
++ * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Likewise.
++ * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
++ * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
++ * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
++ * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
++
++2003-06-26 Andreas Schwab <schwab@suse.de>
++
++ * sysdeps/m68k/fpu/bits/mathinline.h: Don't inline frexp.
++ * sysdeps/m68k/fpu/s_frexp.c: Put implementation here.
++ * sysdeps/m68k/fpu/s_frexpl.c: Fix to handle unnormalized numbers.
++
++2003-06-17 Thorsten Kukuk <kukuk@suse.de>
++
++ * nis/Makefile: Remove NIS/NIS+ files from nss_compat module.
++ * nis/nss_compat/compat-grp.c: Don't use our own NIS/NIS+ functions,
++ dlopen corresponding NSS module instead.
++ * nis/nss_compat/compat-pwd.c: Likewise.
++ * nis/nss_compat/compat-spwd.c: Likewise.
++ * nis/nss_compat/compat-initgroups.c: Disabled for now.
++ * nss/Versions: Export __nss_lookup_function.
++
++2003-06-19 Daniel Jacobowitz <drow@mvista.com>
++
++ * sysdeps/unix/sysv/linux/kernel-features.h: Update kernel features
++ for the SH architecture.
++
++2003-06-25 Thorsten Kukuk <kukuk@suse.de>
++
++ * csu/Makefile: Use CPPFLAGS to find correct linux/version.h.
++
++2003-06-25 Andreas Jaeger <aj@suse.de>
++
++ * stdlib/tst-strtod.c (main): Declare constant long double as
++ suggested by Jakub Jelinek and Andreas Schwab.
++
++ * posix/tst-nanosleep.c: Include <time.h> for nanosleep
++ declaration.
++
++ * stdio-common/tst-fphex.c: Fix format string.
++
++ * posix/transbug.c: Include <string.h> for memset and strlen
++ declarations.
++
++ * stdio-common/tst-sprintf.c: Include <stdlib.h> for free declaration.
++
++ * stdlib/tst-strtod.c (main): Pass long double value.
++
++ * test-skeleton.c: Include <time.h> for nanosleep declaration.
++
++2003-06-25 Ulrich Drepper <drepper@redhat.com>
++
++ * include/time.h: Don't define CLOCK_IDFIELD_SIZE if _ISOMAC is
++ defined.
++
++2003-06-11 Jakub Jelinek <jakub@redhat.com>
++
++ * elf/Versions (libc): Add _dl_open_hook@GLIBC_PRIVATE.
++ * elf/dl-libc.c (struct dl_open_hook): New.
++ (_dl_open_hook): New variable.
++ (do_dlsym_private): New function.
++ (__libc_dlopen_mode) [!SHARED]: Lookup _dl_open_hook@GLIBC_PRIVATE
++ and initialize it if found.
++ (__libc_dlopen_mode) [SHARED]: If _dl_open_hook is non-NULL,
++ call dlopen_mode hook.
++ (__libc_dlsym) [SHARED]: If _dl_open_hook is non-NULL,
++ call dlsym hook.
++ (__libc_dlclose) [SHARED]: If _dl_open_hook is non-NULL,
++ call dlclose hook.
++
++2003-06-25 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/cris/sysdep.h (INLINE_SYSCALL): Cast
++ result to long int so that extensions to long long int work.
++ Patch by Uwe Reimann <libc-alpha@pulsar.homelinux.net>.
++
++2003-06-19 Jakub Jelinek <jakub@redhat.com>
++
++ * elf/ldconfig.c (main): Use add_system_dir instead of add_dir.
++ * sysdeps/generic/dl-cache.h (add_system_dir): Define.
++ * sysdeps/unix/sysv/linux/x86_64/dl-cache.h: Include sparc
++ dl-cache.h.
++ * sysdeps/unix/sysv/linux/s390/dl-cache.h: New file.
++ * sysdeps/unix/sysv/linux/mips/dl-cache.h: New file.
++ * sysdeps/unix/sysv/linux/powerpc/dl-cache.h: New file.
++ * sysdeps/unix/sysv/linux/sparc/dl-cache.h: New file.
++
++2003-06-19 Jakub Jelinek <jakub@redhat.com>
++
++ * test-skeleton.c (timeout_handler): If waitpid returned 0,
++ retry once after a second. If killed == 0, assume
++ WTERMSIG (status) == SIGKILL.
++
++2003-06-18 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Catch uninitialized
++ elements in the table instead of printing an empty name string.
++
++2003-06-05 Roland McGrath <roland@redhat.com>
++
++ * elf/elf.h (PT_GNU_STACK): New macro.
++
++2003-06-24 Ulrich Drepper <drepper@redhat.com>
++
++ * include/time.h: Define CLOCK_IDFIELD_SIZE.
++ * sysdeps/posix/clock_getres.c: Recognize thread CPU clock IDs.
++ * sysdeps/unix/clock_gettime.c: Likewise.
++ * sysdeps/unix/clock_settime.c: Likewise.
++ * sysdeps/unix/clock_nanosleep.c (CPUCLOCK_P): Adjust for new
++ clock id for thread CPU clocks.
++
++ * sysdeps/unix/sysv/linux/fstatfs64.c (__fstatfs64): Add support
++ for the fstatfs64 syscall.
++ * sysdeps/unix/sysv/linux/statfs64.c (__statfs64): Add support for
++ the statfs64 syscall.
++
++ * sysdeps/unix/sysv/linux/kernel-features.h: Define
++ __ASSUME_STATFS64 appropriately.
++
++ * sysdeps/unix/sysv/linux/internal_statvfs.c: Use f_frsize field
++ from statfs structure if it has been filled in.
++
++ * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs): Add f_frsize
++ field.
++ (struct statfs64): Likewise.
++ * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: Likewise.
++ * sysdeps/unix/sysv/linux/s390/bits/statfs.h: Likewise.
++
++2003-06-24 Richard Henderson <rth@redhat.com>
++
++ * sysdeps/unix/sysv/linux/alpha/syscalls.list (pread, pwrite): Use
++ the 64-bit syscall name.
++
++ * sysdeps/alpha/setjmp.S (_setjmp, setjmp): Mark .prologue.
++
++ * sysdeps/alpha/fpu/bits/mathinline.h: Honor
++ __LIBC_INTERNAL_MATH_INLINES. Implement __signbitf, __signbit.
++
++ * sysdeps/unix/sysv/linux/alpha/clone.S: Use HIDDEN_JUMPTARGET.
++ * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Use
++ libc_hidden_def.
++ * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
++ * sysdeps/unix/sysv/linux/alpha/setfpucw.c: Use libc_hidden_proto
++ on them.
++
++ * sysdeps/alpha/bits/atomic.h: New file.
++
++2003-06-24 Andreas Schwab <schwab@suse.de>
++
++ * sysdeps/m68k/fpu/libm-test-ulps: Update.
++
++2003-06-24 Andreas Jaeger <aj@suse.de>
++
++ * sysdeps/unix/sysv/linux/x86_64/stat.h (_STAT_VER_LINUX): Avoid
++ redeclaration with 32-bit code.
++
++2003-05-19 Ed Connell <ed.connell@sas.com>
++
++ * sysdeps/unix/sysv/linux/i386/getcontext.S (getcontext): Retain
++ floating point mask.
++ * sysdeps/i386/fpu/fegetenv.c (fegetenv): Likewise.
++
++2003-06-23 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/pthread/aio_misc.h: Mark __aio_requests_mutex,
++ __aio_enqueue_request, __aio_find_req, __aio_find_req_fd,
++ __aio_free_request, __aio_notify, and __aio_sigqueue as hidden.
++
++ * sysdeps/pthread/aio_suspend.c (aio_suspend): Set errno to the result
++ of pthread_cond_wait if there was an error. Use pthread_cleanup_*
++ instead of __libc_cleanup_region_*.
++
++2003-06-20 Richard Henderson <rth@redhat.com>
++
++ * sysdeps/unix/make-syscalls.sh: Implement ! prefix for strong aliases.
++ * sysdeps/unix/sysv/linux/alpha/syscalls.list (open, open64): New.
++
++2003-06-20 Richard Henderson <rth@redhat.com>
++
++ * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL1): Use __builtin_expect.
++ * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_ST_INO_64_BIT)
++ Unset for alpha.
++ (__ASSUME_TIMEVAL64): Set for alpha.
++ * sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove
++ adjtimex, osf_sigprocmask, old_adjtimex.
++ * sysdeps/unix/sysv/linux/alpha/adjtime.c: Use INLINE_SYSCALL,
++ __ASSUME_TIMEVAL64. Reorg tv64 functions to avoid uninit variable.
++ * sysdeps/unix/sysv/linux/alpha/getitimer.S: Use __ASSUME_TIMEVAL64.
++ * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
++ * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
++ * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
++ * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
++ * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
++ * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
++ * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
++ * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Streamline
++ PIC code sequence.
++ * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
++ * sysdeps/unix/sysv/linux/alpha/sigaction.c: New file.
++ * sysdeps/unix/sysv/linux/alpha/sigprocmask.c: Use INLINE_SYSCALL.
++ * sysdeps/unix/sysv/linux/alpha/ustat.c: Likewise.
++ * sysdeps/unix/sysv/linux/alpha/xmknod.c: Likewise.
++ * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove osf_sigprocmask,
++ sys_ustat, sys_mknod, adjtimex, old_adjtimex.
++ * sysdeps/unix/sysv/linux/alpha/sysdep.h (INLINE_SYSCALL): Don't
++ defer to __syscall_name; error for rt_sigaction.
++ * sysdeps/unix/sysv/linux/alpha/xstatconv.c: Include kernel_stat.h.
++
++2003-06-18 Ulrich Drepper <drepper@redhat.com>
++
++ * malloc/malloc.c (public_mALLINFo): Initialize malloc if it
++ hasn't happened yet.
++
++ * sysdeps/unix/sysv/linux/x86_64/register-dump.h (register_dump):
++ Fix completely broken implementation. The second parameter is of
++ type struct ucontext*.
++
++ * sysdeps/x86_64/dl-machine.h (elf_machine_runtime_setup): Always
++ inline.
++
++ * sysdeps/i386/i686/dl-hash.h: Don't inline _dl_elf_hash.
++ * sysdeps/generic/dl-hash.h: Likewise.
++
++ * sysdeps/generic/memcmp.c: Remove inline from
++ memcmp_common_alignment and memcmp_not_common_alignment definition.
++
++ * intl/localealias.c (read_alias_file): Determine whether line is
++ read incompletely early, before we modify the line.
++
++2003-06-17 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela)
++ <case R_PPC64_DTPREL64>: Don't segfault on undefined symbols.
++
++2003-06-17 Paul Mackerras <paulus@samba.org>
++
++ * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: New file.
++ * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: New file.
++ * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: New file.
++ * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: New file.
++ * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h: New file.
++ * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Adjust.
++
++2003-06-17 Jakub Jelinek <jakub@redhat.com>
++
++ * posix/regcomp.c (build_word_op): Use alnum instead of alpha class.
++
++2003-06-17 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/clock_nanosleep.c (clock_nanosleep): nanosleep
++ takes care of enabling cancellation.
++
++ * sysdeps/pthread/aio_suspend.c (aio_suspend): Make aio_suspend
++ cancelable. It's not correct to disable cancellation. Instead of
++ a cleanup handler.
++
++ * sysdeps/unix/sysv/linux/sigtimedwait.c: If SIGCANCEL is defined
++ and part of the incoming set, create a temporary set without this
++ signal.
++ * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
++ * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
++
++ * sysdeps/unix/sysv/linux/sleep.c: Use CANCELLATION_P if defined before
++ returning because seconds==0. Add __builtin_expect.
++
++2003-06-16 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/i386/socket.S: Add unwind information.
++
++ * sysdeps/unix/sysv/linux/wait.c (__libc_wait): Fix type of result
++ variable.
++
++2003-06-16 Thorsten Kukuk <kukuk@suse.de>
++
++ * include/libc-symbols.h: Add static_link_warning macro.
++ * grp/initgroups.c: Print linker warning if this function
++ is called in a static linked binary.
++ * nss/getXXbyYY.c: Likewise.
++ * nss/getXXbyYY_r.c: Likewise.
++ * nss/getXXent.c: Likewise.
++ * nss/getXXent_r.c: Likewise.
++ * sysdeps/posix/getaddrinfo.c: Likewise.
++
++2003-06-16 Bruno Haible <bruno@clisp.org>
++
++ * iconvdata/gconv-modules (ISO-8859-15): Add aliases ISO_8859-15,
++ LATIN-9.
++ (ISO-8859-16): Add aliases ISO_8859-16:2001, ISO_8859-16.
++ (IBM1047): Add alias IBM-1047.
++ (GBK): Add aliases MS936, WINDOWS-936.
++
++2003-06-16 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/xstatconv.c (__xstat_conv): Define even if
++ defined __ASSUME_STAT64_SYSCALL && defined XSTAT_IS_XSTAT64.
++ (__xstat64_conv): Change xstat_conv to __xstat_conv.
++
++2003-06-16 Ulrich Drepper <drepper@redhat.com>
++
++ * locale/iso-639.def: Update from current official ISO 639.
++
++ * math/tgmath.h (__TGMATH_UNARY_IMAG_ONLY): Removed.
++
++2003-06-15 Andreas Jaeger <aj@suse.de>
++
++ * sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Correct setting
++ of MXCSR.
++ * sysdeps/i386/fpu/fedisblxcpt.c (fedisableexcept): Likewise.
++ * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Likewise.
++ Reported by Arnaud Desitter <arnaud.desitter@geography.oxford.ac.uk>.
++
++ * math/tgmath.h (carg): Handle real arguments.
++ (conj): Likewise.
++ (cproj): Likewise.
++ (cimag): Likewise.
++ (creal): Likewise.
++
++ * math/Makefile (CFLAGS-test-tgmath-ret.c): New.
++ (tests): Add test-tgmath-ret.
++ * math/test-tgmath-ret.c: New file.
++
++ * math/tgmath.h (ilogb): Return always an int.
++
++2003-06-16 Ulrich Drepper <drepper@redhat.com>
++
++ * elf/rtld.c (dl_main): Use l_map_start not l_addr in Phdr
++ computation so that prelinking works.
++
++2003-06-15 Ulrich Drepper <drepper@redhat.com>
++
++ * elf/dl-iteratephdr.c (__dl_iterate_phdr): Don't skip dynamic
++ linker's map.
++ * elf/rtld.c (dl_main): Initialize l_phdr and l_phnum of of the
++ dynamic linker's map.
++
++ Fix cancellation point handling wrt exception based cleanup.
++ * io/Makefile: Compile fcntl.c, poll.c, and lockf.c with exceptions.
++ * misc/Makefile: Compile pselect.c, readv.c, writev.c, and usleep.c
++ with exceptions.
++ * posix/Makefile: Compile pread.c, pread64.c, pwrite.c, pwrite64.c,
++ sleep.c, wait.c, waitid.c, and waitpid.c with exceptions.
++ * rt/Makefile: Compile aio_suspend.c and clock_nanosleep.c with
++ exceptions.
++ * signal/Makefile: Compile sigpause.c, sigsuspend.c, sigtimedwait.c,
++ sigwait.c, and sigwaitinfo.c with exceptions.
++ * stdlib/Makefile: Compile system.c with exceptions.
++ * sysvipc/Makefile: Compile msgrcv.c and msgsnd.c with exceptions.
++ * termios/Makefile: Compile tcdrain.c with exceptions.
++ * sysdeps/generic/lockf.c: Add comment explaining the cancellation
++ situation.
++ * sysdeps/generic/pselect.c: Likewise.
++ * sysdeps/posix/sigpause.c: Likewise.
++ * sysdeps/posix/system.c: Likewise.
++ * sysdeps/posix/waitid.c: Likewise.
++ * sysdeps/unix/sysv/linux/sleep.c: Likewise.
++ * sysdeps/unix/sysv/linux/usleep.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/sysdep.h: Major rewrite of
++ INTERNAL_SYSCALL to not use push inside asm statement so that
++ unwind info is correct around the syscall.
++ * sysdeps/unix/clock_nanosleep.c: Add cancellation support.
++ * sysdeps/unix/sysv/linux/clock_nanosleep.c: Likewise.
++
++2003-06-15 Andreas Jaeger <aj@suse.de>
++
++ * sysdeps/x86_64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
++ Add CFI directives.
++
++2003-06-15 Guido Guenther <agx@sigxcpu.org>
++
++ * sysdeps/unix/sysv/linux/mips/Makefile: Add missing endif and
++ create $(objpfx).
++
++2003-06-14 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/check_pf.c (__check_pf): Use __close,
++ not close.
++
++ * inet/inet6_option.c (inet6_option_alloc): Add libc_hidden_def.
++ * include/netinet/in.h (inet6_option_alloc): Add libc_hidden_proto
++ definition.
++
++ * inet/netinet/ip6.h (IP6OPT_PAD1, IP6OPT_PADN): Define.
++ * inet/netinet/in.h: Add prototypes for inet6_option_* functions.
++ * inet/Makefile (routines): Add inet6_option.
++ * inet/inet6_option.c: New file.
++ * inet/Versions [GLIBC_2.3.3] (libc): Add inet6_option_space,
++ inet6_option_init, inet6_option_append, inet6_option_alloc,
++ inet6_option_next, and inet6_option_find.
++
++2003-06-13 Ulrich Drepper <drepper@redhat.com>
++
++ * inet/netinet/ip6.h (struct ip6_ext): Define.
++
++ * sysdeps/unix/sysv/linux/sys/param.h (howmany): Optimize for gcc.
++
++ Fixing gcc 3.3 warnings, part II.
++ * argp/argp-help.c (hol_entry_long_iterate): Always inline.
++ * elf/dl-load.c (cache_rpath): Don't inline.
++ * iconvdata/cns11642l2.h: Always inline all functions.
++ * iconvdata/iso-ir-165.h: Likewise.
++ * locale/Makefile (aux): Add coll-lookup.
++ * locale/coll-lookup.c: New file.
++ * locale/coll-lookup.h (collidx_table_lookup): Do not define here.
++ (collseq_table_lookup): Likewise.
++ * locale/weightwc.h: Adjust collidx_table_lookup calls for name change.
++ * posix/fnmatch_loop.c: Adjust collseq_table_lookup calls for name
++ change.
++ * posix/regcomp.c: Likewise.
++ * posix/regexec.c: Likewise.
++ * locale/programs/3level.h (*_get): Always inline.
++ * locale/programs/locfile.h: Move definition of handle_copy to...
++ * locale/programs/locfile.c: ...here.
++ * locale/programs/ld-collate.c (obstack_int32_grow): Always inline.
++ (obstack_int32_grow_fast): Likewise.
++ (utf8_encode): Likewise.
++ (find_element): Avoid aliasing problems.
++ (insert_value): Likewise.
++ (collate_read): Likewise.
++ * nss/getent.c (print_hosts): Don't inline
++ (print_networks): Likewise.
++ (print_shadow): Likewise.
++ (build_doc): Likewise.
++ * nss/nss_files/files-parse.c [ENTDATA] (parser_stclass): Don't
++ inline.
++ * posix/regcomp.c (re_set_fastmap): Always inline.
++ (seek_collating_symbol_entry): Likewise.
++ (lookup_collation_sequence_value): Likewise.
++ (build_range_exp): Likewise.
++ (build_collating_symbol): Likewise.
++ * posix/regexec.c (acquire_init_state_context): Don't inline.
++ (clean_state_log_if_need): Likewise.
++ * resolv/res_send.c (eConsIovec): Rewrite to not return struct and
++ adjust all callers.
++ (evConsTime): Likewise.
++ (evAddTime): Likewise.
++ (evSubTime): Likewise.
++ (evNowTime): Likewise.
++ (evTimeSpec): Removed.
++ (__libc_res_nsend): Avoid aliasing problem.
++ * sysdeps/unix/sysv/linux/ifreq.h: Move old_siocgifconf definition to..
++ * sysdeps/unix/sysv/linux/ifreq.c: ...here.
++ * sysdeps/unix/sysv/linux/i386/dl-procinfo.h (_dl_string_hwcap):
++ Always inline.
++ (_dl_string_platform): Likewise.
++ * wctype/wchar-lookup.h (wctype_table_lookup): Always inline.
++ (wcwidth_table_lookup): Likewise.
++ (wctrans_table_lookup): Likewise.
++
++ * sysdeps/unix/sysv/linux/sys/epoll.h: Include <stdint.h>.
++
++2003-06-12 Ulrich Drepper <drepper@redhat.com>
++
++ * wcsmbs/wchar.h: Define wint_t in std namespace, too [PR libc/5034].
++
++2003-05-29 Jim Meyering <jim@meyering.net>
++
++ * time/strftime.c (my_strftime) [!defined _NL_CURRENT
++ && HAVE_STRFTIME]: Use underlying_strftime for %r.
++ Suggested by Daniel Yacob <locales@geez.org>.
++
++2003-06-12 Steven Munroe <sjmunroe@us.ibm.com>
++
++ * sysdeps/powerpc/powerpc64/dl-machine.h (RTLD_START): Replace
++ @got notation with @toc.
++ * sysdeps/powerpc/powerpc64/sysdep.h (CALL_MCOUNT): Likewise.
++ * sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S (__brk): Likewise.
++
++2003-06-12 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/posix/getaddrinfo.c (gaih_inet): Set no_inet6_date also
++ if only PF_INET address is needed.
++
++ * nss/getXXbyYY_r.c: Make sure we always return a nonzero value in
++ case of an error.
++
++ * scripts/config.guess: Update from upstream version.
++ * scripts/config.sub: Likewise.
++
++2003-06-12 Jakub Jelinek <jakub@redhat.com>
++
++ * locale/programs/ld-time.c (time_output): Also copy the era format,
++ not only the name.
++
++2003-06-12 H.J. Lu <hongjiu.lu@intel.com>
++
++ * posix/transbug.c (run_test): Return 1 for failure.
++ (do_test): Compare only if run_test is successful.
++
++2003-06-12 Simon Josefsson <jas@extundo.com>
++
++ * argp/argp.h [!__THROW]: Define if undefined.
++
++2003-06-12 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/cris/sysdep.h: Fix handling of syscalls with
++ more than four parameters.
++ Patch by Uwe Reimann <libc-alpha@pulsar.homelinux.net>.
++
++2003-06-12 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/ia64/kernel_stat.h: New file.
++ * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: New file.
++ * sysdeps/unix/sysv/linux/x86_64/kernel_stat.h: New file.
++
++ * stdio-common/printf-parsemb.c: Include stdlib.h and sys/param.h.
++
++2003-06-12 Roland McGrath <roland@redhat.com>
++
++ * Makerules ($(objpfx)stubs): Rewrite sed magic.
++
++2003-02-28 Isamu Hasegawa <isamu@yamato.ibm.com>
++
++ * posix/regcomp.c (parse_expression): Deliver translation to
++ build_word_op, and build_charclass.
++ (build_charclass): Apply translation for character classes too.
++ (build_word_op): Deliver translation to build_charclass.
++ * posix/transbug.c: New file.
++ * posix/Makefile (tests): Add transbug.
++
++2003-06-04 Paolo Bonzini <bonzini@gnu.org>
++
++ * posix/regexec.c (group_nodes_into_DFAstates): Check for
++ NEXT_ENDBUF_CONSTRAINT. Move check for constraints which do a
++ 'continue' before the others.
++
++2003-06-11 Ulrich Drepper <drepper@redhat.com>
++
++ * dirent/scandir.c (SCANDIR): Reset errno after calling selector
++ function [PR libc/5045].
++
++ * sysdeps/i386/bits/byteswap.h (__bswap_32): Use bswap instruction
++ also for P4.
++
++ * time/tzfile.c: Add a couple of __builtin_expect.
++
++ Remove warnings gcc 3.3 shows.
++ * argp/argp-help.c (hol_entry_short_iterate): Don't inline.
++ * elf/dl-load.c (fillin_rpath): Likewise.
++ (add_path): Likewise.
++ * elf/dl-version.c (find_needed): Always inline.
++ * elf/do-lookup.c (FCT): Don't inline.
++ * iconv/Makefile: Extend vpath to intl subdir.
++ (iconvconfig-modules): Add hash-string.
++ * iconv/gconv_charset.h (strip): Don't inline.
++ (upstr): Always inline.
++ Move __gconv_compare_alias prototype to...
++ * iconv/gconv_int.h: ...here.
++ * iconv/gconv_db.c: Don't include gconv_charset.h.
++ * iconv/gconv_conf.c (add_alias): Don't inline.
++ (insert_module): Likewise.
++ * iconv/gconv_simple.c (internal_ucs4_loop): Always inline.
++ (internal_ucs4_loop_unaligned): Likewise.
++ (internal_ucs4_loop_single): Likewise.
++ (ucs4_internal_loop): Likewise.
++ (ucs4_internal_loop_unaligned): Likewise.
++ (ucs4_internal_loop_single): Likewise.
++ (internal_ucs4le_loop): Always inline.
++ (internal_ucs4le_loop_unaligned): Likewise.
++ (internal_ucs4le_loop_single): Likewise.
++ (ucs4le_internal_loop): Likewise.
++ (ucs4le_internal_loop_unaligned): Likewise.
++ (ucs4le_internal_loop_single): Likewise.
++ * iconv/loop.c: Always inline the defined functions.
++ * iconvdata/cns11642.h: Likewise.
++ * iconvdata/cns11642l1.h: Likewise.
++ * iconvdata/euc-kr.c: Likewise.
++ * iconvdata/gb2312.h: Likewise.
++ * iconvdata/jis0201.h: Likewise.
++ * iconvdata/jis0208.h: Likewise.
++ * iconvdata/jis0212.h: Likewise.
++ * iconvdata/jisx0213.h: Likewise.
++ * iconvdata/ksc5601.h: Likewise.
++ * iconvdata/utf-7.c (base64): Don't inline.
++ * include/libc-symbols.h (symbol_set_first_element): Add cast
++ (symbol_set_end_p): Likewise.
++ * include/set-hooks (RUN_HOOK): Likewise.
++ * inet/Makefile (aux): Add ifreq.
++ * intl/Makefile (aux): Add some entries from routines. Add
++ hash-string.
++ * intl/hash-string.c: New file.
++ * intl/hash-string.h: Remove hash_string definition. Declare
++ __hash_string.
++ * iconv/gconv_cache.c (find_module_idx): Adjust hash_string caller.
++ * iconv/iconvconfig.c (new_name): Likewise.
++ * intl/dcigettext.c (_nl_find_msg): Likewise.
++ * intl/loadmsgcat.c (_nl_load_domain): Likewise.
++ * io/ftw.c (open_dir_stream): Always inline.
++ (process_entry): Don't inline.
++ * locale/findlocale.c: Include gconv_int.h.
++ * locale/setlocale.c (new_composite_name): Don't inline.
++ * locale/weight.h (findidx): Always inline.
++ * locale/weightwc.h (findidx): Likewise.
++ * locale/programs/linereader.c (lr_ignore_rest): Define here.
++ * locale/programs/linereader.h (lr_ignore_rest): Don't define here,
++ just declare it.
++ (lr_getc): Always inline.
++ (lr_ungetc): Likewise.
++ * nss/nss_files/files-parse.c (parse_list): Likewise.
++ * stdio-common/Makefile (aux): Add printf-parsemb and
++ printf-parsewc.
++ * stdio-common/_itoa.h (_itoa_word): Always inline.
++ (_fitoa_word, _fitoa): Don't define here, only declare.
++ * stdio-common/_itoa.c (_iftoa_word): Add here.
++ (_fitoa): Likewise.
++ * stdio-common/_itowa.h (_itowa_word): Always inline.
++ * stdio-common/printf-parse.h (read_int): Don't inline.
++ (find_spec): Don't define.
++ Declare __find_specmb and __find_specwc.
++ (parse_one_spec): Don't define.
++ Declare __parse_one_specmb and __parse_one_specwc.
++ * stdio-common/printf-parsemb.c: New file.
++ * stdio-common/printf-parsewc.c: New file.
++ * stdio-common/vfprintf.c: Update calls to find_spec and
++ parse_one_spec for new names.
++ * stdio-common/printf-prs.c: Likewise. Define DONT_NEED_READ_INT.
++ * stdlib/Makefile (aux): Add grouping and groupingwc.
++ * stdlib/grouping.c: New file.
++ * stdlib/groupingwc.c: New file.
++ * stdlib/grouping.h (correctly_grouped_prefix): Don't define here.
++ Just prototype.
++ * stdlib/rpmatch.c (try): Don't inline.
++ * stdlib/strtod.c (round_and_return): Don't line.
++ (str_to_mpn): Likewise.
++ (__mpn_lshift_1): Always inline. Optimize only for constant count.
++ Adjust for name change of correctly_grouped_prefix.
++ * sysdeps/generic/strtol.c: Adjust for name change of
++ correctly_grouped_prefix.
++ * string/strxfrm.c (utf8_encode): Don't inline.
++ * sysdeps/generic/dl-cache.c: Define _dl_cache_libcmp.
++ * sysdeps/generic/dl-cache.h: Just declare _dl_cache_libcmp.
++ * sysdeps/generic/ifreq.c: New file.
++ * sysdeps/unix/sysv/linux/ifreq.c: New file.
++ * sysdeps/generic/ifreq.h (__ifreq): Only declare here.
++ * sysdeps/unix/sysv/linux/ifreq.h: Likewise.
++ * sysdeps/generic/ldsodefs.h (_dl_name_match_p): Always inline.
++ * sysdeps/generic/unwind-dw2-fde.c (start_fde_sort): Don't inline.
++ (fde_split): Likewise.
++ (fde_merge): Likewise.
++ (end_fde_sort): Likewise.
++ (init_object): Likewise.
++ (binary_search_unencoded_fdes): Likewise.
++ (binary_search_single_encoding_fdes): Likewise.
++ (binary_search_mixed_encoding_fdes): Likewise.
++ * sysdeps/generic/wordexp.c (w_addchar): Don't inline.
++ * sysdeps/i386/dl-machine.c (elf_machine_runtime_setup): Always inline.
++ * sysdeps/posix/sprofil.c (profil_count): Don't inline.
++ * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
++ Add xstatconv.
++ * sysdeps/unix/sysv/linux/xstatconv.h: New file.
++ * sysdeps/unix/sysv/linux/xstatconv.c: Don't inline the function.
++ Export them. Prepend __ to name.
++ * sysdeps/unix/sysv/linux/Dist: Add xstatconv.h.
++ * sysdeps/unix/sysv/linux/fxstat.c: Adjust for name change of
++ conversion functions.
++ * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
++ * sysdeps/unix/sysv/linux/lxstat.c: Likewise.
++ * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
++ * sysdeps/unix/sysv/linux/xstat.c: Likewise.
++ * sysdeps/unix/sysv/linux/xstat64.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/fxstat.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/lxstat.c: Likewise.
++ * sysdeps/unix/sysv/linux/i386/xstat.c: Likewise.
++ * sysdeps/unix/sysv/linux/pathconf.c (__statfs_link_max,
++ __statfs_filesize_max, __statfs_symlinks): Define here. __ prepended
++ to name. Change callers.
++ * sysdeps/unix/sysv/linux/pathconf.h (__statfs_link_max,
++ __statfs_filesize_max, __statfs_symlinks): Don't define here, just
++ declare.
++ * sysdeps/unix/sysv/linux/fpathconf.c: Change all callers.
++ * time/tzfile.c (decode): Always inline.
++ * wcsmbs/wcsnrtombs.c: Change type of inbuf to unsigned char*.
++ Remove cast in tomb function call.
++ * wcsmbs/wcsrtombs.c Likewise.
++ * wcsmbs/wcstob.c: Introduce new temp variable to take pointer in
++ tomb function call.
++
++2003-06-10 Ulrich Drepper <drepper@redhat.com>
++
++ * po/zh_CN.po: Update from translation team.
++
++2003-06-10 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/bits/in.h (IPV6_V6ONLY, IPV6_JOIN_ANYCAST,
++ IPV6_LEAVE_ANYCAST, IPV6_IPSEC_POLICY, IPV6_XFRM_POLICY): Define.
++
++2003-06-10 Ulrich Drepper <drepper@redhat.com>
++
++ * inet/Makefile (aux): Add check_pf.
++ * include/ifaddrs.h: Add prototype for __check_pf.
++ * sysdeps/generic/check_pf.c: New file.
++ * sysdeps/unix/sysv/linux/check_pf.c: New file.
++ * sysdeps/unix/sysv/linux/ifaddrs.h (__no_netlink_support): Renamed
++ from no_netlink_support. Export.
++ * sysdeps/posix/getaddrinfo.c (getaddrinfo): Don't call getifaddrs,
++ call __check_pf.
++
++ * sysdeps/generic/ifaddrs.h: Add libc_hidden_def.
++
++ * sysdeps/posix/getaddrinfo.c (getaddrinfo): Don't leak memory
++ from getifaddr calls.
++
++2003-06-09 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/kernel-features.h
++ (__ASSUME_SETRESGID_SYSCALL): Define.
++ * sysdeps/unix/sysv/linux/setegid.c: Use __ASSUME_SETRESGID_SYSCALL
++ instead of __ASSUME_SETRESUID_SYSCALL.
++ (setegid): Only use setresgid32 inline syscall if __NR_setresgid32 is
++ defined.
++ * sysdeps/unix/sysv/linux/seteuid.c (seteuid): Only use setresgid32
++ inline syscall if __NR_setresuid32 is defined.
++ * sysdeps/unix/sysv/linux/i386/setegid.c (setegid): Use
++ __ASSUME_SETRESGID_SYSCALL instead of __ASSUME_SETRESUID_SYSCALL.
++ * sysdeps/unix/sysv/linux/i386/setregid.c: Backout last changes.
++ * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
++ * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c (setegid): Protect
++ code handling non-existant setresgid32 syscall with
++ #if __ASSUME_SETRESGID_SYSCALL == 0.
++
++2003-06-09 Andreas Schwab <schwab@suse.de>
++
++ * sunrpc/Makefile (generated): Remove rpc-proto.c, rpc-proto.d.
++ ($(rpcsvc:%.x=$(objpfx)x%$o)): Don't depend on
++ $(objpfx)rpc-proto.d.
++ (rpcsvc-dt-files, rpcsvc-depfiles): Define. Include
++ $(rpcsvc-depfiles) instead of $(objpfx)rpc-proto.d.
++ ($(objpfx)rpc-proto.d, $(objpfx)rpc-proto.c): Remove rules.
++
++2003-06-08 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/seteuid.c (seteuid): Use setresuid32
++ syscall directly if possible. If __ASSUME_SETRESUID_SYSCALL is
++ defined drop compatibility code.
++ * sysdeps/unix/sysv/linux/setegid.c (setegid): Use setresgid32
++ syscall directly if possible. If __ASSUME_SETRESUID_SYSCALL is
++ defined drop compatibility code.
++ * sysdeps/unix/sysv/linux/i386/seteuid.c (seteuid): Use
++ setresuid32 syscall directly if possible.
++ * sysdeps/unix/sysv/linux/i386/setegid.c (setegid): Use
++ setresgid32 syscall directly if possible.
++ * sysdeps/unix/sysv/linux/i386/setregid.c (__setregid): Make POSIX
++ compliant. Don't change sgid.
++ * sysdeps/unix/sysv/linux/i386/setreuid.c (__setreuid): Make POSIX
++ compliant. Don't change suid.
++
++ * config.h.in: Add have-forced-unwind.
++ * configure.in: Add AC_SUBST(libc_cv_forced_unwind).
++
++2003-06-07 Ulrich Drepper <drepper@redhat.com>
++
++ * test-skeleton.c (main): If EXPECTED_STATUS is defined check that
++ returned status from child matches.
++
++ * Makeconfig (gnulib): Add -lgcc_eh once again.
++
++2003-06-06 Ulrich Drepper <drepper@redhat.com>
++
++ * test-skeleton.c (main): Use TEMP_FAILURE_RETRY with waitpid.
++
++ * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Only allow
++ %edx for first parameter. This means no pushl and therefore the
++ unwind info isn't screwed up.
++
++2003-06-04 Richard Henderson <rth@redhat.com>
++
++ * sysdeps/alpha/dl-machine.h (RTLD_START): Fix top-of-stack backtrace.
++ * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
++ * sysdeps/alpha/elf/start.S: Likewise. Remove pointless allocation.
++ * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Use standard ldgp
++ entry sequence and explicit relocs. Add unwind info for sigreturn
++ and rt_sigreturn.
++ * configure.in (libc_cv_asm_cfi_directives): Test .cfi_remember_state.
++
++ * sysdeps/unix/sysv/linux/alpha/syscalls.list (semtimedop): New.
++ Annotate some parameters.
++ * sysdeps/unix/sysv/linux/alpha/sysdep.h (__NR_semtimedop): New.
++
++ * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Fix typo in conversion.
++
++ * include/libc-symbols.h (symbol_set_declare): Use arrays
++ of unspecified size.
++
++2003-06-04 Jakub Jelinek <jakub@redhat.com>
++
++ * config.make.in (ASFLAGS-config): New.
++ * Makeconfig (ASFLAGS): Append $(ASFLAGS-config).
++ * configure.in (libc_cv_as_noexecstack): New check.
++ (ASFLAGS_config): Substitute.
++
++2003-06-04 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/i386/fpu/bits/mathinline.h (log1p, asinh, acosh, atanh,
++ hypot, logb): Protect with #ifdef __FAST_MATH__.
++
++2003-06-04 Thorsten Kukuk <kukuk@suse.de>
++
++ * sysdeps/i386/fpu/bits/mathinline.h (ldexpf, ldexpl): Protect with
++ #ifdef __FAST_MATH__.
++
++2003-06-03 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/generic/glob.c [HAVE_D_TYPE] (glob_in_dir): Also allow
++ DT_LNK entries if GLOB_ONLYDIR is set [PR libc/5043].
++ * posix/globtest.sh: Adjust for this change.
++
++ * sysdeps/unix/sysv/linux/ifaddrs.c (netlink_open): Call getsockname
++ to get the actual PID value used in the records passed up.
++ (getifaddrs): Don't initialize nh.pid here.
++
++2003-06-02 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/ifaddrs.c (netlink_receive): Minor
++ optimization.
++
++ * po/zh_CN.po: Update from translation team.
++
++ * posix/getconf.c (main): Also recognize names without the
++ _POSIX_ prefix.
++
++ * elf/Makefile (CFLAGS-dl-lookup.c): Define.
++
++2003-06-02 Bernd Schmidt <bernds@redhat.com>
++
++ * sysdeps/i386/fpu/bits/mathinline.h (sqrt, __sqrtl, ldexp,
++ ldexpf, ldexpl): Only define if __FAST_MATH__.
++
++2003-06-02 Richard C. Bilson <rcbilson@plg.uwaterloo.ca>
++
++ Replace hard-coded offsets into struct sigcontext with generated file.
++ * sysdeps/unix/sysv/linux/ia64/sigcontext-offsets.sym: New file.
++ * sysdeps/unix/sysv/linux/ia64/Makefile
++ [$(subdir) = stdlib] (gen-as-const-headers): Add it.
++ * sysdeps/unix/sysv/linux/ia64/ucontext_i.h: Include it instead of
++ defining SC_* macros here.
++
++2003-06-02 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/bits/sched.h (CLONE_PID): Remove.
++
++2003-06-01 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/i386/dl-machine.h: Include <sysdep.h>.
++
++2003-06-01 Ulrich Drepper <drepper@redhat.com>
++
++ * test-skeleton.c (main): Request getopt to not reorder the
++ command line.
++
++ * elf/Makefile (CFLAGS-dl-runtime.c): Define.
++
++ * wcsmbs/wcpncpy.c (__wcpncpy): Fix broken implementation to match
++ stpncpy.
++
++2003-05-31 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/ia64/bits/sigaction.h (SA_NOCLDWAIT): Define.
++
++2003-05-31 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_plt_conflict):
++ New function.
++ (elf_machine_rela) <case R_PPC64_JMP_SLOT>: Avoid
++ RESOLVE_CONFLICT_FIND_MAP. If RESOLVE_CONFLICT_FIND_MAP is defined,
++ call elf_machine_plt_conflict instead of elf_machine_fixup_plt.
++
++2003-05-31 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/i386/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): Add
++ CFI directives.
++
++ * csu/Makefile: Fix Makefile warnings regarding Scrt1.o.
++
++ * libio/fileops.c (_IO_file_open): Don't mark as inline.
++
++ * sysdeps/ia64/elf/initfini.c (gmon_initializer): Mark with
++ attribute used.
++
++2003-05-30 Ulrich Drepper <drepper@redhat.com>
++
++ * scripts/config.guess: Update from master copy.
++ * scripts/config.sub: Likewise.
++
++2003-05-30 Guido Guenther <agx@sigxcpu.org>
++
++ * sysdeps/mips/mips64/bsd-_setjmp.S: Include <sys/asm.h> for
++ SETUP_GP64 and friends.
++ * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Fix register
++ names in internal_syscall{6,7}.
++ * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/mips/pread.c [_MIPS_SIM == _ABI64]: Fix
++ number of syscall arguments.
++ * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
++ * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
++ * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
++
++2003-05-30 Andreas Jaeger <aj@suse.de>
++
++ * sysdeps/x86_64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
++ Add CFI directives.
++
++ * sysdeps/unix/sysv/linux/x86_64/sigaction.c (RESTORE2): Add CFI
++ directives.
++
++ * sysdeps/generic/sysdep.h: Add CFI_* macros for C files.
++
++ * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
++ Add CFI directives.
++
++2003-05-30 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/powerpc/powerpc32/elf/start.S: Make code compilable with
++ SHARED.
++
++2003-05-11 Andreas Schwab <schwab@suse.de>
++
++ * Makerules: Always use -MP together with -MD.
++ (sed-remove-dotot): Substitute $(..) also at start of line.
++ ($(stdio_lim:h=st)): Use -MD instead of SUNPRO_DEPENDENCIES.
++ Generated defines with a single compiler call.
++ Use $(sed-remove-dotdot).
++ * mach/Makefile ($(objpfx)mach-syscalls.mk): Use -MD instead
++ of DEPENDENCIES_OUTPUT, and use $(sed-remove-objpfx).
++ * sysdeps/unix/sysv/linux/Makefile ($(objpfx)syscall-%.h):
++ Use -MD instead of SUNPRO_DEPENDENCIES, and use $(sed-remove-objpfx).
++ * sysdeps/unix/sysv/linux/mips/Makefile
++ ($(objpfx)syscall-%.h): Likewise.
++
++2003-05-28 Roland McGrath <roland@redhat.com>
++
++ * malloc/malloc.h [! __GNUC__] (__const): Define if undefined.
++
++2003-05-26 Aldy Hernandez <aldyh@redhat.com>
++
++ * soft-fp/soft-fp.h (FP_EX_UNDERFLOW): Define to 0.
++
++2003-05-28 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/unix/sysv/linux/ia64/setcontext.S: Pass fourth argument to
++ rt_sigprocmask system call.
++ * sysdeps/unix/sysv/linux/ia64/ucontext_i.h (SC_MASK): Fix value.
++ From Peter A. Buhr <pabuhr@plg2.math.uwaterloo.ca>.
++
++2003-05-28 Ulrich Drepper <drepper@redhat.com>
++
++ * include/libc-symbols.h: Define hidden attribute for real also if
++ LIBC_NONSHARED is defined. Patch by Jakub Jelinek.
++
++ * csu/Makefile: Add rules to build Scrt1.o.
++ * sysdeps/i386/elf/start.S: Make code compilable with SHARED.
++ * sysdeps/x86_64/elf/start.S: Likewise.
++
++2003-05-27 Jakub Jelinek <jakub@redhat.com>
++
++ * stdio-common/vfprintf.c (process_arg, process_string_arg): Use
++ pa_int/pa_u_int instead of pa_short_int, pa_u_short_int and pa_char.
++ * stdio-common/printf-parse.h (union printf_arg): Remove pa_char,
++ pa_short_int, pa_u_short_int and pa_float.
++
++2003-05-26 Jakub Jelinek <jakub@redhat.com>
++
++ * libio/strops.c (_IO_str_init_static): Change into a wrapper around
++ _IO_str_init_static_internal.
++ (_IO_str_init_static_internal): Moved from _IO_str_init_static,
++ change size argument to _IO_size_t, don't limit sprintf to 64M.
++ (_IO_str_init_readonly): Call _IO_str_init_static_internal.
++ * libio/wstrops.c (_IO_wstr_init_static): Change size argument to
++ _IO_size_t, don't limit swprintf to 256M.
++ (_IO_wstr_init_readonly): Remove.
++ * libio/libioP.h (_IO_str_init_static_internal, _IO_wstr_init_static):
++ Adjust prototypes.
++ (_IO_wstr_init_readonly): Remove prototype.
++ * libio/iovsprintf.c (_IO_vsprintf): Use
++ _IO_str_init_static_internal instead of INTUSE(_IO_str_init_static).
++ * libio/iovsscanf.c (_IO_vsscanf): Likewise.
++ * libio/memstream.c (open_memstream): Likewise.
++ * libio/obprintf.c (_IO_obstack_vfprintf): Likewise.
++ * libio/vasprintf.c (_IO_vasprintf): Likewise.
++ * libio/vsnprintf.c (_IO_vsnprintf): Likewise.
++ * stdio-common/tst-sprintf.c (main): Add new test.
++
++2003-05-26 Ulrich Drepper <drepper@redhat.com>
++
++ * stdio-common/vfprintf.c (vfprintf): Be bug-compatible with some
++ other implementation in respect of multiple uses of parameter with
++ different types.
++
++2003-05-25 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/kernel-features.h: Define
++ __ASSUME_FUTEX_REQUEUE for >= 2.5.70.
++
++2003-05-22 Andreas Jaeger <aj@suse.de>
++
++ * sysdeps/unix/sysv/linux/x86_64/gettimeofday.S: Add CFI
++ directives.
++ * sysdeps/unix/sysv/linux/x86_64/time.S: Likewise.
++ * sysdeps/x86_64/strtok.S: Likewise.
++
++2003-05-20 Guido Guenther <agx@sigxcpu.org>
++
++ * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Change SI_ASYNCNL
++ to -60 and define SI_TKILL.
++
++2003-05-21 H.J. Lu <hongjiu.lu@intel.com>
++
++ * math/test-fenv.c (feexcp_nomask_test): Fix comment.
++ (feexcp_mask_test): Likewise.
++
++2003-05-21 Ulrich Drepper <drepper@redhat.com>
++
++ * locale/programs/locale.c (main): Fix typo in last patch.
++
++ * csu/elf-init.c: Mark __preinit_array_start, __preinit_array_end,
++ __init_array_start, __init_array_end, __fini_array_start, and
++ __fini_array_end as hidden.
++
++2003-05-21 Petter Reinholdtsen <pere@hungry.com>
++
++ * locale/programs/locale.c (main): Report an error if setlocale()
++ fails [PR libc/2254].
++
++2003-05-21 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/s390/system.c: New file.
++
++2003-05-21 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (LOADARGS_0,
++ LOADARGS_1, LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5,
++ LOADARGS_6): Don't error if syscall argument is a string literal.
++ * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (LOADARGS_0,
++ LOADARGS_1, LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5,
++ LOADARGS_6): Likewise.
++
++2003-05-21 Andreas Jaeger <aj@suse.de>
++
++ * sysdeps/generic/sysdep.h (cfi_offset, cfi_startproc,
++ cfi_endproc, cfi_def_cfa, cfi_def_ccfa_register,
++ cfi_def_cfa_offset, cfi_adjust_cfa_offset, cfi_offset): Define.
++
++ * sysdeps/x86_64/sysdep.h (CALL_MCOUNT): Add cfi directives.
++ (ENTRY): Likewise.
++ (END): Likewise.
++
++ * configure.in: Test for asm cfi directives.
++
++ * config.h.in: Add HAVE_ASM_CFI_DIRECTIVES.
++
++2003-05-17 Andreas Jaeger <aj@suse.de>
++
++ * sysdeps/unix/sysv/linux/x86_64/syscall.S: Revert last patch.
++
++ * rt/tst-clock_nanosleep.c: Include <time.h> for clock_nanosleep.
++
++2003-05-16 Ulrich Drepper <drepper@redhat.com>
++
++ * rt/Makefile (tests): Add tst-clock_nanosleep.
++ * rt/tst-clock_nanosleep.c: New file.
++ * posix/Makefile (tests): Add tst-nanosleep.
++ * posix/tst-nanosleep.c: New file.
++
++ * sysdeps/unix/clock_nanosleep.c (CPUCLOCK_P): Fix definition.
++
++ * include/features.h (__USE_XOPEN2K): Define also for
++ _POSIX_C_SOURCE>=200112L.
++
++ * sysdeps/unix/sysv/linux/sigwaitinfo.c (do_sigwaitinfo): Fold
++ SI_TKILL code into SI_USER.
++ * sysdeps/unix/sysv/linux/sigtimedwait.c (do_sigtimedwait): Likewise.
++
++ * sysdeps/posix/sigpause.c (do_sigpause): Use sigdelset after all.
++
++2003-05-15 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow):
++ Remove sym argument, always use refsym.
++ (__process_machine_rela): Adjust callers.
++ * sysdeps/powerpc/powerpc64/dl-machine.c (_dl_reloc_overflow):
++ Likewise.
++ * sysdeps/powerpc/powerpc32/dl-machine.h (_dl_reloc_overflow):
++ Adjust prototype.
++ * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Likewise.
++
++2003-05-15 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Fix typo
++ (DL_NEED_SYSINFO -> NEED_DL_SYSINFO). If aux value is not known
++ print numeric values.
++
++2003-05-12 Thorsten Kukuk <kukuk@suse.de>
++
++ * inet/netinet/igmp.h: Sync with Linux Kernel 2.5.69 and *BSD.
++
++2003-05-14 Andreas Schwab <schwab@suse.de>
++
++ * sysdeps/unix/sysv/linux/ia64/umount.c: New file.
++
++2003-05-14 Jakub Jelinek <jakub@redhat.com>
++
++ * elf/rtld.c (dl_main): For LD_TRACE_PRELINKING print search scope
++ even if no DT_NEEDED is present.
++
++2003-05-13 David Mosberger <davidm@hpl.hp.com>
++
++ * sysdeps/unix/sysv/linux/ia64/setjmp.S: Fix the fix from
++ 2003-03-27: setjmp is NOT a leaf-routine (due to the call to
++ __sigjmp_save) so we can't keep the saved unat value in a scratch
++ register (r16). Use loc2 instead.
++
++2003-05-13 Ulrich Drepper <drepper@redhat.com>
++
++ * csu/Makefile: Do compile elf-init with PIC flag since in dynamic
++ binaries it has to be relocatable.
++
++ * sysdeps/unix/sysv/linux/waitpid.c: Use waitpid syscall is available.
++
++2003-05-12 Steven Munroe <sjmunroe@us.ibm.com>
++
++ * sysdeps/powerpc/bits/atomic.h
++ (__arch_compare_and_exchange_bool_8_rel): Define.
++ (__arch_compare_and_exchange_bool_16_rel): Define.
++ (__ARCH_REL_INSTR): Define if not already defined.
++ (__arch_atomic_exchange_and_add_32): Add "memory" to clobber list.
++ (__arch_atomic_decrement_if_positive_32):
++ Add "memory" to clobber list.
++ (__arch_compare_and_exchange_val_32_acq): Remove release sync.
++ (__arch_compare_and_exchange_val_32_rel): Define.
++ (__arch_atomic_exchange_32): Remove.
++ (__arch_atomic_exchange_32_acq): Define.
++ (__arch_atomic_exchange_32_rel): Define.
++ (atomic_compare_and_exchange_val_rel): Define.
++ (atomic_exchange_acq): Use __arch_atomic_exchange_*_acq forms.
++ (atomic_exchange_rel): Define.
++ * sysdeps/powerpc/powerpc32/bits/atomic.h
++ (__arch_compare_and_exchange_bool_32_acq): Remove release sync.
++ (__arch_compare_and_exchange_bool_32_rel): Define.
++ (__arch_compare_and_exchange_bool_64_rel): Define.
++ (__arch_compare_and_exchange_val_64_rel): Define.
++ (__arch_atomic_exchange_64): Remove.
++ (__arch_atomic_exchange_64_acq): Define.
++ (__arch_atomic_exchange_64_rel): Define.
++ * sysdeps/powerpc/powerpc64/bits/atomic.h
++ (__arch_compare_and_exchange_bool_32_rel): Define.
++ (__arch_compare_and_exchange_bool_64_acq): Remove release sync.
++ (__arch_compare_and_exchange_bool_64_rel): Define.
++ (__arch_compare_and_exchange_val_64_acq): Remove release sync.
++ (__arch_compare_and_exchange_val_64_rel): Define.
++ (__arch_atomic_exchange_64): Remove.
++ (__arch_atomic_exchange_64_acq): Define.
++ (__arch_atomic_exchange_64_rel): Define.
++ (__arch_atomic_exchange_and_add_64): Add "memory" to clobber list.
++ (__arch_atomic_decrement_if_positive_64):
++ Add "memory" to clobber list.
++ [!UP](__ARCH_REL_INSTR): Define as lwsync.
++
++2003-05-11 Andreas Schwab <schwab@suse.de>
++
++ * io/Makefile ($(objpfx)ftwtest.out): Use absolute file names.
++
++2003-05-11 Ulrich Drepper <drepper@redhat.com>
++
++ * time/tst-strftime.c (do_test): Add tests for - flag.
++
++2003-05-11 Jim Meyering <jim@meyering.net>
++
++ * time/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
++ the space-padded-by-default conversion specifiers, %e, %k, %l.
++
++2003-05-11 Andreas Schwab <schwab@suse.de>
++
++ * sysdeps/generic/sched_setaffinity.c: Fix parameter name.
++
++2003-05-10 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/generic/bits/sched.h: Define cpu_set_t only if not
++ already defined and when really needed.
++ * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
++
++2003-05-09 Thorsten Kukuk <kukuk@suse.de>
++
++ * sysdeps/unix/sysv/linux/netinet/igmp.h: Don't include kernel
++ headers, add defines from kernel header, move it from here...
++ * inet/netinet/igmp.h: ... to here.
++ * inet/Makefile (headers): Add netinet/igmp.h.
++ * sysdeps/unix/sysv/linux/Makefile: Remove netinet/igmp.h.
++ * sysdeps/unix/sysv/linux/Dist: Remove netinet/igmp.h.
++
++2003-05-10 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/pthread/lio_listio64.c (lio_listio64): If SIG == NULL,
++ use dummy sigevent structure with SIGEV_NONE [PR libc/5015].
++
++2003-05-09 Thorsten Kukuk <kukuk@suse.de>
++
++ * libio/bits/stdio.h: Sync prototypes with libio/stdio.h
++ (remove __THROW from possible cancellation points).
++
++2003-05-10 Ulrich Drepper <drepper@redhat.com>
++
++ * posix/sched.h (CPU_SETSIZE): Define.
++
++2003-05-09 Ulrich Drepper <drepper@redhat.com>
++
++ * Makeconfig (gnulib): Remove -lgcc_eh again.
++
++ * posix/sched.h: Change prototypes of sched_getaffinity and
++ sched_setaffinity. Define CPU_SET, CPU_CLR, CPU_ISSET, and CPU_ZERO.
++ * sysdeps/generic/sched_getaffinity.c: Adjust definition.
++ * sysdeps/generic/sched_setaffinity.c: Likewise.
++ * sysdeps/generic/bits/sched.h: Define __CPU_SETSIZE, __NCPUBITS,
++ __CPUELT, __CPUMASK, cpu_set_t, __cpu_mask, __CPU_ZERO, __CPU_SET,
++ __CPU_CLR, and __CPU_ISSET.
++ * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
++ * sysdeps/unix/sysv/linux/sched_getaffinity.c: New file.
++ * sysdeps/unix/sysv/linux/sched_setaffinity.c: New file.
++
++ * include/atomic.h (atomic_exchange_acq): Renamed from atomic_exchange.
++ (atomic_exchange_rel): New #define.
++ * sysdeps/ia64/bits/atomic.h: Likewise.
++ * sysdeps/i386/i486/bits/atomic.h (atomic_exchange_acq): Renamed from
++ atomic_exchange.
++ * sysdeps/m68k/m68020/bits/atomic.h: Likewise.
++ * sysdeps/powerpc/bits/atomic.h: Likewise.
++ * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: Likewise.
++ * sysdeps/sparc/sparc64/bits/atomic.h: Likewise.
++ * sysdeps/x86_64/bits/atomic.h: Likewise.
++ * csu/tst-atomic.c: Use atomic_exchange_acq instead of atomic_exchange.
++
++ * sysdeps/unix/sysv/linux/x86_64/get_clockfreq.c: New file.
++
++2003-05-08 Ulrich Drepper <drepper@redhat.com>
++
++ * malloc/thread-m.h: Remove special handling of thread_atfork if
++ HAVE_register_atfork_malloc is defined.
++
++2003-05-07 Andreas Jaeger <aj@suse.de>
++
++ * sysdeps/unix/sysv/linux/x86_64/syscall.S: Add DWARF2 unwind
++ information.
++
++2003-05-06 Ulrich Drepper <drepper@redhat.com>
++
++ * libio/oldiofdopen.c (_IO_old_fdopen): Use _IO_old_init not _IO_init.
++ * libio/oldiofopen.c (_IO_old_fopen): Likewise.
++ * libio/libioP.h: Declare _IO_old_init.
++ * libio/genops.c (_IO_no_init): Split in two. New function
++ _IO_old_init.
++
++2003-05-05 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/generic/enbl-secure.c (__libc_enable_secure_decided): New
++ variable.
++ (__libc_init_secure): Don't do anything if __libc_enable_secure_decided
++ is nonzero.
++ * include/unistd.h: Declare __libc_enable_secure_decided.
++ * elf/dl-support.c (_dl_aux_init): Recognize AT_UID, AT_EUID, AT_GID,
++ and AT_EGID. If all found, set __libc_enable_secure and
++ __libc_enable_secure_decided.
++
++ * sysdeps/generic/libc-start.c [!SHARED]: Call
++ __libc_check_standard_fds after __libc_init_first.
++
++2003-05-05 Roland McGrath <roland@redhat.com>
++
++ * Makerules (common-before-compile): New variable.
++ ($(common-objpfx)%.make): Depend on that instead of $(before-compile).
++ ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise. Move this rule
++ to after all setting of before-compile.
++
++2003-05-05 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/ia64/bits/atomic.h (__arch_compare_and_exchange_val_8_acq,
++ __arch_compare_and_exchange_val_16_acq): Cast 0 to mem's type.
++ * sysdeps/powerpc/powerpc32/bits/atomic.h
++ (__arch_compare_and_exchange_val_64_acq): Likewise.
++ * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h
++ (__arch_compare_and_exchange_val_8_acq,
++ __arch_compare_and_exchange_val_16_acq,
++ __arch_compare_and_exchange_val_64_acq): Likewise.
++ * sysdeps/sparc/sparc64/bits/atomic.h
++ (__arch_compare_and_exchange_val_8_acq,
++ __arch_compare_and_exchange_val_16_acq): Likewise.
++ * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq,
++ __arch_compare_and_exchange_val_16_acq,
++ __arch_compare_and_exchange_val_64_acq): Likewise.
++ * sysdeps/unix/sysv/linux/sh/bits/atomic.h
++ (__arch_compare_and_exchange_val_64_acq): Likewise.
++ * sysdeps/s390/s390-64/backtrace.c (__backtrace): Add cast to shut
++ up warning.
++ * sysdeps/s390/fpu/fegetenv.c (fegetenv): Likewise.
++
++ * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
++ (INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0):
++ Return long instead of int.
++ (INTERNAL_SYSCALL_ERROR_P): Cast val to unsigned long, replace
++ 0xfffff001u with -4095UL.
++
++2003-05-05 Andreas Jaeger <aj@suse.de>
++
++ * sysdeps/x86_64/fpu_control.h: New from i386.
++
++ * sysdeps/unix/sysv/linux/x86_64/sysdep.h (__NR_semtimedop):
++ Define if not defined.
++
++ * sunrpc/Makefile (generated-dirs): New variable.
++ * resolv/Makefile (generated): New variable.
++
++2003-05-04 Roland McGrath <roland@redhat.com>
++
++ * csu/Makefile ($(csu-dummies) target rule): Don't use a temp C file.
++ Depend on $(before-compile).
++
++ * csu/Makefile ($(objpfx)crt%.o): Replace implicit rule with a static
++ pattern rule. The implicit rule could be ruled out when $(objpfx)
++ didn't exist at the time of its consideration (ugh!).
++
++ * Makerules (+make-deps): Fix target matching.
++ Use $(sed-remove-dotdot).
++
++2003-05-03 Ulrich Drepper <drepper@redhat.com>
++
++ * nscd/nscd.c (main): Parse config file right after parsing
++ parameters. Then, if get_stats is true, call receive_print_stats.
++ Drop parameter from nscd_init call.
++ (get_stats): New variable.
++ (parse_opt): Set get_stats, don't call receive_print_stats here.
++ * nscd/nscd.h: Declare dbs, stat_user, and stat_uid. Adjust nscd_init
++ prototype.
++ * nscd/connections.c (stat_user, stat_uid): New variables.
++ (dbs): Make global.
++ (nscd_init): Don't read configuration file here. Drop parameter.
++ (handle_request): Cleanup handling of non-database lookup requests.
++ * nscd/nscd_conf.c (nscd_parse_file): Recognize stat-user entry.
++ Get UID of the specified user. Use xstrdup instead of strdup.
++ * nscd/nscd_stat.c (receive_print_stats): Check UID. If not zero,
++ check stat_user.
++ * nscd/Makefile (nscd-modules): Add xstrdup.
++ * nscd/nscd.conf: Document stat-user entry.
++
++2003-05-03 H.J. Lu <hongjiu.lu@intel.com>
++
++ * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_semtimedop): Define
++ if not defined.
++
++2003-04-22 Roland McGrath <roland@redhat.com>
++
++ * elf/elf.h (AT_SYSINFO_EHDR): New macro, replaces AT_SYSINFO_EH_FRAME.
++ * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
++ dl_sysinfo_eh_frame member, add dl_sysinfo_dso member instead.
++ * elf/dl-support.c: Update defn.
++ * sysdeps/generic/libc-start.c: Don't call __register_frame_info_bases.
++ * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
++ Set GL(dl_sysinfo_dso) from AT_SYSINFO_EHDR.
++ (_dl_show_auxv): Grok AT_SYSINFO_EHDR, not AT_SYSINFO_EH_FRAME.
++ * elf/rtld.c (dl_main) [NEED_DL_SYSINFO]: If GL(dl_sysinfo_dso) is
++ set, set up a link_map for the preloaded, prelinked object.
++
++2003-05-03 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/gnu/Makefile (generated): Append errlist-compat.c here, ...
++ * stdio-common/Makefile: ... not here.
++
++ * csu/Makefile ($(objpfx)initfini.s): Depend on $(before-compile).
++ * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.c): Likewise.
++
++2003-05-02 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/s390/semtimedop.c: New file.
++
++ * sysdeps/unix/sysv/linux/alpha/ipc_priv.h (IPCOP_semtimedop): Define.
++
++ * sysdeps/generic/dl-fptr.c (_dl_make_fptr): Use 0 not NULL for
++ comparing ftab elements.
++ (_dl_unmap): Fix typo in test.
++ (_dl_make_fptr): Fix typos introduced in last change.
++
++ * sysdeps/generic/dl-fptr.c: Put back one optimization from the
++ original patch. Use non-exported symbols. Mark translatable
++ strings. Pretty printing.
++
++2003-05-02 Roland McGrath <roland@redhat.com>
++
++ * Makerules (do-stamp): Do $(make-target-directory).
++
++2003-04-07 H.J. Lu <hjl@gnu.org>
++
++ * sysdeps/generic/dl-fptr.c: Modify to remove the lock.
++
++2003-04-03 H.J. Lu <hjl@gnu.org>
++
++ * sysdeps/ia64/dl-fptr.c: Moved to ...
++ * sysdeps/generic/dl-fptr.c: Here.
++
++ * sysdeps/generic/dl-fptr.h: New.
++ * sysdeps/ia64/dl-fptr.h: New.
++
++ * sysdeps/ia64/dl-symaddr.c: Moved to ...
++ * sysdeps/generic/dl-symaddr.c: here.
++
++ * sysdeps/ia64/dl-machine.h: Include <dl-fptr.h>.
++ (IA64_BOOT_FPTR_TABLE_LEN): Removed.
++ (ia64_fdesc): Likewise.
++ (ia64_fdesc_table): Likewise.
++ (__ia64_make_fptr): Likewise.
++ (__ia64_init_bootstrap_fdesc_table): Replace __ia64_boot_fptr_table
++ with _dl_boot_fptr_table.
++ (elf_machine_runtime_setup): Replace `struct ia64_fdesc' with
++ `struct fdesc'.
++ (elf_machine_rela): Replace __ia64_make_fptr with _dl_make_fptr.
++
++2003-05-01 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/generic/bp-thunks.h: Protect includes with [!__ASSEMBLER__].
++ * sysdeps/unix/sysv/linux/i386/bp-thunks.h: Likewise.
++
++ * sysdeps/unix/sysv/linux/Makefile ($(objpfx)syscall-%.h):
++ Use $(make-target-directory).
++ * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Likewise.
++
++ * Makerules (compile-mkdep-flags): New variable, pass -MD -MF $@.d.
++ (compile-command.S): Don't use ifndef. Append $(compile-mkdep-flags).
++ (compile-command.s, compile-command.c): Likewise.
++ ($(objpfx)%.d): All such pattern rules removed.
++ ($(+sysdir_pfx)sysd-rules): Don't generate them.
++ ($(common-objpfx)dummy.d): Target removed.
++ (make-dummy-dep): Variable removed.
++ (generate-md5): Likewise.
++ (%.d: %.dt): New pattern rule.
++ (+depfiles): Use $(wildcard) function to get just existing *.d files
++ and .d files for existing *.dt files.
++ (common-clean): Remove all *.d and *.dt files.
++ (before-compile): Add $(objpfx). when it doesn't exist,
++ regardless of $(no_deps).
++ * elf/rtld-Rules ($(objpfx)rtld-%.d): All such pattern rules removed.
++ (rtld-depfiles): Use .os.d instead of .d names.
++ Include existing *.d files and .d files for existing *.dt files.
++
++ * Makerules ($(common-objpfx)%.make): Protect with [! subdir].
++ Use -MD, -MT and -MF flags instead of SUNPRO_DEPENDENCIES variable.
++
++ * sysdeps/unix/Makefile ($(common-objpfx)s-%.d): Remove compat.h hack.
++ Do s-*.d includes only if we have some syscall routines in this subdir.
++
++ * include/libc-symbols.h (libc_freeres_ptr): Use %nobits instead of
++ @nobits. The former is accepted by gas on any ELF platform.
++
++2003-05-01 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/semtimedop.c: New file.
++
++ * malloc/malloc.c (mSTATs): Call ptmalloc_init if necessary.
++
++2003-04-29 Andreas Schwab <schwab@suse.de>
++
++ * string/test-strcat.c (do_one_test): Fix attribute name.
++
++2003-04-30 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/unix/sysv/linux/mips/sys/ucontext.h (ucontext): Make
++ uc_flags long for all ABIs.
++
++2003-04-30 Andreas Jaeger <aj@suse.de>
++
++ * sysdeps/unix/sysv/linux/x86_64/sys/debugreg.h
++ (DR_CONTROL_RESERVED): Use correct value for 64-bit.
++ Reported by Andrew Derrick Balsa <andrebalsa@mailingaddress.org>.
++ Add bi-arch support.
++
++2003-04-30 Ulrich Drepper <drepper@redhat.com>
++
++ * malloc/malloc.c (mEMALIGn): Define alias __memalign_internal.
++ (__posix_memalign): Use __memalign_internal instead of memalign.
++
++2003-04-29 Roland McGrath <roland@redhat.com>
++
++ * configure.in: Search for AUTOCONF unconditionally.
++ Just don't complain about missing it under --without-cvs.
++
++ * include/libc-symbols.h (__symbol_set_attribute): New macro,
++ give hidden for [SHARED] and weak for [! SHARED].
++ (symbol_set_declare): Use that. Never need weak_extern these days.
++ * Makerules ($(common-objpfx)shlib.lds): Go back to using PROVIDE.
++ Depend on $(..)Makerules.
++
++2003-04-29 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Use __ protected
++ variants of socket, bind, recvmsg, and sendto.
++
++ * sysdeps/i386/fpu/ftestexcept.c: Also check SSE status word.
++
++ * include/signal.h: Use libc_hidden_proto for sigaddset and sigdelset.
++ * signal/sigaddset.c: Add libc_hidden_def.
++ * signal/sigdelset.c: Likewise.
++
++2003-04-29 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/i386/i486/string-inlines.c (__memcpy_g, __strchr_g): Move
++ to the end of the file.
++
++ * configure.in: Change __oline__ to $LINENO.
++ (HAVE_BUILTIN_REDIRECTION): New check.
++ * config.h.in (HAVE_BUILTIN_REDIRECTION): Add.
++ * include/libc-symbols.h (libc_hidden_builtin_proto,
++ libc_hidden_builtin_def, libc_hidden_builtin_weak,
++ libc_hidden_builtin_ver): Define.
++ * include/string.h (memchr, memcpy, memmove, memset, strcat, strchr,
++ strcmp, strcpy, strcspn, strlen, strncmp, strncpy, strpbrk, strrchr,
++ strspn, strstr): Add libc_hidden_builtin_proto.
++ * intl/plural.y: Include string.h.
++ * sysdeps/alpha/alphaev6/memchr.S (memchr): Add
++ libc_hidden_builtin_def.
++ * sysdeps/alpha/alphaev6/memcpy.S (memcpy): Likewise.
++ * sysdeps/alpha/alphaev6/memset.S (memset): Likewise.
++ * sysdeps/alpha/alphaev67/strcat.S (strcat): Likewise.
++ * sysdeps/alpha/alphaev67/strchr.S (strchr): Likewise.
++ * sysdeps/alpha/alphaev67/strlen.S (strlen): Likewise.
++ * sysdeps/alpha/alphaev67/strrchr.S (strrchr): Likewise.
++ * sysdeps/alpha/memchr.S (memchr): Likewise.
++ * sysdeps/alpha/memset.S (memset): Likewise.
++ * sysdeps/alpha/strcat.S (strcat): Likewise.
++ * sysdeps/alpha/strchr.S (strchr): Likewise.
++ * sysdeps/alpha/strcmp.S (strcmp): Likewise.
++ * sysdeps/alpha/strcpy.S (strcpy): Likewise.
++ * sysdeps/alpha/strlen.S (strlen): Likewise.
++ * sysdeps/alpha/strncmp.S (strncmp): Likewise.
++ * sysdeps/alpha/strncpy.S (strncpy): Likewise.
++ * sysdeps/alpha/strrchr.S (strrchr): Likewise.
++ * sysdeps/arm/memset.S (memset): Likewise.
++ * sysdeps/arm/strlen.S (strlen): Likewise.
++ * sysdeps/generic/memchr.c (memchr): Likewise.
++ * sysdeps/generic/memcpy.c (memcpy): Likewise.
++ * sysdeps/generic/memmove.c (memmove): Likewise.
++ * sysdeps/generic/memset.c (memset): Likewise.
++ * sysdeps/generic/strcat.c (strcat): Likewise.
++ * sysdeps/generic/strchr.c (strchr): Likewise.
++ * sysdeps/generic/strcmp.c (strcmp): Likewise.
++ * sysdeps/generic/strcpy.c (strcpy): Likewise.
++ * sysdeps/generic/strcspn.c (strcspn): Likewise.
++ * sysdeps/generic/strlen.c (strlen): Likewise.
++ * sysdeps/generic/strncmp.c (strncmp): Likewise.
++ * sysdeps/generic/strncpy.c (strncpy): Likewise.
++ * sysdeps/generic/strpbrk.c (strpbrk): Likewise.
++ * sysdeps/generic/strrchr.c (strrchr): Likewise.
++ * sysdeps/generic/strspn.c (strspn): Likewise.
++ * sysdeps/generic/strstr.c (strstr): Likewise.
++ * sysdeps/i386/i486/strcat.S (strcat): Likewise.
++ * sysdeps/i386/i486/strlen.S (strlen): Likewise.
++ * sysdeps/i386/i586/memcpy.S (memcpy): Likewise.
++ * sysdeps/i386/i586/memset.S (memset): Likewise.
++ * sysdeps/i386/i586/strchr.S (strchr): Likewise.
++ * sysdeps/i386/i586/strcpy.S (strcpy): Likewise.
++ * sysdeps/i386/i586/strlen.S (strlen): Likewise.
++ * sysdeps/i386/i686/memcpy.S (memcpy): Likewise.
++ * sysdeps/i386/i686/memmove.S (memmove): Likewise.
++ * sysdeps/i386/i686/memset.S (memset): Likewise.
++ * sysdeps/i386/i686/strcmp.S (strcmp): Likewise.
++ * sysdeps/i386/memchr.S (memchr): Likewise.
++ * sysdeps/i386/memset.c (memset): Likewise.
++ * sysdeps/i386/strchr.S (strchr): Likewise.
++ * sysdeps/i386/strcspn.S (strcspn): Likewise.
++ * sysdeps/i386/strlen.c (strlen): Likewise.
++ * sysdeps/i386/strpbrk.S (strpbrk): Likewise.
++ * sysdeps/i386/strrchr.S (strrchr): Likewise.
++ * sysdeps/i386/strspn.S (strspn): Likewise.
++ * sysdeps/ia64/memchr.S (memchr): Likewise.
++ * sysdeps/ia64/memcpy.S (memcpy): Likewise.
++ * sysdeps/ia64/memmove.S (memmove): Likewise.
++ * sysdeps/ia64/memset.S (memset): Likewise.
++ * sysdeps/ia64/strcat.S (strcat): Likewise.
++ * sysdeps/ia64/strchr.S (strchr): Likewise.
++ * sysdeps/ia64/strcmp.S (strcmp): Likewise.
++ * sysdeps/ia64/strcpy.S (strcpy): Likewise.
++ * sysdeps/ia64/strlen.S (strlen): Likewise.
++ * sysdeps/ia64/strncmp.S (strncmp): Likewise.
++ * sysdeps/ia64/strncpy.S (strncpy): Likewise.
++ * sysdeps/m68k/memchr.S (memchr): Likewise.
++ * sysdeps/m68k/strchr.S (strchr): Likewise.
++ * sysdeps/mips/mips64/memcpy.S (memcpy): Likewise.
++ * sysdeps/mips/mips64/memset.S (memset): Likewise.
++ * sysdeps/mips/memcpy.S (memcpy): Likewise.
++ * sysdeps/mips/memset.S (memset): Likewise.
++ * sysdeps/powerpc/powerpc32/memset.S (memset): Likewise.
++ * sysdeps/powerpc/powerpc32/strchr.S (strchr): Likewise.
++ * sysdeps/powerpc/powerpc32/strcmp.S (strcmp): Likewise.
++ * sysdeps/powerpc/powerpc32/strcpy.S (strcpy): Likewise.
++ * sysdeps/powerpc/powerpc32/strlen.S (strlen): Likewise.
++ * sysdeps/powerpc/powerpc64/memcpy.S (memcpy): Likewise.
++ * sysdeps/powerpc/powerpc64/memset.S (memset): Likewise.
++ * sysdeps/powerpc/powerpc64/strchr.S (strchr): Likewise.
++ * sysdeps/powerpc/powerpc64/strcmp.S (strcmp): Likewise.
++ * sysdeps/powerpc/powerpc64/strcpy.S (strcpy): Likewise.
++ * sysdeps/powerpc/powerpc64/strlen.S (strlen): Likewise.
++ * sysdeps/powerpc/strcat.c (strcat): Likewise.
++ * sysdeps/sparc/sparc32/memchr.S (memchr): Likewise.
++ * sysdeps/sparc/sparc32/memcpy.S (memcpy): Likewise.
++ * sysdeps/sparc/sparc32/memset.S (memset): Likewise.
++ * sysdeps/sparc/sparc32/strcat.S (strcat): Likewise.
++ * sysdeps/sparc/sparc32/strchr.S (strchr, strrchr): Likewise.
++ * sysdeps/sparc/sparc32/strcmp.S (strcmp): Likewise.
++ * sysdeps/sparc/sparc32/strcpy.S (strcpy): Likewise.
++ * sysdeps/sparc/sparc32/strlen.S (strlen): Likewise.
++ * sysdeps/sparc/sparc64/sparcv9b/memcpy.S (memcpy, memmove): Likewise.
++ * sysdeps/sparc/sparc64/memchr.S (memchr): Likewise.
++ * sysdeps/sparc/sparc64/memcpy.S (memcpy, memmove): Likewise.
++ * sysdeps/sparc/sparc64/memset.S (memset): Likewise.
++ * sysdeps/sparc/sparc64/strcat.S (strcat): Likewise.
++ * sysdeps/sparc/sparc64/strchr.S (strchr, strrchr): Likewise.
++ * sysdeps/sparc/sparc64/strcmp.S (strcmp): Likewise.
++ * sysdeps/sparc/sparc64/strcpy.S (strcpy): Likewise.
++ * sysdeps/sparc/sparc64/strcspn.S (strcspn): Likewise.
++ * sysdeps/sparc/sparc64/strlen.S (strlen): Likewise.
++ * sysdeps/sparc/sparc64/strncmp.S (strncmp): Likewise.
++ * sysdeps/sparc/sparc64/strncpy.S (strncpy): Likewise.
++ * sysdeps/sparc/sparc64/strpbrk.S (strpbrk): Likewise.
++ * sysdeps/sparc/sparc64/strspn.S (strspn): Likewise.
++ * sysdeps/sh/memcpy.S (memcpy): Likewise.
++ * sysdeps/sh/memset.S (memset): Likewise.
++ * sysdeps/sh/strlen.S (strlen): Likewise.
++ * sysdeps/s390/s390-32/memchr.S (memchr): Likewise.
++ * sysdeps/s390/s390-32/memcpy.S (memcpy): Likewise.
++ * sysdeps/s390/s390-32/memset.S (memset): Likewise.
++ * sysdeps/s390/s390-32/strcmp.S (strcmp): Likewise.
++ * sysdeps/s390/s390-32/strcpy.S (strcpy): Likewise.
++ * sysdeps/s390/s390-32/strncpy.S (strncpy): Likewise.
++ * sysdeps/s390/s390-64/memchr.S (memchr): Likewise.
++ * sysdeps/s390/s390-64/memcpy.S (memcpy): Likewise.
++ * sysdeps/s390/s390-64/memset.S (memset): Likewise.
++ * sysdeps/s390/s390-64/strcmp.S (strcmp): Likewise.
++ * sysdeps/s390/s390-64/strcpy.S (strcpy): Likewise.
++ * sysdeps/s390/s390-64/strncpy.S (strncpy): Likewise.
++ * sysdeps/x86_64/memcpy.S (memcpy): Likewise.
++ * sysdeps/x86_64/memset.S (memset): Likewise.
++ * sysdeps/x86_64/strcat.S (strcat): Likewise.
++ * sysdeps/x86_64/strchr.S (strchr): Likewise.
++ * sysdeps/x86_64/strcmp.S (strcmp): Likewise.
++ * sysdeps/x86_64/strcpy.S (strcpy): Likewise.
++ * sysdeps/x86_64/strcspn.S (strcspn): Likewise.
++ * sysdeps/x86_64/strlen.S (strlen): Likewise.
++ * sysdeps/x86_64/strspn.S (strspn): Likewise.
++ * string/string-inlines.c: Move...
++ * sysdeps/generic/string-inlines.c: ...here.
++ (__memcpy_g, __strchr_g): Remove.
++ (__NO_INLINE__): Define before including <string.h>,
++ undefine after. Include bits/string.h and bits/string2.h.
++ * sysdeps/i386/i486/string-inlines.c: New file.
++ * sysdeps/i386/string-inlines.c: New file.
++ * sysdeps/i386/i486/Versions: Remove.
++ All GLIBC_2.1.1 symbols moved...
++ * sysdeps/i386/Versions (libc): ...here.
++
++2003-04-29 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/i386/fpu/Makefile: New file.
++ * sysdeps/i386/fpu/fedisblxcpt.c: Also set SSE control word.
++ * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
++ * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
++ * sysdeps/i386/fpu/fesetround.c: Also set SSE rounding mode
++ [PR libc/4987].
++
++2003-04-28 Ulrich Drepper <drepper@redhat.com>
++
++ * nscd/nscd_getgr_r.c: Compact code a bit. Add some __builtin_expect.
++ * nscd/nscd_getpw_r.c: Likewise.
++ * nscd/nscd_gethst_r.c: Likewise.
++
++2003-04-27 Ulrich Drepper <drepper@redhat.com>
++
++ * nscd/pwdcache.c: Initialize .version element in result.
++ * nscd/grpcache.c: Likewise.
++ * nscd/pwdcache.c: Likewise.
++
++2003-04-27 Andreas Schwab <schwab@suse.de>
++
++ * Makeconfig ($(common-objpfx)sysd-sorted): Fix for running in
++ subdirectory.
++
++2003-04-27 Andreas Schwab <schwab@suse.de>
++
++ * sysdeps/unix/sysv/linux/m68k/semtimedop.S: New file.
++
++2003-04-27 Ulrich Drepper <drepper@redhat.com>
++
++ * nscd/connections.c (client_queued): New variable.
++ (nscd_run): Revamp the loop. Don't call poll except for cleanup
++ threads. Keep track of the number of delays caused because of busy
++ worker threads.
++ * nscd/nscd.h: Declare client_queued.
++ * nscd/nscd_stat.c: Transmit and print client_queued information.
++
++ * locale/programs/locale.c (show_info): Use '\177' instead of CHAR_MAX.
++
++ * Makerules ($(common-objpfx)shlib.lds): Don't use PROVIDE to
++ define __start_libc_freeres_ptrs and __stop___libc_freeres_ptrs.
++
++2003-04-26 Ulrich Drepper <drepper@redhat.com>
++
++ * elf/dl-close.c [USE_TLS && TLS_TCB_AT_TP] (_dl_close): Reimplement
++ tracking of freed memory in static TLS block.
++ * elf/Makefile: Add rules to build and run tst-tls13.
++ * elf/tst-tls13.c: New file.
++ * elf/tst-tlsmod13.c: New file.
++ * elf/tst-tlsmod13a.c: New file.
++
++ * elf/tst-tls8.c: Adjust types of variables to avoid warnings.
++
++ * elf/dl-reloc.c: Pretty printing.
++
++2003-04-26 Roland McGrath <roland@redhat.com>
++
++ * Makerules ($(common-objpfx)shlib.lds): New target.
++ (common-generated): Add it.
++ (build-shlib, build-module): Use that instead of generating every time.
++ ($(common-objpfx)libc.so): Depend on it.
++ (lib%.so rule): Likewise.
++ (build-module-helper-objlist): Remove %.lds.
++ (LDSEDCMD-c.so): Variable removed.
++ * iconvdata/extra-module.mk ($(objpfx)$(mod).so):
++ Depend on $(common-objpfx)shlib.lds.
++ * dlfcn/Makefile ($(test-modules)): Likewise.
++
++2003-04-26 Roland McGrath <roland@frob.com>
++
++ * sysdeps/mach/hurd/tmpfile.c: Remove USE_IN_LIBIO conditionals.
++
++2003-04-26 Andreas Schwab <schwab@suse.de>
++
++ * elf/dl-close.c (remove_slotinfo): Fix missing parens.
++
++2003-04-25 Ulrich Drepper <drepper@redhat.com>
++
++ * nscd/cache.c (cache_search): Keep track of how many chain links
++ we searched and update table statistics.
++ (cache_add): Keep track of how many values are in the table.
++ (prune_cache): Likewise. Keep track of locking success.
++ Print messages about removed entries in separate pass.
++ * nscd/connections.c (handle_request): Don't print debug message here.
++ The caller will do it. Keep track of locking success.
++ (nscd_run): Print debug message. Also print PID of the client process.
++ * nscd/nscd.c (start_time): New variable.
++ (main): Remember start time.
++ * nscd/nscd.h: Declare start_time.
++ (struct database): Add more members for new statistics.
++ * nscd/nscd_stat.c: Add support for sending, receiving, and printing
++ of new statistics.
++
++ * sysdeps/posix/getaddrinfo.c: Include <stdbool.h>.
++
++2003-04-22 Jakub Jelinek <jakub@redhat.com>
++
++ * include/link.h (NO_TLS_OFFSET): Define to 0 if not defined.
++ * elf/dl-close.c (_dl_close): Use NO_TLS_OFFSET.
++ * elf/dl-object.c (_dl_new_object): Initialize l_tls_offset to
++ NO_TLS_OFFSET.
++ * elf/rtld.c (_dl_start_final, _dl_start): Likewise.
++ * elf/dl-reloc.c (CHECK_STATIC_TLS): Use NO_TLS_OFFSET.
++ * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Likewise.
++ * sysdeps/powerpc/dl-tls.h (TLS_TPREL_VALUE): Don't subtract
++ TLS_TCB_SIZE.
++
++2003-04-24 Ulrich Drepper <drepper@redhat.com>
++
++ * nss/getent.c: Implement alternative host database lookup via
++ getaddrinfo.
++
++ * include/ifaddrs.h: New file.
++ * include/netdb.h: Move definitions of AI_V4MAPPED, AI_ALL, and
++ AI_ADDRCONFIG...
++ * resolv/netdb.h: ...here.
++ * sysdeps/gnu/ifaddrs.c. Use libc_hidden_def where appropriate.
++ * sysdeps/unix/sysv/linux/ifaddrs.c: Likewise.
++ * sysdeps/posix/getaddrinfo.c: Implement AI_V4MAPPED, AI_ALL, and
++ AI_ADDRCONFIG.
++
++2003-04-24 Roland McGrath <roland@redhat.com>
++
++ * elf/dl-reloc.c (_dl_allocate_static_tls): Add internal_function.
++
++2003-04-24 Jakub Jelinek <jakub@redhat.com>
++
++ * elf/dl-reloc.c (allocate_static_tls): Rename to...
++ (_dl_allocate_static_tls): ... this function. No longer static.
++ (CHECK_STATIC_TLS): Adjust.
++ * sysdeps/generic/ldsodefs.h (_dl_allocate_static_tls): New prototype.
++ * sysdeps/powerpc/powerpc32/dl-machine.h (__process_machine_rela):
++ Add SYM_MAP argument.
++ (elf_machine_rela): Adjust caller. Declare SYM_MAP unconditionally.
++ Check if SYM_MAP != NULL for R_PPC_DTPREL32. Only handle 32-bit
++ TLS relocs here. #ifdef out relocs which never appear in
++ .gnu.conflict section from dl-conflict.c processing.
++ * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
++ Add SYM_MAP argument. Handle 16-bit TLS relocs here.
++
++ * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): #ifdef
++ out relocs which never appear in .gnu.conflict section from
++ dl-conflict.c processing.
++ * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise.
++ * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
++ * sysdeps/i386/dl-machine.h (elf_machine_rela): Likewise.
++ Use r_type in RESOLVE macro.
++
++2003-04-23 Ulrich Drepper <drepper@redhat.com>
++
++ * nis/ypclnt.c (__yp_bind): Expect YPDB parameter to always be !=
++ NULL. Remove code made redundant by this assumption.
++ (__yp_unbind): Add call to free. Adjust all callers.
++
++ * nis/ypclnt.c (yp_all): Free the dom_binding object after
++ unbinding it.
++
++ * grp/initgroups.c (getgrouplist): Don't copy too much into the
++ user buffer if more groups are found than fit into it.
++
++ * nis/nss_nis/nis-initgroups.c (_nss_nis_initgroups_dyn): Use
++ extend_alloca.
++
++2003-04-23 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/posix/getaddrinfo.c (gaih_inet): Check for rc == ERANGE,
++ not rc == errno. Use extend_alloca.
++
++ * elf/tst-tls12.c (main): Fix declaration.
++ * elf/tst-tls10.c (dummy): Make hidden instead of static.
++ * elf/tst-tlsmod7.c (dummy): Likewise.
++ * elf/tst-tlsmod8.c (dummy): Likewise.
++ * elf/tst-tlsmod9.c (dummy): Likewise.
++
++2003-04-22 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/unix/sysv/linux/not-cancel.h: Put parens around macro args.
++ (open_not_cancel): Make last argument non-optional.
++ * sysdeps/generic/check_fds.c (check_one_fd): Update caller.
++ * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Likewise.
++ * iconv/gconv_cache.c (__gconv_load_cache): Likewise.
++
++ * include/tls.h: Protect against multiple inclusion.
++
++2003-04-22 Ulrich Drepper <drepper@redhat.com>
++
++ * nscd/nscd-client.h: Add declaration for __nscd_open_socket.
++ * nscd/nscd_gethst_r.c (__nscd_open_socket): Renamed from
++ open_socket. Not static anymore.
++ (nscd_gethst_r): Use __nscd_open_socket.
++ * nscd/nscd_getgr_r.c (open_socket): Removed.
++ (nscd_getgr_r): Use __nscd_open_socket.
++ * nscd/nscd_getpw_r.c (open_socket): Removed.
++ (nscd_getpw_r): Use __nscd_open_socket.
++
++ * nscd/nscd.c (main): Change type of fdn to long int and use strtol.
++ * nscd/connections.c (handle_request): Add cast to avoid warning.
++
++2003-04-21 Ulrich Drepper <drepper@redhat.com>
++
++ * signal/sigfillset.c: Moved to...
++ * sysdeps/generic/sigfillset.c: ...here. If SIGCANCEL is defined
++ do not set the corresponding bit.
++
++ * sysdeps/unix/sysv/linux/sigprocmask.c: Prevent changing mask for
++ SIGCANCEL.
++ * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Define SI_TKILL.
++ * sysdeps/unix/sysv/linux/bits/siginfo.h: Define SI_TKILL.
++ * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Define SI_TKILL.
++ * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Define SI_TKILL.
++ * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Define SI_TKILL.
++
++2003-04-20 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/not-cancel.h (open_not_cancel): Cast
++ first syscall parameter to const char*.
++
++2003-04-19 Ulrich Drepper <drepper@redhat.com>
++
++ * intl/Makefile ($(objpfx)msgs.h): Use C locale for sed run.
++
++ * configure.in: Add AC_PROG_CXX.
++ * config.make.in (CXX): Define.
++
++ * sysdeps/i386/i686/hp-timing.h (HP_TIMING_PRINT): Change type of
++ __len to size_t to avoid warnings.
++
++2003-04-18 Jes Sorensen <jes@wildopensource.com>
++
++ * libc/sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Sync with Linux
++ 2.5.67.
++ * libc/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
++
++2003-04-19 Ulrich Drepper <drepper@redhat.com>
++
++ * stdlib/cxa_finalize.c (__cxa_finalize): Don't call
++ UNREGISTER_ATFORK if d == NULL.
++
++ * catgets/nl_types.h: Remove __THROW marker from cancellation points.
++ * dirent/dirent.h: Likewise.
++ * dlfcn/dlfcn.h: Likewise.
++ * grp/grp.h: Likewise.
++ * iconv/iconv.h: Likewise.
++ * io/fcntl.h: Likewise.
++ * io/ftw.h: Likewise.
++ * libio/stdio.h: Likewise.
++ * misc/sys/mman.h: Likewise.
++ * misc/sys/select.h: Likewise.
++ * misc/sys/syslog.h: Likewise.
++ * misc/sys/uio.h: Likewise.
++ * posix/spawn.h: Likewise.
++ * posix/unistd.h: Likewise.
++ * posix/sys/wait.h: Likewise.
++ * pwd/pwd.h: Likewise.
++ * resolv/netdb.h: Likewise.
++ * rt/aio.h: Likewise.
++ * shadow/shadow.h: Likewise.
++ * signal/signal.h: Likewise.
++ * socket/sys/socket.h: Likewise.
++ * stdlib/stdlib.h: Likewise.
++ * streams/stropts.h: Likewise.
++ * string/string.h: Likewise.
++ * sysdeps/gnu/utmpx.h: Likewise.
++ * sysvipc/sys/msg.h: Likewise.
++ * termios/termios.h: Likewise.
++ * time/time.h: Likewise.
++ * wcsmbs/wchar.h: Likewise.
++ * iconv/gconv_cache.c: Include <not-cancel.h> and use non-cancelable
++ functions.
++ * misc/daemon.c: Likewise.
++ * sysdeps/generic/backtracesymsfd.c: Likewise.
++ * sysdeps/generic/check_fds.c: Likewise.
++ * sysdeps/unix/sysv/linux/gethostid.c: Likewise.
++ * sysdeps/unix/sysv/linux/not-cancel.h: New file.
++ * sysdeps/generic/not-cancel.h: New file.
++ * csu/Makefile (distribute): Add not-cancel.h.
++ * sysdeps/unix/sysv/linux/fatal-prepare.h: New file.
++ * sysdeps/unix/sysv/linux/Makefile: Define FATAL_PREPARE_INCLUDE
++ for assert.c and assert-perr.c to include <fatal-prepare.h>.
++ * sysdeps/unix/sysv/linux/Dist: Add fatal-prepare.h.
++
++ * sysdeps/posix/remove.c (remove): Rewrite. No need to restore
++ errno and unlink first.
++
++ * io/ftw.c (ftw_dir): In all places assume fchdir is available.
++
++2003-04-18 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Use
++ INTERNAL_SYSCALL instead of INLINE_SYSCALL.
++
++2003-04-17 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/Makefile: Remove db2 directory handling.
++
++ * malloc/Makefile (CFLAGS-malloc.c): Define DEFAULT_TOP_PAD to 128k.
++ * sysdeps/unix/sysv/linux/Makefile (CFLAGS-malloc.c): Add to, not
++ replace.
++
++ * signal/Makefile (tests): Add tst-sigsimple.
++ * signal/tst-sigsimple.c: New file.
++
++2003-04-16 Jakub Jelinek <jakub@redhat.com>
++
++ * elf/Makefile (distribute): Add tst-tlsmod{[7-9],1[0-2]}.c and
++ tst-tls10.h.
++ (tests): Add tst-tls1[0-2].
++ (modules-names): Add tst-tlsmod{[7-8],1[0-2]}.
++ ($(objpfx)tst-tlsmod8.so): Depend on tst-tlsmod7.so.
++ ($(objpfx)tst-tlsmod10.so): Depend on tst-tlsmod9.so.
++ ($(objpfx)tst-tlsmod12.so): Depend on tst-tlsmod11.so.
++ ($(objpfx)tst-tls10): Depend on tst-tlsmod8.so.
++ ($(objpfx)tst-tls11): Depend on tst-tlsmod10.so.
++ ($(objpfx)tst-tls12): Depend on tst-tlsmod12.so.
++ * elf/tst-tls10.c: New test.
++ * elf/tst-tls11.c: New test.
++ * elf/tst-tls12.c: New test.
++ * elf/tst-tls10.h: New file.
++ * elf/tst-tlsmod7.c: New file.
++ * elf/tst-tlsmod8.c: New file.
++ * elf/tst-tlsmod9.c: New file.
++ * elf/tst-tlsmod10.c: New file.
++ * elf/tst-tlsmod11.c: New file.
++ * elf/tst-tlsmod12.c: New file.
++
++2003-04-15 Steven Munroe <sjmunroe@us.ibm.com>
++
++ * sysdeps/powerpc/bits/atomic.h: Moved ppc32/64 specific code to ...
++ * sysdeps/powerpc/powerpc32/bits/atomic.h: New file.
++ * sysdeps/powerpc/powerpc64/bits/atomic.h: New file.
++
++2003-04-17 Ulrich Drepper <drepper@redhat.com>
++
++ * posix/regex.h: Include <sys/types.h>.
++
++ * signal/sigrelse.c (sigrelse): Use sigdelset and not __sigdelset.
++ The signal number must be checked.
++ * signal/sighold.c (sighold): Use sigaddset and not __sigaddset.
++ The signal number must be checked [PR libc/5004].
++
++ * sysdeps/unix/sysv/linux/system.c: If compiled without threads
++ don't do anything fancy.
++
++ * sysdeps/generic/bits/libc-lock.h: Define
++ __rtld_lock_define_initialized_recursive.
++
++ * nss/getXXbyYY_r.c [USE_NSCD] (REENTRANT_NAME): Only retry
++ contacting nscd if NOT_USENSCD_NAME > 0.
++ * nss/nsswitch.c (__nss_disable_nscd): New function.
++ * nss/nsswitch.h: Declare it.
++ * nss/Versions [GLIBC_PRIVATE]: Export __nss_disable_nscd.
++ * nscd/nscd.c (main): Call __nss_disable_nscd.
++
++2003-04-16 Ulrich Drepper <drepper@redhat.com>
++
++ * stdio-common/perror.c (perror): We don't need to set the offset
++ to _IO_pos_bad, this is how streams are initialized.
++
++ * locale/programs/ld-time.c (TESTARR_ELEM): Make i unsigned.
++ (time_output): If necessary, allocate new buffer for .name string if
++ padding is required.
++
++ * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Check lengths
++ before copying. This might leave holes in the list. Adjust
++ pointers if necessary.
++ (netlink_receive): Allocate only one block.
++ (free_netlink_handle): Adjust appropriately.
++ (getifaddrs): Lots of cleanups.
++
++ * string/test-strncpy.c (do_one_test): Mark start and stop as
++ possibly unused.
++ * string/test-memchr.c: Likewise.
++ * string/test-memcmp.c: Likewise.
++ * string/test-memcpy.c: Likewise.
++ * string/test-memmove.c: Likewise.
++ * string/test-memset.c: Likewise.
++ * string/test-strcat.c: Likewise.
++ * string/test-strchr.c: Likewise.
++ * string/test-strcmp.c: Likewise.
++ * string/test-strcpy.c: Likewise.
++ * string/test-strlen.c: Likewise.
++ * string/test-strncmp.c: Likewise.
++ * string/test-strpbrk.c: Likewise.
++ * string/test-strrchr.c: Likewise.
++ * string/test-strspn.c: Likewise.
++
++2003-04-15 Roland McGrath <roland@redhat.com>
++
++ * libio/fileops.c (_IO_file_close_it): Macro tweak to avoid warning.
++
++ * sysdeps/generic/libc-start.c [NEED_DL_SYSINFO]: Add decl for
++ INTUSE(__register_frame_info_bases).
++
++2003-04-15 Ulrich Drepper <drepper@redhat.com>
++
++ * elf/elf.h: Define AT_SYSINFO_EH_FRAME.
++ * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Handle
++ AT_SYSINFO_EH_FRAME. Adjust string width.
++ (_dl_show_auxv):Display AT_SYSINFO_EH_FRAME value.
++ * sysdeps/generic/ldsodefs.h [NEED_DL_SYSINFO] (struct rtld_global):
++ Add _dl_sysinfo_eh_frame field.
++ * elf/dl-support.c [NEED_DL_SYSINFO]: Define _dl_sysinfo_eh_frame.
++ * sysdeps/generic/libc-start.c [NEED_DL_SYSINFO] Define eh_obj
++ variable.
++ [NEED_DL_SYSINFO] (LIBC_START_MAIN): Call __register_frame_info_bases
++ if _dl_sysinfo_eh_frame is non-NULL.
++
++ * Makeconfig (gnulib): Add -lgcc_eh.
++
++ * config.h.in: Define HAVE_FORCED_UNWIND.
++
++2003-04-15 Steven Munroe <sjmunroe@us.ibm.com>
++
++ * sysdeps/powerpc/powerpc64/strcmp.S: Convert to full 64-bit.
++ * sysdeps/powerpc/powerpc64/strcpy.S: Likewise.
++
++2003-04-15 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Avoid
++ checking R_PPC_RELATIVE, R_PPC_NONE and whether relocation is
++ against local symbol in conflict processing.
++
++2003-04-15 Steven Munroe <sjmunroe@us.ibm.com>
++
++ * sysdeps/powerpc/bits/atomic.h
++ [__powerpc64] (__arch_compare_and_exchange_val_64_acq): Define.
++ [! __powerpc64] (__arch_compare_and_exchange_val_64_acq): Defined
++ as abort stub.
++ (__arch_compare_and_exchange_val_32_acq): Define.
++ (atomic_compare_and_exchange_val_acq): Define.
++
++2003-04-15 Ulrich Drepper <drepper@redhat.com>
++
++ * include/atomic.h: Pretty printing.
++
++2003-04-14 Ulrich Drepper <drepper@redhat.com>
++
++ * stdio-common/vfscanf.c: Add casts to avoid warnings.
++
++2003-04-14 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/i386/i486/bits/atomic.h: Rename LOCK to LOCK_PREFIX.
++ * sysdeps/x86_64/bits/atomic.h: Likewise.
++
++2003-04-14 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/i386/sysdep.h: Change PUSHARGS_1 and
++ POPARGS_1 to emit labels for the mov instructions.
++
++2003-04-14 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (ret_NOERRNO): Define.
++
++2003-04-14 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/generic/unwind-dw2.c (_Unwind_GetCFA): Add a cast to silence
++ compiler warning.
++
++ * sysdeps/generic/unwind-pe.h: Fix decl hacks broken in merge.
++
++2003-04-14 Ulrich Drepper <drepper@redhat.com>
++
++ * string/strxfrm.c (STRXFRM): Terminate rulearr at correct
++ position. Reported by jreiser@BitWagon.com.
++
++2003-04-13 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/generic/unwind-dw2-fde.c: Update from recent gcc version.
++ * sysdeps/generic/unwind-dw2-fde.h: Likewise.
++ * sysdeps/generic/unwind-dw2.c: Likewise.
++ * sysdeps/generic/unwind-pe.h: Likewise.
++
++2003-04-13 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/unix/sysv/linux/mips/profil-counter: New.
++ * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Port to n32/n64.
++ * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: New.
++ * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Port to n32/n64.
++ (mcontext_t): Make it match the 32-bit mips kernel in o32.
++ * sysdeps/unix/sysv/linux/mips/sys/user.h: Bring in constants from
++ the mips and mips64 headers.
++ (struct user): Port to n32/n64.
++
++2003-04-12 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add cast to
++ avoid warning.
++
++ * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): If
++ __ASSUME_VSYSCALL is defined don't add restorer.
++ * sysdeps/unix/sysv/linux/kernel-features.h: Define
++ __ASSUME_VSYSCALL for 2.5.53.
++
++2003-04-11 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/generic/libc-start.c: Cleanup MAIN_AUXVEC_ARG handling.
++ Remove HAVE_CANCELBUF code. Replace with code using the new
++ initializers for unwind-based cleanup handling.
++ * sysdeps/generic/unwind.h: Update from latest gcc version.
++ * sysdeps/unix/sysv/linux/i386/sysdep.h: Define labels in a few
++ places to allow unwind data generation.
++ * sysdeps/i386/bits/setjmp.h: Allow file to be included multiple times.
++ * sysdeps/x86_64/bits/setjmp.h: Likewise.
++ * sysdeps/sh/bits/setjmp.h: Likewise.
++ * sysdeps/powerpc/bits/setjmp.h: Likewise.
++ * sysdeps/unix/sysv/linux/ia64/bits/setjmp.h: Likewise.
++ * sysdeps/alpha/bits/setjmp.h: Likewise.
++
++2003-04-11 Roland McGrath <roland@redhat.com>
++
++ * csu/tst-empty.c: New file.
++ * csu/Makefile (tests, tests-static): Add it.
++
++2003-04-11 Jakub Jelinek <jakub@redhat.com>
++
++ * string/test-strcmp.c (do_random_tests): Test whether return value
++ has been promoted to wordsize if the ABI requires caller to do so.
++ * string/test-strncmp.c (do_random_tests): Likewise.
++ * string/test-memcmp.c (do_random_tests): Likewise.
++
++ * sysdeps/powerpc/powerpc64/strcmp.S (strcmp): Sign extend rRTN
++ before returning.
++
++ * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
++ (__fe_nomask_env): Try prctl even if __ASSUME_NEW_PRCTL_SYSCALL
++ is not defined, but the prctl constants are.
++
++ * string/tester.c (test_strcmp): Fix a typo.
++
++2003-04-09 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/alpha/fpu/bits/mathdef.h: Remove FLT_EVAL_METHOD definition.
++ * sysdeps/powerpc/fpu/bits/mathdef.h: Likewise.
++
++2003-04-08 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/mips/sys/regdef.h (t4,t5,t6,t7): Renamed to t0..t3 on
++ NewABI.
++ (ta0, ta1, ta2, ta3): Defined to t4..t7 on o32, and a4..a7 on
++ NewABI.
++ * sysdeps/mips/mips64/memcpy.S: Adjust register naming
++ conventions.
++ * sysdeps/mips/mips64/memset.S: Likewise.
++ * sysdeps/unix/mips/sysdep.S (__syscall_error) [_LIBC_REENTRANT]:
++ Use t0 instead of t4 as temporary.
++
++2003-04-07 Ulrich Drepper <drepper@redhat.com>
++
++ * elf/ldconfig.c (parse_conf): Ignore leading whitespace. Use
++ feof_unlocked instead of feof.
++ (add_dir): Ignore trailing whitespace.
++
++2003-04-07 Jakub Jelinek <jakub@redhat.com>
++
++ * posix/bug-regex4.c (main): Cap RANGE and STOP arguments to
++ sum of SIZE1 and SIZE2 arguments.
++
++2003-04-06 Ulrich Drepper <drepper@redhat.com>
++
++ * iconv/iconv_prog.c (process_block): Don't print message about
++ invalid input if the -c option is used.
++ (main): Correctly append IGNORE string for -c option.
++
++2002-04-06 Kaz Kojima <kkojima@rr.iij4u.or.jp>
++
++ * sysdeps/sh/bits/atomic.h: Moved to ...
++ * sysdeps/unix/sysv/linux/sh/bits/atomic.h: ... here. Add comments.
++ (__arch_compare_and_exchange_val_*_acq): Add parens around macro
++ arguments.
++ (atomic_bit_set, atomic_bit_test_set): Likewise.
++ (atomic_exchange_and_add): Likewise. Don't evaluate VALUE argument
++ twice.
++ (atomic_add, atomic_add_negative, atomic_add_zero): Likewise.
++
++2003-04-06 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/unix/sysv/linux/i386/swapcontext.S: Rewrite register
++ restoration as done for setcontext yesterday.
++
++2003-04-06 Jakub Jelinek <jakub@redhat.com>
++
++ * elf/rtld.c: Revert 2003-03-14 change.
++ * elf/dl-conflict.c (_dl_resolve_conflicts): Move
++ #if ! ELF_MACHINE_NO_RELA conditional into the routine.
++
++2003-04-05 Ulrich Drepper <drepper@redhat.com>
++
++ * sunrpc/xdr.c (xdr_string): Catch nodesize == 0 [PR libc/4999].
++
++ * sysdeps/ieee754/ldbl-96/e_gammal_r.c (__ieee754_gammal_r):
++ Always initialize *signgamp before returning an error.
++
++2003-04-05 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/unix/sysv/linux/i386/setcontext.S: Rewrite to avoid writing
++ below the stack pointer even if switching to the same context we are
++ running right now.
++
++2003-04-05 Ulrich Drepper <drepper@redhat.com>
++
++ * catgets/gencat.c (read_input_file): Make sure that \n is not
++ alone on the line before testing for continuation.
++
++ * math/test-tgmath.c (compile_test): Initialize c.
++
++2003-04-05 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/unix/sysv/linux/mips/mips64/n32/ftruncate64.c: New.
++ * sysdeps/unix/sysv/linux/mips/mips64/n32/truncate64.c: New.
++ * sysdeps/unix/sysv/linux/kernel-features.h: fcntl64 is available
++ on mips n32.
++ * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Explain why
++ XSTAT_IS_XSTAT64 must not be used for mips n64. Use 64-bit data
++ structure on n32 as well.
++ * sysdeps/unix/sysv/linux/mips/bits/stat.h: Use POSIX-compliant
++ data types on n32 and n64.
++
++2003-04-05 Ulrich Drepper <drepper@redhat.com>
++
++ * libio/fileops.c (_IO_new_file_fopen): Don't free step data right
++ after getting them.
++
++ * malloc/thread-m.h [PTHREAD_MUTEX_INITIALIZER]: If
++ HAVE_register_atfork_malloc is defined use __register_atfork_malloc
++ instead of __register_atfork.
++
++2003-04-05 Jakub Jelinek <jakub@redhat.com>
++
++ * stdio-common/reg-printf.c (__register_printf_function): Calloc
++ instead of malloc __printf_arginfo_table and __printf_function_table.
++ Reported by John Reiser <jreiser@BitWagon.com>.
++
++2003-04-04 Steven Munroe <sjmunroe@us.ibm.com>
++
++ * sysdeps/powerpc/powerpc64/strchr.S: 64-bit optimizations.
++ * sysdeps/powerpc/powerpc64/strlen.S: 64-bit optimizations.
++
++ * sysdeps/powerpc/fpu/bits/mathdef.h (FLT_EVAL_METHOD): Undef before
++ defining.
++
++2003-04-04 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (struct flock): Adjust
++ for n64 abi.
++
++2003-04-03 Roland McGrath <roland@redhat.com>
++
++ * configure.in: Fix up use of compilation flags to match the build:
++ For .s files, $ASFLAGS;
++ For .S files, $CPPFLAGS $ASFLAGS;
++ For .c files, $CFLAGS $CPPFLAGS;
++ when linking, add $LDFLAGS.
++ * configure: Regenerated.
++
++2003-04-03 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/getsysstats.c (get_proc_path): Reverse test
++ for atomic_compare_and_exchange_bool_acq failure.
++
++2003-04-03 Ulrich Drepper <drepper@redhat.com>
++
++ * posix/unistd.h: Define _POSIX_VERSION, _POSIX2_VERSION,
++ _POSIX2_C_BIND, _POSIX2_C_DEV, _POSIX2_SW_DEV, and
++ _POSXI2_LOCALEDEF to 200112L. Remove _POSIX2_C_VERSION.
++ Remove declaration of pthread_atfork.
++
++2003-04-02 Ulrich Drepper <drepper@redhat.com>
++
++ * locale/iso-639.def: Add many more languages from the current ISO 639.
++
++ * sysdeps/unix/sysv/linux/ipc_priv.h: Define IPCOP_semtimedop.
++ * sysdeps/generic/semtimedop.c: New file.
++ * sysdeps/unix/sysv/linux/i386/semtimedop.S: New file.
++ * sysdeps/unix/sysv/linux/ia64/syscalls.list: Add semtimedop.
++ * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
++ * sysvipc/Makefile (routines): Add semtimedop.
++ * sysvipc/Versions [GLIBC_2.3.3] (glibc): Add semtimedop.
++ * sysvipc/sys/sem.h: Declare semtimedop.
++
++2003-04-02 Daniel Jacobowitz <drow@mvista.com>
++
++ * configure.in: Check for __register_frame_info in both
++ -lgcc and -lgcc_eh.
++ * configure: Regenerated.
++
++2003-04-01 Roland McGrath <roland@redhat.com>
++
++ * scripts/abilist.awk: Allow dots in soname suffix.
++
++ * scripts/abilist.awk (emit): Fix bailout condition.
++
++2003-04-01 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: Use the
++ IA-64 version.
++
++ * elf/tls-macros.h [__ia64__] (TLS_IE, TLS_LD, TLS_GD): Add gp
++ register as input to asm.
++
++2003-04-01 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (sigevent_t): Fix a typo.
++
++2003-04-01 Andreas Jaeger <aj@suse.de>
++
++ * configure.in: Output as/ld as name if version is too old.
++
++2003-03-31 Daniel Jacobowitz <drow@mvista.com>
++
++ * configure.in: Don't require an installed C library in the test
++ for ".set" assembler support.
++
++2003-03-31 Roland McGrath <roland@redhat.com>
++
++ * signal/tst-sigset.c: New file.
++ * signal/Makefile (tests): Add it.
++
++2003-03-31 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/alpha/bits/signum.h (_NSIG): Define to 65.
++ * sysdeps/unix/sysv/linux/hppa/bits/signum.h (_NSIG): Likewise.
++ * sysdeps/unix/sysv/linux/sparc/bits/signum.h (_NSIG): Likewise.
++ * sysdeps/unix/sysv/linux/bits/signum.h (_NSIG): Likewise.
++ (__SIGRTMAX): Adjust accordingly.
++ * sysdeps/gnu/siglist.c: If OLD2_SIGLIST_SIZE is defined define
++ second compatibility symbol set.
++ * sysdeps/unix/sysv/linux/siglist.h (OLD2_SIGLIST_SIZE): Define.
++
++2003-03-31 Andreas Schwab <schwab@suse.de>
++
++ * sysdeps/m68k/m68020/bits/atomic.h (atomic_increment_and_test):
++ Define.
++ (atomic_decrement_and_test): Fix test.
++
++2003-03-31 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/sparc/sparc32/bits/atomic.h: New file.
++ * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: New file.
++ * sysdeps/sparc/sparc64/bits/atomic.h: New file.
++ * sysdeps/sparc/sparc32/atomicity.h: Removed.
++ * sysdeps/sparc/sparc32/sparcv9/atomicity.h: Removed.
++ * sysdeps/sparc/sparc64/atomicity.h: Removed.
++
++2003-03-30 Roland McGrath <roland@redhat.com>
++
++ * scripts/abilist.awk: Grok .opd foo plus .text .foo as "foo F" alone.
++
++ * intl/po2test.sed: Anchor substitution regexps to fix last change.
++
++2003-03-29 Paolo Bonzini <bonzini@gnu.org>
++
++ * intl/po2test.sed: Unify the transformations for msgid and msgstr
++ and remove a useless s/// command.
++
++2003-03-27 David Mosberger <davidm@hpl.hp.com>
++
++ * sysdeps/ia64/dl-machine.h (RTLD_START): Wrap ".save rp, r0"
++ directive into empty .prologue region to ensure that call-chain
++ is terminated even for the first instruction.
++
++ * sysdeps/ia64/elf/start.S (_start): Use ".save rp, r0" idiom
++ to terminate call-chain right from the get-go.
++
++ * sysdeps/unix/sysv/linux/ia64/fork.S (fork): Remove unnecessary
++ stop bit between compare & branch.
++
++2003-03-29 Ulrich Drepper <drepper@redhat.com>
++
++ * stdlib/strtod.c (INTERNAL): Recognize first digit after decimal
++ point correctly [PR libc/4993].
++
++ * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Avoid
++ netlink_open calls if netlink is known to not be available.
++
++2003-03-29 Alexandre Oliva <aoliva@redhat.com>
++
++ * configure.in: Add mips64* support.
++ * sysdeps/mips/bits/endian.h: Make it bi-endian.
++ * sysdeps/mips/mipsel/bits/endian.h: Removed.
++ * sysdeps/mips/mips64/n32/el/bits/endian.h: Removed.
++ * sysdeps/mips/mips64/n64/el/bits/endian.h: Removed.
++ * sysdeps/mips/mips32/Makefile (CC): Add -mabi=32.
++ * sysdeps/mips/mips64/n32/Makefile (CC): Add -mabi=n32.
++ * sysdeps/mips/mips64/n64/Makefile (CC): Add -mabi=64.
++ * sysdeps/mips/Implies: Moved wordsize-32 to...
++ * sysdeps/mips/mips32/Implies: New file.
++ * sysdeps/unix/mips/sysdep.h (PSEUDO_NOERRNO, PSEUDO_END_NOERRNO,
++ ret_NOERRNO): New.
++ (ret, PSEUDO_END): Moved past END.
++ (PSEUDO): Moved to...
++ * sysdeps/unix/mips/mips32/sysdep.h: New file.
++ * sysdeps/unix/mips/mips64/n32/sysdep.h: Removed #undef PSEUDO.
++ * sysdeps/unix/mips/mips64/n64/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/mips/sysdep.h: Move to...
++ * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h: New file.
++ * sysdeps/unix/sysv/linux/mips/mips32/kern64/sysdep.h: New file.
++
++ * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start):
++ Re-introduce ENTRY.
++
++2003-03-28 Thorsten Kukuk <kukuk@suse.de>
++
++ * sysdeps/unix/sysv/linux/ifaddrs.c: New file.
++ * inet/test-ifaddrs.c: Allow AF_PACKET.
++ * sysdeps/unix/sysv/linux/kernel-features.h: Add
++ __ASSUME_NETLINK_SUPPORT.
++
++2003-03-28 Ulrich Drepper <drepper@redhat.com>
++
++ * elf/vismain.c (do_test): Comment out tests which fail in the moment.
++
++2003-03-26 H.J. Lu <hjl@gnu.org>
++
++ * elf/vismod.h (getvarlocal1): Return const char **.
++ (getvarinmod1): Likewise.
++ (getvaritcpt1): Likewise.
++ (getvarlocal2): Likewise.
++ (getvarinmod2): Likewise.
++ (getvaritcpt2): Likewise.
++ (getvaritcpt3): Likewise.
++ * elf/vismain.c (do_test): Adjusted.
++ * elf/vismod1.c (getvarlocal1): Return address.
++ (getvarinmod1): Likewise.
++ (getvaritcpt1): Likewise.
++ * elf/vismod2.c (getvarlocal2): Likewise.
++ (getvarinmod2): Likewise.
++ (getvaritcpt2): Likewise.
++ * elf/vismod3.c (getvaritcpt3): Likewise.
++
++2003-03-28 Roland McGrath <roland@redhat.com>
++
++ * elf/vismain.c (do_test): Print both addresses when they don't match.
++
++ * scripts/abilist.awk: If given -v filename_regexp and/or -v
++ libname_regexp when parsing names, then produce output only
++ for those matching the given regexps. In combine mode, save all
++ stanzas for a final sorting by stanza header at the end.
++ Emit a blank line between stanzas.
++
++ * scripts/abilist.awk: When given -v combine=1, do parse_names and
++ emit a single output stream with lib name in stanza header lines.
++
++ * scripts/abilist.awk: Emit A for all *ABS* regardless of type.
++
++2003-03-27 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/powerpc/bits/atomic.h [! __powerpc64__]
++ (__arch_atomic_decrement_if_positive_64): Fix bogus definition.
++
++2003-03-28 Kaz Kojima <kkojima@rr.iij4u.or.jp>
++
++ * sysdeps/sh/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
++ Return old value. Make asm output reg constraint earlyclobber.
++ Renamed from...
++ (__arch_compare_and_exchange_8_acq): ... this.
++ (__arch_compare_and_exchange_val_16_acq):
++ Return old value. Make asm output reg constraint earlyclobber.
++ Renamed from...
++ (__arch_compare_and_exchange_16_acq): ... this.
++ (__arch_compare_and_exchange_val_32_acq):
++ Return old value. Make asm output reg constraint earlyclobber.
++ Renamed from...
++ (__arch_compare_and_exchange_32_acq): ... this.
++ (__arch_compare_and_exchange_val_64_acq):
++ Renamed from...
++ (__arch_compare_and_exchange_64_acq): ... this.
++ (atomic_exchange_and_add): Use local variables and
++ __arch_compare_and_exchange_val_64_acq.
++ (atomic_add): Likewise.
++ (atomic_add_negative, atomic_add_zero): Use local variables.
++
++2003-03-28 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/unix/mips/sysdep.S: Include sys/asm.h.
++
++2003-03-27 Ulrich Drepper <drepper@redhat.com>
++
++ * Makefile: Remove libmd5crypt goal.
++
++2003-03-25 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Restore
++ special handling of relocations against local symbols.
++
++2003-03-27 Steven Munroe <sjmunroe@us.ibm.com>
++
++ * sysdeps/powerpc/bits/atomic.h
++ (__arch_compare_and_exchange_bool_32_acq): Move to [!__powerpc64__].
++ [__powerpc64__] (__arch_compare_and_exchange_bool_32_acq):
++ Define PPC64 specific version.
++ [__powerpc64__] (__arch_compare_and_exchange_bool_64_acq):
++ Change (mem) constraint to "b".
++ [__powerpc64__] (__arch_atomic_exchange_and add_64):
++ Replace addi with add. Change (value) contraint to "r".
++ Change (mem) constraint to "b".
++ [__powerpc64__] (__arch_atomic_decrement_if_positive_64): New macro.
++ (__arch_atomic_exchange_32): Change (mem) constraint to "b".
++ (__arch_atomic_exchange_and_add_32): Change (mem) constraint to "b".
++ (__arch_atomic_decrement_if_positive_32): New macro.
++ (atomic_decrement_if_positive): Use __arch* macros.
++
++2003-03-27 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/ia64/fpu/libm-test-ulps: Update.
++
++2003-03-27 Roland McGrath <roland@redhat.com>
++
++ * scripts/rpm2dynsym.sh: New file.
++ * Makefile (distribute): Add it.
++
++2003-03-27 David Mosberger <davidm@hpl.hp.com>
++
++ * sysdeps/unix/sysv/linux/ia64/getcontext.S: Restore caller's
++ ar.unat before returning. Add missing .mem.offset directives
++ to ensure file gets assembled without warnings.
++ * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
++
++2003-03-27 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/sysconf.c (__sysconf) <_SC_MONOTONIC_CLOCK>:
++ Return -1 instead of 0 if clock_getres failed.
++
++2003-03-27 Roland McGrath <roland@redhat.com>
++
++ * scripts/abilist.awk: If variable `parse_names' is set, grok the file
++ header lines and write out foo.symlist files for each foo.so.NN listed.
++
++ * libio/libioP.h (_IO_wfile_jumps): Remove attribute_hidden.
++ This symbol is exported, and we don't want to hide it.
++ Add libc_hidden_proto instead.
++ (_IO_file_jumps): Add libc_hidden_proto.
++ * libio/wfileops.c (_IO_wfile_jumps): Add libc_hidden_data_def.
++ Remove INTVARDEF.
++ * libio/fileops.c (_IO_file_jumps): Likewise.
++ * libio/stdfiles.c: Don't use INTUSE on them.
++ * libio/iofdopen.c (_IO_new_fdopen): Likewise.
++ * libio/iofopen.c (__fopen_internal): Likewise.
++ * libio/freopen.c (freopen): Likewise.
++ * libio/freopen64.c (freopen64): Likewise.
++ * libio/iovdprintf.c (_IO_vdprintf): Likewise.
++
++ * Makerules (check-abi) [$(enable-check-abi) = warn]:
++ Ignore exit status from diff.
++ * configure.in (enable_check_abi): Document possible value "warn".
++ Change default to no for now.
++ * configure: Regenerated.
++
++ * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Emit stub_warning
++ macro calls and a #include <stub-tag.h> at the end.
++ * Makerules ($(objpfx)stubs): Tweak sed commands.
++
++ * sysdeps/unix/sysv/linux/syscalls.list: Use - rather than EXTRA in
++ caller column for *xattr syscalls, since they are in sysdeps/generic.
++
++ * sysdeps/unix/sysv/linux/i386/setfsuid.c: setfsgid -> setfsuid
++ * sysdeps/unix/sysv/linux/i386/setfsgid.c: setfsuid -> setfsgid
++
++2003-03-26 Roland McGrath <roland@redhat.com>
++
++ * Makerules (check-abi-config): Use /thread instead of /tls when
++ use-thread and not just use-tls is set.
++
++ * Makerules (update-abi): Put quotes around $(update-abi-config).
++
++ * elf/Makefile (check-abi): Depend on check-abi-ld.
++ (update-abi): Depend on update-abi-ld.
++
++2003-03-26 GOTO Masanori <gotom@debian.or.jp>
++
++ * sysdeps/unix/sysv/linux/i386/setfsuid.c: Use INTERNAL_SYSCALL and
++ do not check for errors (unless testing for 32bit variant).
++ * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.
++
++2003-03-27 Philip Blundell <philb@gnu.org>
++
++ * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_RET_NOERRNO): Use
++ unconditional mov. Remove nop.
++
++ * sysdeps/unix/sysv/linux/kernel-features.h
++ (__ASSUME_VFORK_SYSCALL): Define for kernel 2.4 on arm.
++ * sysdeps/unix/sysv/linux/arm/vfork.S: Elide compatibility code
++ when __ASSUME_VFORK_SYSCALL is defined.
++ * sysdeps/unix/sysv/linux/arm/mmap64.S: Likewise for
++ __ASSUME_MMAP2_SYSCALL.
++ * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise for
++ __ASSUME_REALTIME_SIGNALS.
++
++2003-03-26 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/generic/ldsodefs.h (ELF_RTYPE_CLASS_COPY): Define to 2
++ only if DL_NO_COPY_RELOCS is not defined.
++ * sysdeps/ia64/dl-lookupcfg.h: Define DL_NO_COPY_RELOCS.
++
++2003-03-26 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/unix/make-syscalls.sh: When an undefined syscall has
++ SOURCE=-, append its symbol names to make variable unix-stub-syscalls.
++ * sysdeps/unix/Makefile [$(subdir) = misc] [unix-stub-syscalls]
++ (sysdep_routines): Add stub-syscalls.
++ ($(objpfx)stub-syscalls.c): New target.
++ (generated): Add stub-syscalls.c.
++
++ * tls.make.c: Also define use-tls according to USE_TLS macro.
++
++2003-03-26 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h (struct siginfo): Avoid
++ no-op padding element.
++ * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
++ * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
++ * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
++ * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
++
++2003-03-26 GOTO Masanori <gotom@debian.or.jp>
++
++ * sysdeps/unix/sysv/linux/i386/getgroups.c: Fix the error
++ condition check for the return value of getgroups32.
++
++2003-03-26 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO_NOERRNO):
++ Fix a typo.
++ * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PSEUDO_NOERRNO,
++ PSEUDO_END_NOERRNO): Define.
++ * sysdeps/unix/sysdep.h (PSEUDO_END_NOERRNO): Fix a typo.
++ Define to PSEUDO_END.
++
++2003-03-26 Ulrich Drepper <drepper@redhat.com>
++
++ * abilist/librt.abilist: Add new timer interfaces for 64-bit archs.
++
++2003-03-25 Jiro SEKIBA <jir@yamato.ibm.com>
++
++ * iconvdata/euc-tw.c (from_euc_tw): Fix return value of TO_LOOP.
++ * iconvdata/bug-iconv4.c: New file.
++ * iconvdata/Makefile (tests): Add bug-iconv4.
++
++2003-03-25 H.J. Lu <hjl@gnu.org>
++
++ * elf/dl-lookup.c (_dl_lookup_symbol): Avoid looking up protected
++ symbols twice.
++ (_dl_lookup_versioned_symbol): Likewise.
++
++2003-03-26 Jakub Jelinek <jakub@redhat.com>
++
++ * csu/tst-atomic.c (do_test): Add some new
++ atomic_compare_and_exchange_val_acq, atomic_add_zero,
++ atomic_compare_and_exchange_bool_acq and atomic_add_negative tests.
++ * include/atomic.h (atomic_add_negative, atomic_add_zero):
++ Prefix local variable so that it doesn't clash with the one
++ in atomic_exchange_and_add.
++ * sysdeps/ia64/bits/atomic.h (atomic_exchange): Fix for long/void *
++ pointers.
++ (atomic_exchange_and_add): Implement using __sync_fetch_and_add_?i.
++ * sysdeps/powerpc/bits/atomic.h (atomic_exchange_and_add): Force
++ value into register.
++ * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_64_acq):
++ Cast newval to long.
++ * sysdeps/x86_64/bits/atomic.h
++ (__arch_compare_and_exchange_val_64_acq): Cast newval and oldval to
++ long.
++ (atomic_exchange): Cast newvalue to long if sizeof == 8.
++ (atomic_exchange_and_add): Cast value to long if sizeof == 8.
++ (atomic_add, atomic_add_negative, atomic_add_zero): Likewise.
++ (atomic_bit_set): Shift 1L up in all cases to shut up warnings.
++
++2003-03-21 Martin Schwidefsky <schwidefskyde.ibm.com>
++
++ * sysdeps/s390/s390-32/backtrace.c (__backtrace): Remove high order
++ bit from backtrace addresses.
++
++2003-03-21 Andreas Schwab <schwab@suse.de>
++
++ * sysdeps/unix/sysv/linux/i386/chown.c: Don't define any versioned
++ __chown symbols.
++
++2003-03-25 Roland McGrath <roland@redhat.com>
++
++ * config.make.in (enable-check-abi): New variable from configure.
++ * configure.in (enable_check_abi): New substituted variable,
++ controlled by --{enable,disable}-check-abi (default yes).
++ * configure: Regenerated.
++ * Makerules [$(enable-check-abi) = yes] (tests): Put this condition
++ on check-abi dependency.
++
++2003-03-26 Andreas Schwab <schwab@suse.de>
++
++ * sysdeps/m68k/m68020/bits/atomic.h: Fix typos.
++ * include/atomic.h: Likewise.
++
++ * sysdeps/unix/sysv/linux/m68k/sysdep.h: Define ret_NOERRNO.
++
++2003-03-25 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/powerpc/bits/atomic.h (__arch_atomic_exchange_32): New macro.
++ (__arch_atomic_exchange_64): New macro.
++ (atomic_exchange): Use them.
++ (__arch_atomic_exchange_and_add_32): New macro.
++ (__arch_atomic_exchange_and_add_64): New macro.
++ (atomic_exchange_and_add): Use them.
++ Original patch from Steven Munroe <sjmunroe@us.ibm.com>.
++
++2003-03-25 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/mips/sgidefs.h (_MIPS_ISA_MIPS32, _MIPS_ISA_MIPS64):
++ Define.
++ * sysdeps/mips/sys/asm.h: Test _MIPS_ISA against them on all
++ ISA tests.
++ (ALSZ, ALMASK, SZREG, REG_S, REG_L): Define based on ABI, not ISA.
++ (PTR_ADD, etc): Test _MIPS_SZPTR instead of _MIPS_SZLONG.
++ * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
++ to decide whether to add padding.
++ * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
++ to decide whether to add padding.
++ * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h (struct
++ old_kernel_sigaction): Likewise.
++
++2003-03-25 Ulrich Drepper <drepper@redhat.com>
++
++ * csu/tst-atomic.c: Adjust tests to what atomic_add_negative and
++ atomic_add_zero were supposed to do.
++ * include/atomic.h: Adjust atomic_add_negative and atomic_add_zero
++ to x86 behavior.
++
++ * sysdeps/generic/bits/typesizes.h (__TIMER_T_TYPE): Define as void*.
++ This matches the new timer implementation.
++ * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h (__TIMER_T_TYPE):
++ Likewise.
++ * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h (__TIMER_T_TYPE):
++ Likewise.
++ * sysdeps/unix/sysv/linux/bits/siginfo.h (struct siginfo): Adjust
++ timer info for what the kernel provides these days.
++ (struct sigevent): Add _tid field.
++ Define SIGEV_THREAD_ID.
++ Remove struct __pthread_attr_s forward declaration.
++ * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Likewise.
++ * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
++ * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
++ * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
++
++ * Versions.def (librt): Add GLIBC_2.3.3.
++
++ * abilist/libpthread.abilist: Update for nptl.
++
++2003-03-24 Jon Grimm <jgrimm@us.ibm.com>
++
++ * inet/netinet/in.h: Add IPPROTO_SCTP.
++
++2003-03-24 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/sys/epoll.h (EPOLLET): Define.
++
++2003-03-24 Philip Blundell <philb@gnu.org>
++
++ * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL):
++ Remove a1 from clobber list.
++
++2003-03-24 Ulrich Drepper <drepper@redhat.com>
++
++ * timezone/antarctica: Update from tzdata2003a.
++ * timezone/asia: Likewise.
++ * timezone/australasia: Likewise.
++ * timezone/europe: Likewise.
++ * timezone/iso3166.tab: Likewise.
++ * timezone/northamerica: Likewise.
++ * timezone/southamerica: Likewise.
++ * timezone/zone.tab: Likewise.
++
++2003-03-24 Steven Munroe <sjmunroe@us.ibm.com>
++
++ * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_END_NOERRNO): Fix typo.
++
++2003-03-23 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/ia64/sysdep.h (ret_NOERRNO): Avoid
++ unwanted expansion by definining to ret. Patch by Ian Wienand.
++
++ * sysdeps/unix/make-syscalls.sh: Recognize 'E' in first position of
++ the parameter description to denote no error checking. Generate
++ appropriate pseudo asm code.
++ * sysdeps/unix/syscalls.list: Mark getgid, getpid, getuid with 'E'.
++ * sysdeps/unix/sysv/linux/syscalls.list: Mark getegid, geteuid,
++ getpgrp, and getppid with 'E'.
++ * sysdeps/powerpc/powerpc32/sysdep.h: Define PSEUDO_NOERRNO,
++ PSEUDO_END_NOERRNO, and ret_NOERRNO.
++ * sysdeps/powerpc/powerpc64/sysdep.h: Likewise.
++ * sysdeps/unix/sysdep.h: Likewise.
++ * sysdeps/unix/alpha/sysdep.h: Likewise.
++ * sysdeps/unix/sparc/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/arm/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/cris/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/hppa/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
++
++2003-03-23 Roland McGrath <roland@redhat.com>
++
++ * Makeconfig (+includes): Don't use $(last-includes).
++
++2003-03-22 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/unix/sysv/linux/configure.in: Update mips64 patterns.
++ * sysdeps/unix/sysv/linux/configure: Rebuilt.
++
++2003-03-23 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/alpha/fpu/libm-test-ulps: Update.
++ * sysdeps/arm/libm-test-ulps: Update.
++ * sysdeps/hppa/fpu/libm-test-ulps: Update.
++ * sysdeps/ia64/fpu/libm-test-ulps: Update.
++ * sysdeps/mips/fpu/libm-test-ulps: Update.
++ * sysdeps/powerpc/nofpu/libm-test-ulps: Update.
++ * sysdeps/powerpc/fpu/libm-test-ulps: Update.
++ * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update.
++ * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
++ * sysdeps/sh/sh4/fpu/libm-test-ulps: Update.
++ * sysdeps/s390/fpu/libm-test-ulps: Update.
++ * sysdeps/x86_64/fpu/libm-test-ulps: Update.
++
++2003-03-22 Roland McGrath <roland@redhat.com>
++
++ * include/atomic.h: Put parens around all macro arguments.
++ (__atomic_val_bysize, __atomic_bool_bysize): New macros.
++ (atomic_compare_and_exchange_val_acq): Use it.
++ (atomic_compare_and_exchange_bool_acq): Likewise.
++ (atomic_increment_and_test): Invert sense of test.
++ (atomic_decrement_and_test): Likewise.
++ * csu/tst-atomic.c: Update those tests to match.
++
++2003-03-22 Jakub Jelinek <jakub@redhat.com>
++
++ * include/atomic.h (atomic_compare_and_exchange_val_acq): Add comment.
++ Don't define if __arch_compare_and_exchange_val_32_acq is not defined.
++ (atomic_compare_and_exchange_bool_acq): Add comment. Don't use
++ __oldval variable in the macro, since it might be macro argument.
++ (atomic_decrement_if_positive): Initialize __memp, remove setting
++ of non-existent variable.
++ (atomic_bit_test_set): Cast 1 to __typeof (*mem) before shifting.
++ * sysdeps/ia64/bits/atomic.h (atomic_exchange_and_add): Implement
++ using atomic_compare_and_exchange_val_acq.
++ (atomic_decrement_if_positive, atomic_bit_test_set): Define.
++ * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
++ Renamed from...
++ (__arch_compare_and_exchange_bool_8_acq): ... this.
++ (__arch_compare_and_exchange_val_16_acq): Renamed from...
++ (__arch_compare_and_exchange_bool_16_acq): ... this.
++ (__arch_compare_and_exchange_val_32_acq): Return old value. Renamed
++ from...
++ (__arch_compare_and_exchange_bool_32_acq): ... this.
++ (__arch_compare_and_exchange_val_64_acq): Return old value. Renamed
++ from...
++ (__arch_compare_and_exchange_bool_64_acq): ... this.
++ (__arch_compare_and_exchange_val_32_acq): Use __typeof for local
++ variables types instead of assuming int.
++ Change prefix of local variables to __arch.
++ * sysdeps/generic/bits/atomic.h (arch_compare_and_exchange_acq):
++ Remove.
++ (atomic_compare_and_exchange_val_acq,
++ atomic_compare_and_exchange_bool_acq): Define.
++
++ * csu/tst-atomic.c: New test.
++ * csu/tst-atomic-long.c: New test.
++ * csu/Makefile (tests): Add tst-atomic and tst-atomic-long.
++
++ * malloc/memusagestat.c (main): Kill warning if uint64_t is ulong.
++
++ * sysdeps/s390/Versions: Add trailing newline.
++
++ * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Kill warning
++ if INTERNAL_SYSCALL_ERROR_P doesn't use its first argument.
++
++2003-03-22 Andreas Schwab <schwab@suse.de>
++
++ * sysdeps/m68k/fpu/libm-test-ulps: Update.
++
++ * sysdeps/m68k/m68020/bits/atomic.h: New file.
++ * sysdeps/m68k/m68020/atomicity.h: Removed.
++
++2003-03-22 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/mips/elf/ldsodefs.h: Add mips-specific elf64 relocation
++ data structures and macros. Protect from multiple inclusion.
++
++ * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Fix harmless
++ typo in #if test.
++
++2003-03-21 Andreas Jaeger <aj@suse.de>
++
++ * sysdeps/i386/fpu/libm-test-ulps: Update.
++
++ * math/libm-test.inc (tgamma_test): Recompute some constants with
++ 36 digits precision.
++ (lgamma_test): Likewise.
++ (ccos_test): Likewise.
++ (ccosh_test): Likewise.
++ (clog10_test): Likewise.
++ (csin_test): Likewise.
++ (csinh_test): Likewise.
++ (ctan_test): Likewise.
++ (ctanh_test): Likewise.
++
++2003-03-19 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Regenerated.
++
++2003-03-21 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/i386/i486/bits/atomic.h (atomic_bit_set): Use "ir"
++ constraint to permit non-constant BIT argument.
++ (atomic_bit_test_set): Likewise.
++ * sysdeps/x86_64/bits/atomic.h (atomic_bit_test_set): Likewise.
++ (atomic_bit_set): Likewise. Use 1UL in case that BIT might be >= 32.
++ For quadword case, use "i" constraint if __builtin_constant_p and < 32
++ or "r" constraint otherwise.
++
++ * configure.in: Move AC_PROG_CC and other program-finding before all
++ the version checks.
++ * configure: Regenerated.
++
++2003-03-21 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/mips/mips64/memcpy.S: Fix porting bug that broke
++ unaligned copying of 8-15 bytes. From Chris Demetriou
++ <cgd@broadcom.com>. Fix label names.
++ * sysdeps/mips/mips64/memset.S: Fix label names. Make similar
++ change as to memcpy.S.
++ * sysdeps/mips/memcpy.S: Formatting changes.
++ * sysdeps/mips/memset.S: Likewise.
++
++2003-03-21 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/arm/sysdep.h (CALL_MCOUNT): Add trailing semicolon.
++
++2003-03-21 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/mips/mips64/memcpy.S, sysdeps/mips/mips64/memset.S: New.
++ * sysdeps/mips/memcpy.S, sysdeps/mips/memset.S: Update comments.
++
++2003-03-21 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/i386/i486/bits/atomic.h
++ (__arch_compare_and_exchange_val_64_acq): Rewrite abort-calling
++ version of the macro to avoid compile-time warnings.
++ [! __PIC__] (__arch_compare_and_exchange_64_acq): Rename to above.
++ (atomic_exchange_and_add, atomic_add): Fix name and usage of it.
++ (atomic_increment, atomic_decrement): Likewise.
++
++2003-03-21 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/x86_64/bits/atomic.h: Don't use matching memory constraints.
++ * sysdeps/i386/i486/bits/atomic.h: Likewise.
++
++2003-03-21 Roland McGrath <roland@redhat.com>
++
++ * include/atomic.h (atomic_compare_and_exchange_bool_acq): Typo fix.
++
++2003-03-20 Ulrich Drepper <drepper@redhat.com>
++
++ * include/atomic.h: Define atomic_compare_and_exchange_val_acq,
++ atomic_compare_and_exchange_val_rel,
++ atomic_compare_and_exchange_bool_acq, and
++ atomic_compare_and_exchange_bool_rel instead of
++ atomic_compare_and_exchange_acq and atomic_compare_and_exchange_rel.
++ * sysdeps/i386/i486/bits/atomic.h: Define
++ __arch_compare_and_exchange_val_*_acq instead of
++ __arch_compare_and_exchange_*_acq.
++ * sysdeps/x86_64/bits/atomic.h: Likewise.
++ * sysdeps/ia64/bits/atomic.h: Define
++ __arch_compare_and_exchange_bool_*_acq instead of
++ __arch_compare_and_exchange_*_acq.
++ * sysdeps/powerpc/bits/atomic.h: Likewise.
++ * sysdeps/s390/bits/atomic.h: Likewise.
++ * gmon/mcount.c: Adjust for new form of compare&exchange macros.
++ * malloc/set-freeres.c: Likewise.
++ * nscd/cache.c: Likewise.
++ * stdlib/cxa_finalize.c: Likewise.
++ * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
++
++2003-03-20 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/mips/bits/setjmp.h: n32 has only 6 call-saved fpregs.
++ * sysdeps/mips/mips64/setjmp_aux.c (__sigsetjmp_aux): Adjust.
++ * sysdeps/mips/mips64/__longjmp.c (__longjmp): Likewise.
++
++ * sysdeps/unix/sysv/linux/mips/pread.c: Don't break up offset
++ into high and low halves on n64.
++ * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
++ * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
++ * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
++
++2003-03-20 Ulrich Drepper <drepper@redhat.com>
++
++ * include/atomic.h (atomic_decrement_if_positive): Adjust for the
++ correct atomic_compare_and_exchange_acq semantics.
++
++2003-03-20 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/mips/ieee754.h: Remove excess #endif.
++
++2003-03-20 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/powerpc/bits/atomic.h (atomic_exchange): Remove unused
++ variable. Remove superfluous memory clobber.
++
++ * include/atomic.h: Syntax braino fix.
++
++ * posix/tst-nice.c (do_test): Use %m formats instead of printing errno
++ in decimal. Don't bail if niced at start. Just check that nice call
++ bumps the total at all.
++
++2003-03-20 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/mips/bits/setjmp.h: Store all N32 and N64 registers,
++ including pc, gp, sp and fp, as long long.
++ * sysdeps/mips/mips64/setjmp.S: Pass gp to __sigsetjmp_aux.
++ * sysdeps/mips/mips64/setjmp_aux.c: Adjust type of arguments.
++ Add gp argument, and set gp in the jmpbuf to it.
++ * sysdeps/mips/setjmp_aux.c: Revert to o32-only.
++
++2003-03-20 Ulrich Drepper <drepper@redhat.com>
++
++ * include/atomic.h: Define atomic_exchange and
++ atomic_decrement_if_positive if not already defined. Add some
++ __builtin_expect.
++ * sysdeps/i386/i486/bits/atomic.h: Define atomic_exchange.
++ * sysdeps/x86_64/bits/atomic.h: Likewise.
++ * sysdeps/ia64/bits/atomic.h: Pretty printing. Define atomic_exchange.
++ * sysdeps/powerpc/bits/atomic.h: Pretty printing. Define
++ atomic_exchange, atomic_exchange_and_add, and
++ atomic_decrement_if_positive
++
++2003-03-20 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: Sign-extend
++ with a single instruction.
++
++ * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Define
++ properly for n64.
++ (elf_machine_runtime_setup): Cast link_map pointer to Elf Addr
++ type.
++ (elf_machine_rel, elf_machine_rel_relative): Cast symidx to Elf
++ Word before comparing with gotsym. Take reloc_addr argument as
++ void*. Remove the code added for the compiler to drop any
++ alignment assumptions.
++
++2003-03-19 Ulrich Drepper <drepper@redhat.com>
++
++ * Makefile (distribute): Add include/atomic.h and bits/atomic.h.
++ * include/atomic.h: New file.
++ * sysdeps/i386/i486/bits/atomic.h: New file.
++ * sysdeps/x86_64/bits/atomic.h: New file.
++ * sysdeps/s390/bits/atomic.h: New file.
++ * sysdeps/sh/bits/atomic.h: New file.
++ * sysdeps/ia64/bits/atomic.h: New file.
++ * sysdeps/powerpc/bits/atomic.h: New file.
++ * sysdeps/generic/bits/atomic.h: New file.
++ * sysdeps/i386/i486/atomicity.h: Removed.
++ * sysdeps/x86_64/atomicity.h: Removed.
++ * sysdeps/s390/s390-32/atomicity.h: Removed.
++ * sysdeps/s390/s390-64/atomicity.h: Removed.
++ * sysdeps/ia64/atomicity.h: Removed.
++ * sysdeps/powerpc/powerpc32/atomicity.h: Removed.
++ * sysdeps/powerpc/powerpc64/atomicity.h: Removed.
++ * elf/dl-profile.c: Use atomic.h instead of atomicity.h. Adjust
++ use of macros from atomicity.h to new names and semantics.
++ * gmon_mcount.c: Likewise.
++ * malloc/set-freeres.c: Likewise.
++ * nscd/cache.c: Likewise.
++ * stdlib/cxa_finalize.c: Likewise.
++ * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
++
++2003-03-19 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/mips/ieee754.h: New file, suitable to replace both
++ ../ieee754/ieee754.h and ../ieee754/ldbl-128/ieee754.h, kept
++ mips-specific for now.
++
++2003-03-19 Ulrich Drepper <drepper@redhat.com>
++
++ * stdlib/strtod.c (INTERNAL): While eating trailing zeros handle
++ hexdigits correctly. Reported by Fred Tydeman <tydeman@tybor.com>.
++ * stdlib/tst-strtod.c: Add test for the bug.
++
++ * posix/tst-nice.c (do_test): Remove invalid of return value.
++ Don't run test if initial level != 0.
++
++2003-03-19 Amos Waterland <apw@us.ibm.com>
++
++ * posix/tst-nice.c: New file.
++ * posix/Makefile (tests): Add tst-nice.
++
++2003-03-18 Roland McGrath <roland@redhat.com>
++
++ * abilist: New directory of libfoo.abilist files maintained using
++ scripts/merge-abilist.awk and "make update-abi" rules.
++ * Makefile (distribute): Add abilist/*.abilist.
++ * Makerules [$(build-shared) = yes] [$(subdir)] (tests):
++ Depend on check-abi.
++
++ * configure.in: Move $critic_missing check after all AC_CHECK_PROG_VER.
++ * configure: Regenerated.
++
++ * sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64): Fix name.
++
++2003-03-18 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/posix/sysconf.c (__sysconf): Handle _SC_MONOTONIC_CLOCK
++ correctly.
++
++2003-03-18 Steven Munroe <sjmunroe@us.ibm.com>
++
++ * sysdeps/powerpc/powerpc64/memcpy.S: New file.
++
++2003-03-18 Ulrich Drepper <drepper@redhat.com>
++
++ * Versions.def: Add GLIBC_2.3.3 for libpthread.
++
++2003-03-17 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/generic/libc-start.c [!SHARED &&
++ !LIBC_START_MAIN_AUXVEC_ARG]: Compute beginning of auxvec correctly.
++
++2003-03-17 Roland McGrath <roland@redhat.com>
++
++ * include/ctype.h: Revert last change.
++
++2003-03-17 Ulrich Drepper <drepper@redhat.com>
++
++ * argp/tst-argp1.c: Use test-skeleton.c.
++ * locale/tst-C-locale.c: Likewise.
++
++2003-03-17 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/mips/mips64/Implies: Move wordsize-64 to...
++ * sysdeps/mips/mips64/n64/Implies: New file.
++ * sysdeps/mips/mips64/n64/Makefile: New file.
++ * sysdeps/mips/mips64/n64/el/bits/endian.h: New file.
++ * sysdeps/mips/mips64/n32/Implies: New file.
++ * sysdeps/mips/mips64/n32/Makefile: New file.
++ * sysdeps/mips/mips64/n32/el/bits/endian.h: New file.
++ * sysdeps/unix/mips/mips64/n32/sysdep.h: New file.
++ * sysdeps/unix/mips/mips64/n64/sysdep.h: New file.
++ * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: New file.
++ * sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c: New file.
++ * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: New file.
++ * sysdeps/unix/sysv/linux/mips/mips64/ldconfig.h: New file.
++ * sysdeps/unix/sysv/linux/mips/mips64/llseek.c: New file.
++ * sysdeps/unix/sysv/linux/mips/mips64/recv.c: New file.
++ * sysdeps/unix/sysv/linux/mips/mips64/send.c: New file.
++ * sysdeps/unix/sysv/linux/mips/mips64/syscall.S: New file.
++ * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: New file.
++ * sysdeps/unix/sysv/linux/mips/mips64/umount.c: New file.
++ * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: New file.
++
++ * sysdeps/unix/sysv/linux/configure.in (libc_cv_slibdir): Use
++ lib64 for mips64/n64 and lib32 for mips64/n32.
++ (ldd_rewrite_script): Needed for all mips64 configurations.
++ * sysdeps/unix/sysv/linux/configure: Rebuilt.
++ * sysdeps/unix/sysv/linux/mips/mips64/ldd-rewrite.sed: New file.
++ * sysdeps/unix/sysv/linux/mips/mips64/Dist: New file.
++
++ * sysdeps/mips/machine-gmon.h (MCOUNT): Define for N32 and N64 as
++ well.
++
++ * sysdeps/unix/sysv/linux/mips/configure.in: New. Pre-process
++ asm/unistd.h into asm-unistd.h.
++ * sysdeps/unix/sysv/linux/mips/configure: Generated.
++ * sysdeps/unix/sysv/linux/mips/Makefile: Do custom processing
++ of syscall list.
++ * sysdeps/unix/sysv/linux/mips/sys/syscall.h: New file.
++ * sysdeps/unix/sysv/linux/mips/clone.S: Don't include
++ asm/unistd.h.
++
++ * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: New file.
++ * sysdeps/unix/sysv/linux/mips/ptrace.c: New file. Use long
++ long type for registers on n32.
++
++ * sysdeps/mips/bits/wordsize.h: New file, appropriate for all
++ 3 ABIs.
++ * sysdeps/mips/mips64/gmp-mparam.h: New file. Define
++ BITS_PER_LONGINT to __WORDSIZE, to match all 3 ABIs.
++ * sysdeps/mips/setjmp_aux.c (STRINGXP, REGS, PTRS): New macros.
++ (__sigsetjmp_aux): Use them. Adjust for all 3 ABIs.
++ * sysdeps/mips/elf/start.S: Adjust for all 3 ABIs.
++ * sysdeps/unix/mips/brk.S: Likewise.
++ * sysdeps/unix/mips/sysdep.S: Likewise.
++ * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
++ * sysdeps/mips/bits/setjmp.h (__jmp_buf): Likewise.
++ * sysdeps/mips/sys/ucontext.h: Likewise.
++ * sysdeps/unix/sysv/linux/mips/sys/profcs.h: Likewise.
++ * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
++ * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
++ * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
++ * sysdeps/mips/mips64/bsd-setjmp.S: Likewise.
++ * sysdeps/mips/mips64/setjmp.S: Likewise.
++ * sysdeps/mips/mips64/bits/setjmp.h: Deleted, obsolete.
++ * sysdeps/mips/mips64/soft-fp/sfp-machine.h: Use long long for
++ 64-bit types.
++
++2003-03-16 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Define tv here,
++ not at function level.
++ * sysdeps/unix/clock_gettime.c (HANDLE_REALTIME): Likewise.
++
++2003-03-15 Roland McGrath <roland@redhat.com>
++
++ * nis/nss_nis/nis-hosts.c (internal_gethostbyname2_r): int -> size_t
++ * nis/nss_nis/nis-network.c (_nss_nis_getnetbyname_r): Likewise.
++ * nis/nss_nis/nis-alias.c (_nss_nis_getaliasbyname_r): Likewise.
++ * nis/nis_table.c (__create_ib_request): Likewise.
++
++ * posix/fnmatch_loop.c: Add casts for signedness.
++ * nss/nss_files/files-hosts.c: Likewise.
++ * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise.
++ * gmon/gmon.c (write_call_graph): Use u_long for FROM_LEN.
++ * nscd/nscd_getgr_r.c (nscd_getgr_r): Use nscd_ssize_t for CNT.
++
++ * configure.in (libc_cv_visibility_attribute): Use AC_TRY_COMMAND,
++ get errors into the log file.
++ (libc_cv_broken_visibility_attribute): Likewise.
++ (libc_cv_broken_alias_attribute): Likewise.
++ (libc_cv_asm_weak_directive): Likewise.
++ (libc_cv_need_minus_P): Likewise.
++ (libc_cv_dot_text): Likewise.
++ (libc_cv_asm_global_directive): Likewise.
++ (libc_cv_asm_type_prefix): Likewise.
++ * configure: Regenerated.
++
++ * nscd/cache.c (cache_search): Give first arg type `request_type'.
++ * nscd/nscd.h: Update decl.
++
++ * nscd/nscd_getpw_r.c (nscd_getpw_r): Add casts for signedness.
++ * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
++ * elf/dl-close.c (_dl_close): Likewise.
++ * sysdeps/unix/sysv/linux/powerpc/chown.c (__chown): int -> size_t
++ * io/fts.c (fts_build): Likewise.
++ * elf/cache.c (add_to_cache): Likewise.
++ * locale/programs/locarchive.c (show_archive_content): Likewise.
++
++ * posix/fnmatch.c (fnmatch): Tweak __builtin_expect use.
++
++ * include/ctype.h (__ctype_b_loc): Tweak type punning to make gcc 3.3
++ happy.
++ (__ctype_toupper_loc, __ctype_tolower_loc): Likewise.
++
++2003-03-15 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/ia64/system.c: Use the generic Linux
++ code for most parts.
++
++2003-03-15 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/unix/sysv/linux/i386/system.c: Moved to ...
++ * sysdeps/unix/sysv/linux/system.c: ... here.
++ (FORK): Don't #define if already #define'd.
++ * sysdeps/unix/sysv/linux/s390/system.c: File removed.
++ * sysdeps/unix/sysv/linux/kernel-features.h [__powerpc__]:
++ (__ASSUME_CLONE_THREAD_FLAGS): Define for kernel >= 2.5.64.
++
++ * dlfcn/tst-dlinfo.c: New file.
++ * dlfcn/Makefile (tests): Add tst-dlinfo.
++ ($(objpfx)tst-dlinfo): New target.
++
++ * dlfcn/dlinfo.c: New file.
++ * dlfcn/Makefile (libdl-routines): Add it.
++ * dlfcn/Versions (libdl: GLIBC_2.3.3): Add dlinfo.
++ * dlfcn/dlfcn.h [__USE_GNU]: Declare dlinfo.
++ [__USE_GNU] (RTLD_DI_*): New enum constants.
++ [__USE_GNU] (Dl_serpath, Dl_serinfo): New types.
++ * elf/dl-load.c (cache_rpath): New inline function.
++ (_dl_map_object): Use it.
++ (_dl_rtld_di_serinfo): New function.
++ * sysdeps/generic/ldsodefs.h: Declare it.
++ * elf/Versions (ld: GLIBC_PRIVATE): Add it.
++
++ * sysdeps/powerpc/elf/libc-start.c (AUX_VECTOR_INIT): Define it.
++ (LIBC_START_MAIN, LIBC_START_MAIN_AUXVEC_ARG, MAIN_AUXVEC_ARG)
++ (INIT_MAIN_ARGS): Define, and #include <sysdeps/generic/libc-start.c>.
++ (__libc_start_main): Just call the generic one for most of the work.
++
++ * sysdeps/generic/libc-start.c [LIBC_START_MAIN]: If defined, define a
++ static function by that name instead of BP_SYM (__libc_start_main).
++ [LIBC_START_MAIN_AUXVEC_ARG]: Take AUXVEC as argument.
++ [MAIN_AUXVEC_ARG]: Pass 4th argument to MAIN.
++ [INIT_MAIN_ARGS]: Give INIT the same args as MAIN.
++
++ * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [DL_PLATFORM_AUXV]:
++ Use this macro for extra AT_* cases.
++ * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c (DL_PLATFORM_AUXV):
++ New macro, guts from ...
++ (__aux_init_cache): ... here, function removed.
++ (DL_PLATFORM_INIT): Don't define this.
++
++ * sysdeps/powerpc/powerpc32/memset.S: Put __cache_line_size in bss.
++ * sysdeps/powerpc/powerpc64/memset.S: Likewise.
++
++ * Versions.def (libthread_db): Add GLIBC_2.3.3 set.
++
++2003-03-14 Roland McGrath <roland@redhat.com>
++
++ * dlfcn/dlerror.c (dlerror): If objname is "", don't put ": " after it.
++
++2003-03-14 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Fix a typo.
++
++ * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Include
++ sysdeps/posix/pause.c instead of sysdeps/unix/common/pause.c.
++
++2003-03-14 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/mips/fpu/bits/mathdef.h: New.
++ (__NO_LONG_DOUBLE_MATH): Define for o32.
++
++ * sysdeps/mips/sys/asm.h: Formatting changes.
++ (PTR, PTRSIZE, PTRLOG): Adjust for all 3 ABIs.
++ (CPADD): Define for all of them.
++ (SETUP_GP, SETUP_GPX, SETUP_GPX_L, SAVE_GP, SETUP_GP64,
++ SETUP_GPX64, SETUP_GPX64_L, RESTORE_GP64, USE_ALT_CP,
++ NARGSAVE): Define per ABI spec.
++ (END): Don't redefine.
++ (LONG_SLL, LONG_SLLV, LONG_SRL, LONG_SRLV, LONG_SRA,
++ LONG_SRAV): Remove duplicate definitions.
++ (PTR_ADD, PTR_ADDI, PTR_ADDU, PTR_ADDIU, PTR_SUB, PTR_SUBI,
++ PTR_SUBU, PTR_SUBIU, PTR_L, PTR_S, PTR_SLL, PTR_SLLV, PTR_SRL,
++ PTR_SRLV, PTR_SRA, PTR_SRAV, PTR_SCALESHIFT): Define for n32.
++ (PTR_LA): Define for all 3 ABIs.
++
++ * sysdeps/mips/dl-machine.h: Include sys/asm.h.
++ (elf_machine_matches_host): Prevent linking of o32 and n32
++ together.
++ (elf_machine_dynamic): Document assumption on $gp.
++ (STRINGXP, STRINGXV, STRINGV_): New macros.
++ (elf_machine_load_address): Use them to stringize PTR_LA and
++ PTR_SUBU.
++ (ELF_DL_FRAME_SIZE, ELF_DL_SAVE_ARG_REGS,
++ ELF_DL_RESTORE_ARG_REGS, IFABIO32): New macros used in...
++ (_dl_runtime_resolve): Adjust it for all 3 ABIs.
++ (__dl_runtime_resolve): Cast the symtab initializer to the
++ right type.
++ (RTLD_START): Use it. Adjust it for all 3 ABIs.
++ (elf_machine_rel): Mark as always_inline in RTLD_BOOTSTRAP.
++ Handle 64-bit R_MIPS_REL composite relocation and accept
++ R_MIPS_64 relocations to shift addend size to 64 bits.
++ Document assumption regarding local GOT entries. Document
++ backward-compatibility departing from the ABI behavior in
++ applying relocations that reference section symbols, no longer
++ used. Support relocations to mis-aligned offsets.
++ * sysdeps/mips/mips64/dl-machine.h: Deleted, obsolete.
++
++ * sysdeps/unix/sysv/linux/mips/readelflib.c: New file.
++
++ * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h
++ (_KERNEL_NSIG_BPW): Define in terms of _MIPS_SZLONG.
++ * sysdeps/unix/sysv/linux/mips/sigaction.c: Define restore and
++ restore_rt functions. Use them.
++
++ * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Don't
++ .set mips2 on new abis.
++
++2003-03-13 Ulrich Drepper <drepper@redhat.com>
++
++ * posix/getconf.c: Recognize POSIX2_SYMLINKS.
++ * sysdeps/generic/bits/confname.h: Define _PC_2_SYMLINKS.
++ * sysdeps/posix/fpathconf.c: Handle _PC_2_SYMLINKS.
++ * sysdeps/posix/pathconf.c: Likewise.
++ * sysdeps/unix/sysv/linux/fpathconf.c: Likewise.
++ * sysdeps/unix/sysv/linux/pathconf.c: Likewise.
++ * sysdeps/unix/sysv/linux/pathconf.h: Define statfs_symlinks.
++
++ * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define some more magic
++ words.
++
++2003-03-14 Alexandre Oliva <aoliva@redhat.com>
++
++ * include/gmp.h: Include/gmp-mparam.h.
++ * stdlib/strtod.c: Include gmp-mparam.h before gmp.h and
++ gmp-impl.h.
++
++ * elf/dl-conflict.c: Don't compile _dl_resolve_conflicts if
++ ELF_MACHINE_NO_RELA is set.
++ * elf/rtld.c (dl_main): No prelink support for REL-only.
++
++ * sysdeps/generic/ldconfig.h (FLAG_MIPS64_LIBN32,
++ FLAG_MIPS64_LIBN64): Define.
++ * elf/cache.c (print_entry): Handle mips64 n32 and n64.
++
++ * sysdeps/mips/memcpy.S: Map t0-3 to a4-7 on new abis.
++ * sysdeps/mips/memset.S: Likewise.
++ * sysdeps/mips/sys/regdef.h: Alias a4-7 or t0-3 to $8-11
++ depending on the ABI.
++
++ * sysdeps/mips/atomicity.h (exchange_and_add, atomic_add):
++ Don't .set mips2 on new abi.
++ (compare_and_swap): Likewise. Support 64-bit longs on n64.
++
++ * stdlib/fpioconst.h: Include gmp.h with angle brackets.
++
++2003-03-13 Roland McGrath <roland@redhat.com>
++
++ * elf/dl-load.c (_dl_map_object_from_fd): Bail if no PT_LOAD phdrs
++ found. Reported by Alexandre Oliva <aoliva@redhat.com>.
++
++2003-03-13 Alexandre Oliva <aoliva@redhat.com>
++
++ * stdio-common/_itoa.c (_itoa_base_table): Make 64-bit
++ literals long long.
++ * stdlib/fpioconst.c: Likewise.
++ * stdlib/strtod.c: Likewise.
++
++ * sysdeps/mips/add_n.S: Use L macro for local labels.
++ * sysdeps/mips/addmul_1.S: Likewise.
++ * sysdeps/mips/lshift.S: Likewise.
++ * sysdeps/mips/memcpy.S: Likewise.
++ * sysdeps/mips/memset.S: Likewise.
++ * sysdeps/mips/mul_1.S: Likewise.
++ * sysdeps/mips/rshift.S: Likewise.
++ * sysdeps/mips/sub_n.S: Likewise.
++ * sysdeps/mips/submul_1.S: Likewise.
++ * sysdeps/mips/mips64/add_n.S: Likewise.
++ * sysdeps/mips/mips64/addmul_1.S: Likewise.
++ * sysdeps/mips/mips64/lshift.S: Likewise.
++ * sysdeps/mips/mips64/mul_1.S: Likewise.
++ * sysdeps/mips/mips64/rshift.S: Likewise.
++ * sysdeps/mips/mips64/sub_n.S: Likewise.
++ * sysdeps/mips/mips64/submul_1.S: Likewise.
++ * sysdeps/unix/mips/sysdep.h: Define L() according to ABI
++ conventions. Define END as in sys/asm.h.
++ * sysdeps/unix/mips/sysdep.S: Likewise.
++ * sysdeps/unix/mips/wait.S: Likewise.
++ * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
++
++ * sysdeps/ieee754/dbl-64/dbl2mpn.c (__mpn_extract_double):
++ Cast shifted values that may be too narrow to mp_limb_t.
++ * sysdeps/ieee754/dbl-64/mpn2dbl.c (__mpn_construct_double):
++ Likewise.
++ * sysdeps/ieee754/flt-32/mpn2flt.c (__mpn_construct_float):
++ Likewise.
++ * sysdeps/ieee754/ldbl-128/ldbl2mpn.c
++ (__mpn_extract_long_double): Likewise.
++ * sysdeps/ieee754/ldbl-128/mpn2ldbl.c
++ (__mpn_construct_long_double): Likewise.
++ * sysdeps/ieee754/ldbl-96/ldbl2mpn.c
++ (__mpn_extract_long_double): Likewise.
++ * sysdeps/ieee754/ldbl-96/mpn2ldbl.c
++ (__mpn_construct_long_double): Likewise.
++
++2003-03-13 Roland McGrath <roland@redhat.com>
++
++ * elf/Makefile ($(objpfx)librtld.mk): Tweak regexp so that one-line
++ entries in the map file match too.
++
++2003-03-13 Guido Guenther <agx@sigxcpu.org>
++
++ * sysdeps/unix/sysv/linux/mips/clone.S: introduce and use local
++ label .Lthread_start since current binutils don't allow branches
++ to globally visible symbols.
++
++2003-03-13 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/ia64/sysdep.h (BREAK_INSN_1, BREAK_INSN,
++ ASM_OUTARGS_0, ASM_OUTARGS_1, ASM_OUTARGS_2, ASM_OUTARGS_3,
++ ASM_OUTARGS_4, ASM_OUTARGS_5, ASM_OUTARGS_6): Define.
++ (INTERNAL_SYSCALL, INLINE_SYSCALL): Use it. Make syscall arguments
++ clobbered by the syscall.
++ (ASM_ARGS_1, ASM_ARGS_2, ASM_ARGS_3, ASM_ARGS_4, ASM_ARGS_5,
++ ASM_ARGS_6): Change constraints from r to index of corresponding
++ output register.
++ * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Swap
++ ptid and ctid to match kernel.
++ * sysdeps/unix/sysv/linux/ia64/system.c (FORK): Likewise.
++
++2003-03-12 Steven Munroe <sjmunroe@us.ibm.com>
++
++ * sysdeps/powerpc/powerpc64/elf/configure.in: Remove
++ AC_DEFINE(PI_STATIC_AND_HIDDEN). Not supported for PowerPC64.
++ * sysdeps/powerpc/powerpc64/elf/configure: Regenerated.
++
++2003-03-11 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela):
++ Check SYM_MAP rather than SYM as definedness check.
++ Handle R_PPC64_ADDR32, R_PPC64_ADDR30, and R_PPC64_REL64 relocs.
++ Don't handle R_PPC64_REL24 reloc.
++ Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
++
++ * sysdeps/powerpc/powerpc64/dl-machine.h
++ [USE_TLS] (elf_machine_type_class): Match all the TLS relocs in a
++ block, so we cover all the TPREL16* flavors without 6 ||s.
++ [USE_TLS] (elf_machine_tprel): New function.
++ (elf_machine_rela) [USE_TLS]: Use elf_machine_tprel for TPREL64 reloc,
++ and handle TPREL16 relocs too. Return rather than break for DTPREL64.
++ Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
++
++2003-03-11 Ralf Baechle <ralf@linux-mips.org>
++
++ * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start): Use jal
++ instead of jalr to invoke subroutine so restoring the $gp register
++ will work properly.
++
++2003-03-11 Martin Schwidefsky <schwidefsky@de.ibm.com>
++
++ * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (__NR_pread64): Define
++ to __NR_pread if not defined.
++ (__NR_pwrite64): Define to __NR_pwrite if not defined.
++
++2003-03-11 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/ia64/system.c: New file.
++ * sysdeps/unix/sysv/linux/kernel-features.h
++ (__ASSUME_CLONE_THREAD_FLAGS): Define for IA-64 and s390* with
++ kernel >= 2.5.64.
++
++2003-03-11 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): If CNT == 1,
++ allocate space even for the trailing '/'.
++ Reported by John Reiser <jreiser@BitWagon.com>.
++
++ * sysdeps/unix/sysv/linux/ia64/sysdep.h (LOAD_ARGS_6, ASM_ARGS_6,
++ ASM_CLOBBERS_6): Define.
++ (ASM_CLOBBERS_5): Use ASM_CLOBBERS_6.
++ * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Reorder arguments
++ to match IA-32 order.
++ * sysdeps/unix/sysv/linux/i386/clone.S: Fix comment.
++
++2003-03-10 Steven Munroe <sjmunroe@us.ibm.com>
++
++ * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Don't clobber R7.
++ Copy extra params for NPTL to registers used in clone syscall.
++
++2003-03-10 Martin Schwidefsky <schwidefsky@de.ibm.com>
++
++ * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Correct system
++ call names for pread and pwrite.
++
++2003-03-10 Roland McGrath <roland@redhat.com>
++
++ * dlfcn/Makefile (libdl-routines): Add dladdr1.
++ * dlfcn/dladdr1.c: New file.
++ * dlfcn/dlfcn.h [__USE_GNU]: Declare dladdr1.
++ [__USE_GNU] (RTLD_DL_SYMENT, RTLD_DL_LINKMAP): New enum constants.
++ * elf/dl-addr.c (_dl_addr): Take new args, a struct link_map ** and
++ a const ElfNN_Sym ** to fill in.
++ * include/dlfcn.h: Update decl. Include <link.h>.
++ * dlfcn/dladdr.c (dladdr): Update caller.
++ * malloc/mtrace.c (tr_where): Likewise.
++ * sysdeps/generic/elf/backtracesyms.c: Likewise.
++ * sysdeps/generic/elf/backtracesymsfd.c: Likewise.
++ * dlfcn/Versions (libdl: GLIBC_2.3.3): New set, add dladdr1.
++ * Versions.def (libdl): Define GLIBC_2.3.3 set.
++
++ * sysdeps/unix/make-syscalls.sh: Generate $(compile-syscall) for
++ assembler command.
++ * sysdeps/unix/Makefile (compile-syscall): New variable.
++ Pass -g0 to compiler for assembling syscall stubs from stdin.
++
++ * sysdeps/i386/sysdep.h [HAVE_CPP_ASM_DEBUGINFO]
++ (STABS_CURRENT_FILE, STABS_CURRENT_FILE1, STABS_FUN, STABS_FUN_END):
++ Define these to do nothing.
++
++ * configure.in: New check for -g on .S files.
++ * configure: Regenerated.
++ * config.make.in (have-cpp-asm-debuginfo): New variable.
++ * config.h.in (HAVE_CPP_ASM_DEBUGINFO): New #undef.
++ * Makeconfig (ASFLAGS): New variable, if undefined and
++ $(have-cpp-asm-debuginfo), take options matching -g% from $(CFLAGS).
++ * Makerules (compile.S, COMPILE.S): Use $(ASFLAGS).
++
++2003-03-09 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Take 3 new args
++ used by NPTL on new kernels. From Paul Mackerras <paulus@samba.org>.
++
++2003-03-09 Ulrich Drepper <drepper@redhat.com>
++
++ * po/fi.po: Update from translation team.
++ * po/ca.po: Likewise.
++ * po/da.po: Likewise.
++
++2003-03-08 Ulrich Drepper <drepper@redhat.com>
++
++ * rt/tst-aio7.c (do_test): Change BYTES into a #define.
++
++2003-03-07 Ulrich Drepper <drepper@redhat.com>
++
++ * rt/tst-aio7.c (do_test): Give BUFF permanent extent, too.
++
++ * sysdeps/powerpc/fpu/w_sqrt.c: Fix comment.
++
++2003-03-07 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/s390/s390-32/sysdep.h (L): Use .Lfoo instead of foo.
++ * sysdeps/s390/s390-64/sysdep.h (L): Likewise.
++
++2003-03-04 Guido Guenther <agx@sigxcpu.org>
++
++ * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove unneeded
++ stubs, we have INLINE_SYSCALL.
++ * sysdeps/unix/sysv/linux/mips/bits/mman.h: Define MAP_POPULATE,
++ MAP_NONBLOCK.
++
++2003-03-06 Roland McGrath <roland@redhat.com>
++
++ * rt/tst-aio7.c (do_test): Revert last change. Instead, give CB1
++ permanent extent and add a comment about testing its implicit teardown.
++
++2003-03-06 Martin Schwidefsky <schwidefsky@de.ibm.com>
++
++ * rt/tst-aio7.c (do_test): Cancel i/o on CB1 before it's out of scope.
++
++2003-03-05 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Fix
++ reversed __builtin_expect expectation.
++
++2003-03-05 Roland McGrath <roland@redhat.com>
++
++ * stdio-common/sscanf.c: Use prototype defn with ... syntax.
++ * libio/swscanf.c: Likewise.
++ * libio/swprintf.c: Likewise.
++
++2003-03-04 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/powerpc/powerpc64/dl-machine.h: Include <dl-tls.h>.
++ (elf_machine_rela): Always use RESOLVE_MAP, needed for
++ R_PPC64_JMP_SLOT as well as TLS cases.
++ (BIT_INSERT): Move parenthesis where it ought to have been.
++ Reported by Steven Munroe <sjmunroe@us.ibm.com>.
++
++ * posix/confstr.c (confstr): Correct STRING_LEN values for
++ _CS_GNU_LIBC_VERSION and _CS_GNU_LIBPTHREAD_VERSION, add missing
++ break. Reported by Alexandre Julliard <julliard@winehq.com>.
++
++2003-03-04 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/ia64/fpu/libm-test-ulps: Regenerated.
++
++2003-03-04 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/x86_64/clone.S: Add support for the new
++ clone parameters.
++
++ * po/sv.po: Update from translation team.
++
++2003-03-04 Andreas Jaeger <aj@suse.de>
++ Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Fix comments.
++
++2003-03-03 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/generic/dl-sysdep.h: Add double include protection.
++
++ * po/tr.po: Update from translation team.
++
++ * elf/dl-load.c (_dl_map_object_from_fd): Determine whether there
++ are holes between the segments. Only call mprotect to set
++ proection to PROT_NONE if there are some.
++
++ * elf/dl-load.c (struct filebuf): Actually use FILEBUF_SIZE.
++ Update comment.
++
++ * include/sched.h (__clone2): Use ... instead of adding all the
++ new parameters.
++
++2003-03-03 Roland McGrath <roland@redhat.com>
++
++ * elf/dl-load.c (struct filebuf): Fix typo in last change.
++
++ * sysdeps/powerpc/powerpc32/elf/configure.in: Don't define
++ PI_STATIC_AND_HIDDEN.
++
++2003-03-03 Ian Wienand <ianw@gelato.unsw.edu.au>
++
++ * sysdeps/unix/sysv/linux/ia64/clone2.S: Update to take extra clone
++ flags.
++ * include/sched.h: Update clone2 prototype.
++
++2003-03-03 Andreas Jaeger <aj@suse.de>
++
++ * math/tgmath.h (__TGMATH_UNARY_REAL_RET_ONLY): New definition.
++ (llrint): Use it to correct return type.
++ (lrint): Likewise.
++ (lround): Likewise.
++ (llround): Likewise.
++
++2003-03-03 Ulrich Drepper <drepper@redhat.com>
++
++ * elf/dl-load.c (struct filebuf): For 64-bit platforms use 640
++ byte filebuf size.
++
++ * libio/fileops.c (_IO_new_file_fopen): Close stillborn descriptor
++ if ccs parameter isn't valid. Reported by Andreas Schwab.
++
++2003-03-03 Martin Schwidefsky <schwidefsky@de.ibm.com>
++
++ * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Add support
++ for system call numbers > 255.
++ * sysdeps/unix/sysv/linux/s390/s390-32/syscall.h (DO_CALL,
++ INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
++ INTERNAL_SYSCALL): Likewise.
++ * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
++ * sysdeps/unix/sysv/linux/s390/s390-64/syscall.h (DO_CALL,
++ INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
++ INTERNAL_SYSCALL): Likewise.
++
++2003-03-03 Martin Schwidefsky <schwidefsky@de.ibm.com>
++
++ * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Don't free the dtv
++ array if it is the initial dtv.
++
++2003-03-03 Ulrich Drepper <drepper@redhat.com>
++
++ * po/es.po: Update from translation team.
++ * po/fr.po: Likewise.
++ * po/gl.po: Likewise.
++ * po/sk.po: Likewise.
++ * po/sv.po: Likewise.
++
++ * sysdeps/unix/sysv/linux/syscalls.list: Add remap_file_pages entry.
++ * misc/sys/mman.h: Add prototype for remap_file_pages.
++ * sysdeps/generic/remap_file_pages.c: New file.
++ * misc/Makefile (routines): Add remap_file_pages.
++ * misc/Versions [libc:GLIBC_2.3.3]: Add remap_file_pages.
++
++ * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Define MAP_POPULATE
++ and MAP_NONBLOCK.
++ * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
++ * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise
++ * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
++ * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
++ * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
++ * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
++ * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Likewise.
++ * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
++
++2003-03-03 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Revert last change.
++ * sysdeps/ia64/dl-machine.h: Likewise.
++ * sysdeps/ia64/dl-symaddr.c (_dl_symbol_address): Remove const from
++ argument type.
++ * sysdeps/ia64/dl-lookupcfg.h: Update decl.
++
++ * sysdeps/wordsize-64/strtol_l.c (strtoll_l): Define as weak alias.
++ * sysdeps/wordsize-64/strtoul_l.c (strtoull_l): Define as weak alias.
++ * locale/Versions (libc: GLIBC_2.3): Move those to ...
++ * sysdeps/wordsize-32/Versions (libc: GLIBC_2.3): ... here, new file.
++ * sysdeps/wordsize-64/Versions (libc: GLIBC_2.3.3) Likewise.
++ * Versions.def (libc): Add GLIBC_2.3.3 set.
++
++ * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Add const to MAP arg.
++ * sysdeps/ia64/dl-machine.h: Update decl.
++
++2003-03-03 Andreas Jaeger <aj@suse.de>
++
++ * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Add missing brace.
++
++2003-03-02 Roland McGrath <roland@redhat.com>
++
++ * scripts/abilist.awk: Reject data items with apparent 0 size.
++
++ * scripts/merge-abilist.awk: Restore hack to elide pattern foo.*/bar
++ after foo.* as if it were a duplicate.
++
++ * sysdeps/unix/sysv/linux/ia64/brk.S: Add .type and .size for __curbrk.
++
++2003-03-02 Ulrich Drepper <drepper@redhat.com>
++
++ * elf/dl-load.c (struct filebuf): Reduce buf array to 512 bytes.
++
++ * sysdeps/generic/bits/time.h: Define CLOCK_MONOTONIC.
++ * sysdeps/posix/clock_getres.c: Define code for CLOCK_REALTIME only
++ if not already defined. Use SYSDEP_GETRES to allow other files to
++ provide alternative implementations.
++ * sysdeps/unix/sysv/linux/clock_getres.c: New file
++ * sysdeps/unix/clock_gettime.c: Define code for CLOCK_REALTIME only
++ if not already defined. Use SYSDEP_GETTIME to allow other files to
++ provide alternative implementations.
++ * sysdeps/unix/sysv/linux/clock_gettime.c: New file.
++ * sysdeps/unix/clock_settime.c: Define code for CLOCK_REALTIME only
++ if not already defined. Use SYSDEP_GETTIME to allow other files to
++ provide alternative implementations.
++ * sysdeps/unix/sysv/linux/clock_settime.c: New file.
++ * sysdeps/unix/clock_nanosleep.c: Use SYSDEP_NANOSLEEP to allow
++ other files to provide alternative implementations. Rearrange
++ tests for invalid parameters.
++ * sysdeps/unix/sysv/linux/clock_nanosleep.c: New file.
++ * sysdeps/unix/sysv/linux/sysconf.c: New file.
++ * sysdeps/unix/sysv/linux/kernel-features.h: Define
++ __ASSUME_POSIX_TIMERS for Linux 2.5.63 and up.
++ * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define
++ _POSIX_MONOTONIC_CLOCK.
++
++2003-03-02 Roland McGrath <roland@redhat.com>
++
++ * scripts/merge-abilist.awk: More checks for bogus input.
++ Uniquify duplicate config names.
++
++ * scripts/abilist.awk: Don't distinguish weak symbols in normal output.
++
++ * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow): Renamed
++ from dl_reloc_overflow, make global.
++ (__process_machine_rela): Update callers.
++ * sysdeps/powerpc/powerpc32/dl-machine.h: Declare _dl_reloc_overflow.
++ Add attribute_hidden to __process_machine_rela decl.
++ (elf_machine_type_class, elf_machine_rela): Handle 16-bit TLS relocs.
++
++ * sysdeps/generic/libc-start.c (__libc_start_main): Don't assign const
++ variable.
++
++ * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_fixup_plt):
++ Don't use weak_extern for dl_rtld_map. Instead check only if [SHARED].
++ (elf_machine_rela): Clean up.
++
++ * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Clean up.
++
++ PowerPC TLS support contributed by Paul Mackerras <paulus@samba.org>.
++ * sysdeps/powerpc/powerpc32/elf/configure.in: New file.
++ * sysdeps/powerpc/powerpc32/elf/configure: New generated file.
++ * elf/tls-macros.h [__powerpc__ && !__powerpc64__]
++ (TLS_LE, TLS_IE, TLS_LD, TLS_GD): Define them.
++ * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Support
++ new relocs for TLS.
++
++ * sysdeps/powerpc/dl-tls.h (TLS_TP_OFFSET, TLS_DTV_OFFSET): Move these
++ macros out of [SHARED].
++ (TLS_TPREL_VALUE, TLS_DTPREL_VALUE): New macros.
++
++ * elf/elf.h: Define R_PPC_* relocs for TLS support.
++ Clean up R_PPC64_* macro definition comments.
++
++ * configure.in: In "running configure fragment for" message,
++ omit $srcdir from the name if we prepended it.
++ * configure: Regenerated.
++
++ * elf/dl-reloc.c (allocate_static_tls): Fix calculations.
++ From Jakub Jelinek <jakub@redhat.com>.
++
++ * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Revert last change,
++ which duplicated the O_DIRECT defn.
++
++2003-03-01 GOTO Masanori <gotom@debian.or.jp>
++
++ * stdlib/stdlib.h: Add missing __USE_BSD enclosure for BSD derived
++ random functions.
++
++2003-03-01 Andreas Schwab <schwab@suse.de>
++
++ * resolv/Makefile (tests): Don't depend on
++ $(objpfx)mtrace-tst-leaks when cross compiling.
++
++ * sysdeps/m68k/dl-machine.h (_dl_start_user): Access
++ __libc_stack_end through GOT since it is a global symbol.
++
+ 2003-03-01 GOTO Masanori <gotom@debian.or.jp>
+
+ * argp/argp.h: Fix a typo.
+@@ -5561,6 +11477,16 @@
+ (common-mostlyclean, common-clean): Clean up rtld-* files.
+ * sysdeps/unix/make-syscalls.sh: Add rtld-*.os target name to rules.
+
++2003-05-20 Jakub Jelinek <jakub@redhat.com>
++
++ * elf/dynamic-link.h (elf_get_dynamic_info): Add temp argument.
++ If temp != NULL, copy dynamic entries which need relocation to temp
++ array before relocating.
++ (DL_RO_DYN_TEMP_CNT): Define.
++ * elf/dl-load.c (_dl_map_object_from_fd): Adjust caller.
++ * elf/rtld.c (_dl_start): Likewise.
++ (dl_main): Likewise. Add dyn_temp static variable.
++
+ 2002-10-11 Roland McGrath <roland@redhat.com>
+
+ * sysdeps/generic/dl-tls.c (__tls_get_addr): After freeing block in
+--- glibc-2.3.2/Makeconfig 2003-01-06 00:31:36.000000000 -0500
++++ glibc-2.3.2/Makeconfig 2003-09-19 22:37:01.000000000 -0400
+@@ -83,6 +83,12 @@
+ # Get the values defined by options to `configure'.
+ include $(common-objpfx)config.make
+
++# What flags to give to sources which call user provided callbacks
++uses-callbacks = $(exceptions)
++
++# What flags to give to tests which test stack alignment
++stack-align-test-flags =
++
+ # We have a special subdir for each binary format.
+ # For now, only ELF is fully supported.
+ ifeq ($(elf),yes)
+@@ -505,7 +511,7 @@
+ link-extra-libs-bounded = $(foreach lib,$(LDLIBS-$(@F:%-bp=%)),$(common-objpfx)$(lib)_b.a)
+
+ ifndef gnulib
+-gnulib := -lgcc
++gnulib := -lgcc -lgcc_eh
+ endif
+ ifeq ($(elf),yes)
+ +preinit = $(addprefix $(csu-objpfx),crti.o)
+@@ -621,7 +627,7 @@
+ +includes = -I$(..)include -I. \
+ $(patsubst %/,-I%,$(objpfx)) $(patsubst %/,-I%,$(..)) \
+ $(libio-include) $(includes) \
+- $(+sysdep-includes) $(last-includes) $(sysincludes)
++ $(+sysdep-includes) $(sysincludes)
+
+ # Since libio has several internal header files, we use a -I instead
+ # of many little headers in the include directory.
+@@ -669,6 +675,8 @@
+ libtype.os := lib%_pic.a
+ # This can be changed by a sysdep makefile
+ pic-ccflag = -fPIC
++# This one should always stay like this unless there is a very good reason.
++PIC-ccflag = -fPIC
+ endif
+ ifeq (yes,$(build-profile))
+ # Under --enable-profile, we will build a static library of profiled objects.
+@@ -711,11 +719,20 @@
+ # Must build the routines as PIC, though, because they can end up in (users')
+ # shared objects. We don't want to use CFLAGS-os because users may, for
+ # example, make that processor-specific.
+-CFLAGS-.oS = $(CFLAGS-.o) $(pic-ccflag)
++CFLAGS-.oS = $(CFLAGS-.o) $(PIC-ccflag)
+ CPPFLAGS-.oS = $(CPPFLAGS-.o) -DPIC -DLIBC_NONSHARED=1
+ libtype.oS = lib%_nonshared.a
+ endif
+
++# The assembler can generate debug information too.
++ifndef ASFLAGS
++ifeq ($(have-cpp-asm-debuginfo),yes)
++ASFLAGS := $(filter -g%,$(CFLAGS))
++else
++ASFLAGS :=
++endif
++endif
++ASFLAGS += $(ASFLAGS-config)
+
+ +gnu-stabs = $(shell echo>&2 '*** BARF ON ME')
+
+@@ -921,11 +938,11 @@
+ all-Depend-files = $(wildcard $(..)*/Depend)
+ $(common-objpfx)sysd-sorted: $(..)scripts/gen-sorted.awk $(all-Depend-files) \
+ $(common-objpfx)sysd-dirs $(..)Makeconfig
+- { { dirs='$(patsubst $(..)%/Depend,$(..)%,$(filter %/Depend,$^))';\
++ { { dirs='$(patsubst $(..)%/Depend,%,$(filter %/Depend,$^))'; \
+ for d in $$dirs; do \
+ while read on; do \
+ echo "depend $$d $$on"; \
+- done < $$d/Depend; \
++ done < $(..)$$d/Depend; \
+ done; \
+ for f in $(all-subdirs); do \
+ echo $$f; \
+--- glibc-2.3.2/Makefile 2003-02-21 01:22:51.000000000 -0500
++++ glibc-2.3.2/Makefile 2003-09-19 22:37:01.000000000 -0400
+@@ -228,6 +228,18 @@
+ tests-clean:
+ @$(MAKE) subdir_testclean no_deps=t
+
++tests: $(objpfx)c++-types-check.out
++ifneq ($(CXX),no)
++ifneq (,$(wildcard scripts/data/c++-types-$(base-machine)-$(config-os).data))
++$(objpfx)c++-types-check.out: scripts/data/c++-types-$(base-machine)-$(config-os).data
++ scripts/check-c++-types.sh $^ $(CXX) $(filter-out -std=gnu99,$(CFLAGS)) $(CPPFLAGS) > $@
++else
++$(objpfx)c++-types-check.out:
++ @echo 'WARNING C++ tests not run; create a c++-types-XXX file'
++ @echo "not run" > $@
++endif
++endif
++
+ # The realclean target is just like distclean for the parent, but we want
+ # the subdirs to know the difference in case they care.
+ realclean distclean: parent-clean
+@@ -274,6 +286,7 @@
+ include/shlib-compat.h include/pthread.h Versions.def \
+ cppflags-iterator.mk tls.make.c \
+ include/stubs-prologue.h include/gnu/stubs.h \
++ include/atomic.h bits/atomic.h \
+ INTERFACE CONFORMANCE NAMESPACE LICENSES \
+ $(addprefix scripts/, \
+ rellns-sh config.sub config.guess \
+@@ -282,7 +295,11 @@
+ gen-sorted.awk abi-versions.awk abilist.awk \
+ firstversions.awk documented.sh cpp \
+ output-format.sed gen-as-const.awk \
+- merge-abilist.awk extract-abilist.awk)
++ merge-abilist.awk extract-abilist.awk \
++ rpm2dynsym.sh \
++ ) \
++ $(wildcard scripts/data/*.data) \
++ $(wildcard abilist/*.abilist)
+
+ distribute := $(strip $(distribute))
+ generated := $(generated) stubs.h
+@@ -318,12 +335,6 @@
+ iconvdata/% localedata/% po/% manual/%:
+ $(MAKE) $(PARALLELMFLAGS) -C $(@D) $(@F)
+
+-# This is a special goal for people making binary distributions. Normally
+-# everybody uses the DES based crypt library but for the distribution we
+-# need the only-MD5 based one as well.
+-md5-crypt/libmd5crypt:
+- $(MAKE) $(PARALLELMFLAGS) -C $(@D) $(@F)
+-
+ # glibc 2.0 contains some header files which aren't used with glibc 2.1
+ # anymore.
+ # These rules should remove those headers
+--- glibc-2.3.2/Makefile.in 2000-11-15 18:03:08.000000000 -0500
++++ glibc-2.3.2/Makefile.in 2002-11-16 08:53:55.000000000 -0500
+@@ -1,4 +1,4 @@
+-# Generated from $Id: Makefile.in,v 1.7 2000/11/15 23:03:08 drepper Exp $.
++# Generated from $Id: Makefile.in,v 1.6 1998/02/26 14:51:55 drepper Exp $.
+
+ srcdir = @srcdir@
+
+--- glibc-2.3.2/Makerules 2003-02-22 18:23:31.000000000 -0500
++++ glibc-2.3.2/Makerules 2003-09-19 22:37:01.000000000 -0400
+@@ -125,29 +125,9 @@
+ endif # avoid-generated
+ endif # $(versioning) = yes
+
+-
+-# Generating headers for assembly constants.
+-# We need this defined early to get into before-compile before
+-# it's used in sysd-rules, below.
+-$(common-objpfx)%.h $(common-objpfx)%.h.d: $(..)scripts/gen-as-const.awk \
+- %.sym $(before-compile)
+- $(AWK) -f $< $(filter %.sym,$^) \
+- | $(CC) -S -o - $(CFLAGS) $(CPPFLAGS) -x c - \
+- -MD -MF $(@:.h=.h.d)T -MT '$(@:.h=.h.d) $(@:.h.d=.h)' \
+- | sed -n 's/^.*@@@name@@@\([^@]*\)@@@value@@@[^0-9Xxa-fA-F-]*\([0-9Xxa-fA-F-][0-9Xxa-fA-F-]*\).*@@@end@@@.*$$/#define \1 \2/p' > $(@:.h.d=.h)T
+- sed $(sed-remove-objpfx) $(sed-remove-dotdot) \
+- $(@:.h=.h.d)T > $(@:.h=.h.d)T2
+- rm -f $(@:.h=.h.d)T
+- mv -f $(@:.h=.h.d)T2 $(@:.h=.h.d)
+- mv -f $(@:.h.d=.h)T $(@:.h.d=.h)
+-vpath %.sym $(sysdirs)
+-before-compile += $(gen-as-const-headers:%.sym=$(common-objpfx)%.h)
+-
+-
+-# When we have no deps pass doing it, then make sure the subdirectory
+-# for object files gets created.
+-ifdef no_deps
++# Make sure the subdirectory for object files gets created.
+ ifdef objpfx
++ifeq (,$(wildcard $(objpfx).))
+ before-compile += $(objpfx).
+ $(objpfx).:
+ $(make-target-directory)
+@@ -166,26 +146,59 @@
+ $(before-compile):
+ endif
+
++# We don't want $(common-objpfx) files to depend on miscellaneous stuff
++# in subdirs.
++ifdef subdir
++common-before-compile := $(filter-out $(objpfx)%,$(before-compile))
++else
++common-before-compile = $(before-compile)
++endif
++
++ifndef subdir
+ # If a makefile needs to do something conditional on something that
+ # can only be figured out from headers, write a FOO.make.c input
+ # file that uses cpp contructs and contains @@@ LINE @@@ for each LINE
+ # to emit in the generated makefile, and use -include $(common-objpfx)FOO.make.
+-$(common-objpfx)%.make: $(..)%.make.c $(..)Makerules $(before-compile)
++#
++# We only generate these in the top-level makefile, to avoid any weirdness
++# from subdir-specific makefile tweaks creeping in on an update.
++$(common-objpfx)%.make: $(..)%.make.c $(..)Makerules $(common-before-compile)
+ rm -f $@T $@.dT
+ (echo '# Generated from $*.make.c by Makerules.'; \
+- SUNPRO_DEPENDENCIES='$@.dT $$(common-objpfx)$*.make' \
+ $(CC) $(CFLAGS) $(CPPFLAGS) -E $< \
++ -MD -MP -MT '$$(common-objpfx)$*.make' -MF $@.dT \
+ | sed -n '/@@@/{s/@@@[ ]*\(.*\)@@@/\1/;s/[ ]*$$//p;}'; \
+ echo 'common-generated += $(@F)'; \
+ sed $(sed-remove-objpfx) $(sed-remove-dotdot) $@.dT; \
+ rm -f $@.dT) > $@T
+ mv -f $@T $@
++endif
+
+ ifdef subdir
+-sed-remove-dotdot := -e 's@ *\.\.\/\([^ \]*\)@ $$(..)\1@g'
++sed-remove-dotdot := -e 's@ *\.\.\/\([^ \]*\)@ $$(..)\1@g' \
++ -e 's@^\.\.\/\([^ \]*\)@$$(..)\1@g'
+ else
+-sed-remove-dotdot := -e 's@ *\([^ \/$$][^ \]*\)@ $$(..)\1@g'
++sed-remove-dotdot := -e 's@ *\([^ \/$$][^ \]*\)@ $$(..)\1@g' \
++ -e 's@^\([^ \/$$][^ \]*\)@$$(..)\1@g'
+ endif
++
++
++# Generating headers for assembly constants.
++# We need this defined early to get into before-compile before
++# it's used in sysd-rules, below.
++$(common-objpfx)%.h $(common-objpfx)%.h.d: $(..)scripts/gen-as-const.awk \
++ %.sym $(common-before-compile)
++ $(AWK) -f $< $(filter %.sym,$^) \
++ | $(CC) -S -o - $(CFLAGS) $(CPPFLAGS) -x c - \
++ -MD -MP -MF $(@:.h=.h.d)T -MT '$(@:.h=.h.d) $(@:.h.d=.h)' \
++ | sed -n 's/^.*@@@name@@@\([^@]*\)@@@value@@@[^0-9Xxa-fA-F-]*\([0-9Xxa-fA-F-][0-9Xxa-fA-F-]*\).*@@@end@@@.*$$/#define \1 \2/p' > $(@:.h.d=.h)T
++ sed $(sed-remove-objpfx) $(sed-remove-dotdot) \
++ $(@:.h=.h.d)T > $(@:.h=.h.d)T2
++ rm -f $(@:.h=.h.d)T
++ mv -f $(@:.h=.h.d)T2 $(@:.h=.h.d)
++ mv -f $(@:.h.d=.h)T $(@:.h.d=.h)
++vpath %.sym $(sysdirs)
++before-compile += $(gen-as-const-headers:%.sym=$(common-objpfx)%.h)
+
+ # Generate an ordered list of implicit rules which find the source files in
+ # each sysdep directory. The old method was to use vpath to search all the
+@@ -193,15 +206,6 @@
+ # later directory would be chosen over a .c file in an earlier directory,
+ # which does not preserve the desired sysdeps ordering behavior.
+
+-# When making the list of .d files to include, we can't know which ones
+-# have source in .s files, and thus do not in fact need a .d file.
+-# So we must define rules to make .d files for .s files.
+-define make-dummy-dep
+-$(addprefix ln $(common-objpfx)dummy.d ,$(filter-out $(wildcard $@),$@))
+-endef
+-$(common-objpfx)dummy.d:
+- echo '# .s files cannot contain includes, so they need no deps.' > $@
+-
+ # It matters that this set of rules, for compiling from sources in
+ # the current directory (the $srcdir/$subdir) come before the
+ # generated sysdep rules in included from sysd-rules below. When
+@@ -212,21 +216,18 @@
+ endef
+ object-suffixes-left := $(all-object-suffixes)
+ include $(o-iterator)
+-$(objpfx)%.d: %.S $(before-compile); $(+make-deps)
+
+ define o-iterator-doit
+ $(objpfx)%$o: %.s $(before-compile); $$(compile-command.s)
+ endef
+ object-suffixes-left := $(all-object-suffixes)
+ include $(o-iterator)
+-$(objpfx)%.d: %.s $(common-objpfx)dummy.d; $(make-dummy-dep)
+
+ define o-iterator-doit
+ $(objpfx)%$o: %.c $(before-compile); $$(compile-command.c)
+ endef
+ object-suffixes-left := $(all-object-suffixes)
+ include $(o-iterator)
+-$(objpfx)%.d: %.c $(before-compile); $(+make-deps)
+
+ # Omit the objpfx rules when building in the source tree, because
+ # objpfx is empty and so these rules just override the ones above.
+@@ -238,21 +239,18 @@
+ endef
+ object-suffixes-left := $(all-object-suffixes)
+ include $(o-iterator)
+-$(objpfx)%.d: $(objpfx)%.S $(before-compile); $(+make-deps)
+
+ define o-iterator-doit
+ $(objpfx)%$o: $(objpfx)%.s $(before-compile); $$(compile-command.s)
+ endef
+ object-suffixes-left := $(all-object-suffixes)
+ include $(o-iterator)
+-$(objpfx)%.d: $(objpfx)%.s $(common-objpfx)dummy.d; $(make-dummy-dep)
+
+ define o-iterator-doit
+ $(objpfx)%$o: $(objpfx)%.c $(before-compile); $$(compile-command.c)
+ endef
+ object-suffixes-left := $(all-object-suffixes)
+ include $(o-iterator)
+-$(objpfx)%.d: $(objpfx)%.c $(before-compile); $(+make-deps)
+ endif
+
+ # System-dependent makefiles can put in `inhibit-sysdep-asm' wildcard
+@@ -301,26 +299,6 @@
+ echo "\$$(objpfx)ptw-%$$o: $$dir/%.c \$$(before-compile); \
+ \$$(compile-command.c)"; \
+ done; \
+- $(open-check-inhibit-asm) \
+- echo "\$$(objpfx)%.d: $$dir/%.s \$$(common-objpfx)dummy.d; \
+- \$$(make-dummy-dep)"; \
+- echo "\$$(objpfx)rtld-%.d: $$dir/%.s \$$(common-objpfx)dummy.d; \
+- \$$(make-dummy-dep)"; \
+- echo "\$$(objpfx)ptw-%.d: $$dir/%.s \$$(common-objpfx)dummy.d; \
+- \$$(make-dummy-dep)"; \
+- echo "\$$(objpfx)%.d: $$dir/%.S \$$(before-compile); \
+- \$$(+make-deps)"; \
+- echo "\$$(objpfx)rtld-%.d: $$dir/%.S \$$(before-compile); \
+- \$$(+make-deps)"; \
+- echo "\$$(objpfx)ptw-%.d: $$dir/%.S \$$(before-compile); \
+- \$$(+make-deps)"; \
+- $(close-check-inhibit-asm) \
+- echo "\$$(objpfx)%.d: $$dir/%.c \$$(before-compile); \
+- \$$(+make-deps)"; \
+- echo "\$$(objpfx)rtld-%.d: $$dir/%.c \$$(before-compile); \
+- \$$(+make-deps)"; \
+- echo "\$$(objpfx)ptw-%.d: $$dir/%.c \$$(before-compile); \
+- \$$(+make-deps)"; \
+ echo "\$$(objpfx)m_%.S: $$dir/s_%.S; \$$(+make-include-of-dep)"; \
+ echo "\$$(objpfx)m_%.c: $$dir/s_%.c; \$$(+make-include-of-dep)"; \
+ done; \
+@@ -383,32 +361,20 @@
+ endif # $(versioning) = yes
+ endif # sysd-sorted-done
+
+-
+-ifndef compile-command.S
+-compile-command.S = $(compile.S) $(OUTPUT_OPTION)
+-endif
+-ifndef compile-command.s
+-compile-command.s = $(COMPILE.s) $< $(OUTPUT_OPTION)
+-endif
+-ifndef compile-command.c
+-compile-command.c = $(compile.c) $(OUTPUT_OPTION)
+-endif
++# Generate .dT files as we compile.
++compile-mkdep-flags = -MD -MP -MF $@.dt
++compile-command.S = $(compile.S) $(OUTPUT_OPTION) $(compile-mkdep-flags)
++compile-command.s = $(COMPILE.s) $< $(OUTPUT_OPTION) $(compile-mkdep-flags)
++compile-command.c = $(compile.c) $(OUTPUT_OPTION) $(compile-mkdep-flags)
+
+ # GCC can grok options after the file name, and it looks nicer that way.
+ compile.c = $(CC) $< -c $(CFLAGS) $(CPPFLAGS)
+-compile.S = $(CC) $< -c $(CPPFLAGS) $(S-CPPFLAGS) $(ASFLAGS-$(suffix $@))
+-COMPILE.S = $(CC) -c $(CPPFLAGS) $(S-CPPFLAGS) $(ASFLAGS-$(suffix $@))
++compile.S = $(CC) $< -c $(CPPFLAGS) $(S-CPPFLAGS) \
++ $(ASFLAGS) $(ASFLAGS-$(suffix $@))
++COMPILE.S = $(CC) -c $(CPPFLAGS) $(S-CPPFLAGS) \
++ $(ASFLAGS) $(ASFLAGS-$(suffix $@))
+ COMPILE.s = $(filter-out -pipe,$(CC)) -c $(ASFLAGS)
+
+-# If we want to generate MD5 checksums for the sources do this now.
+-ifeq ($(md5),yes)
+-generate-md5 = ; rm -f $(@:.d=.md5); \
+-$(CC) -E $< $(CFLAGS) $(CPPFLAGS) $($(patsubst .%,%,$(suffix $(<F)))-CPPFLAGS) | \
+-sed '/^\#/d;/^[[:space:]]*$$/d' | md5sum > $(@:.d=.md5)
+-else
+-generate-md5 =
+-endif
+-
+ # We need this for the output to go in the right place. It will default to
+ # empty if make was configured to work with a cc that can't grok -c and -o
+ # together. You can't compile the C library with such a compiler.
+@@ -418,14 +384,16 @@
+ # the dependency run for C sources. But having it for assembly sources can
+ # get the wrong predefines.
+ S-CPPFLAGS = -DASSEMBLER $(asm-CPPFLAGS)
++
+ define +make-deps
+ $(make-target-directory)
+ $(+mkdep) $< $(if $(filter %.c,$<),$(CFLAGS)) \
+- $(CPPFLAGS) $($(patsubst .%,%,$(suffix $(<F)))-CPPFLAGS) | sed \
+--e 's,$(subst .,\.,$*)\.o,$(foreach o,$(all-object-suffixes),$(@:.d=$o)) $@,' \
+-$(sed-remove-objpfx) > $(@:.d=.T)
++ $(CPPFLAGS) $($(patsubst .%,%,$(suffix $(<F)))-CPPFLAGS) | sed -e\
++'s,$(subst .,\.,$(@F:.d=.o)),$(foreach o,$(all-object-suffixes),$(@:.d=$o)) $@,' \
++$(sed-remove-objpfx) $(sed-remove-dotdot) > $(@:.d=.T)
+ mv -f $(@:.d=.T) $@ $(generate-md5)
+ endef
++
+ ifneq (,$(objpfx))
+ # Continuation lines here are dangerous because they introduce spaces!
+ define sed-remove-objpfx
+@@ -509,17 +477,23 @@
+ ifeq (yes,$(elf))
+ # binutils only position loadable notes into the first page for binaries,
+ # not for shared objects
+-define build-shlib
+-$(build-shlib-helper) \
+- -o $@.new $(csu-objpfx)abi-note.o -Wl,--verbose \
+- $(LDLIBS-$(@F:lib%.so=%).so) 2>&1 | \
+- sed -e '/^=========/,/^=========/!d;/^=========/d' \
++$(common-objpfx)shlib.lds: $(common-objpfx)config.make $(..)Makerules
++ $(LINK.o) -shared -Wl,-O1 \
++ $(sysdep-LDFLAGS) $(config-LDFLAGS) $(LDFLAGS.so) \
++ -Wl,--verbose 2>&1 | \
++ sed > $@T \
++ -e '/^=========/,/^=========/!d;/^=========/d' \
+ -e 's/^.*\.hash[ ]*:.*$$/ .note.ABI-tag : { *(.note.ABI-tag) } &/' \
+- $(LDSEDCMD-$(@F:lib%.so=%).so) > $@.lds
+-rm -f $@.new
+-$(build-shlib-helper) -o $@ -T $@.lds \
++ -e 's/^.*\*(\.dynbss).*$$/& \
++ PROVIDE(__start___libc_freeres_ptrs = .); \
++ *(__libc_freeres_ptrs) \
++ PROVIDE(__stop___libc_freeres_ptrs = .);/'
++ mv -f $@T $@
++common-generated += shlib.lds
++
++define build-shlib
++$(build-shlib-helper) -o $@ -T $(common-objpfx)shlib.lds \
+ $(csu-objpfx)abi-note.o $(build-shlib-objlist)
+-rm -f $@.lds
+ endef
+ else
+ ifneq (,$(findstring aix,$(config-os)))
+@@ -547,6 +521,7 @@
+ else
+ define build-module-helper
+ $(LINK.o) -shared $(static-libgcc) $(sysdep-LDFLAGS) $(config-LDFLAGS) \
++ $(if $($(@F)-no-z-defs)$(no-z-defs),,-Wl,-z,defs) \
+ -B$(csu-objpfx) $(load-map-file) \
+ $(LDFLAGS.so) $(LDFLAGS-$(@F:%.so=%).so) \
+ -L$(subst :, -L,$(rpath-link)) -Wl,-rpath-link=$(rpath-link)
+@@ -559,16 +534,8 @@
+ # binutils only position loadable notes into the first page for binaries,
+ # not for shared objects
+ define build-module
+-$(build-module-helper) \
+- -o $@.new $(csu-objpfx)abi-note.o -Wl,--verbose \
+- $(LDLIBS-$(@F:lib%.so=%).so) 2>&1 | \
+- sed -e '/^=========/,/^=========/!d;/^=========/d' \
+- -e 's/^.*\.hash[ ]*:.*$$/ .note.ABI-tag : { *(.note.ABI-tag) } &/' \
+- > $@.lds
+-rm -f $@.new
+-$(build-module-helper) -o $@ -T $@.lds \
++$(build-module-helper) -o $@ -T $(common-objpfx)shlib.lds \
+ $(csu-objpfx)abi-note.o $(build-module-objlist)
+-rm -f $@.lds
+ endef
+ else
+ ifneq (,$(findstring aix,$(config-os)))
+@@ -590,7 +557,7 @@
+
+ build-module-helper-objlist = \
+ $(patsubst %_pic.a,$(whole-archive) %_pic.a $(no-whole-archive),\
+- $(filter-out $(map-file) $(+preinit) $(+postinit),$^))
++ $(filter-out %.lds $(map-file) $(+preinit) $(+postinit),$^))
+ whole-archive := -Wl,--whole-archive
+
+ build-module-objlist = $(build-module-helper-objlist) $(LDLIBS-$(@F:%.so=%).so)
+@@ -605,8 +572,6 @@
+ LDLIBS-c.so += $(gnulib)
+ # Give libc.so an entry point and make it directly runnable itself.
+ LDFLAGS-c.so += -e __libc_main
+-# Force the backward compatibility EH functions to be linked.
+-LDFLAGS-c.so += -u __register_frame
+ # Pre-link the objects of libc_pic.a so that we can locally resolve
+ # COMMON symbols before we link against ld.so. This is because ld.so
+ # contains some of libc_pic.a already, which will prevent the COMMONs
+@@ -616,12 +581,12 @@
+ $(common-objpfx)libc_pic.os: $(common-objpfx)libc_pic.a
+ $(LINK.o) -nostdlib -nostartfiles -r -o $@ \
+ $(LDFLAGS-c_pic.os) -Wl,-d -Wl,--whole-archive $^
+-LDSEDCMD-c.so = -e 's/^.*\*(\.dynbss).*$$/& __start___libc_freeres_ptrs = .; *(__libc_freeres_ptrs) __stop___libc_freeres_ptrs = .;/'
+ # Use our own special initializer and finalizer files for libc.so.
+ $(common-objpfx)libc.so: $(elfobjdir)/soinit.os \
+ $(common-objpfx)libc_pic.os \
+ $(elfobjdir)/sofini.os \
+- $(elfobjdir)/interp.os $(elfobjdir)/ld.so
++ $(elfobjdir)/interp.os $(elfobjdir)/ld.so \
++ $(common-objpfx)shlib.lds
+ $(build-shlib)
+ ifeq ($(versioning),yes)
+ $(common-objpfx)libc.so: $(common-objpfx)libc.map
+@@ -689,6 +654,15 @@
+ +depfiles := $(addprefix $(objpfx),\
+ $(filter-out $(addsuffix .d,$(omit-deps)),\
+ $(+depfiles)))
++all-dt-files := $(foreach o,$(object-suffixes-for-libc),$(+depfiles:.d=$o.dt))
+++depfiles := $(patsubst %.dt,%.d,$(wildcard $(all-dt-files))) \
++ $(wildcard $(all-dt-files:.dt=.d))
++
++# This is a funny rule in that it removes its input file.
++%.d: %.dt
++ @sed $(sed-remove-objpfx) $< > $(@:.d=.T) && \
++ mv -f $(@:.d=.T) $@ && \
++ rm -f $<
+
+ # Avoid the .h.d files for any .sym files whose .h files don't exist yet.
+ # They will be generated when they're needed, and trying too early won't work.
+@@ -762,6 +736,7 @@
+ $(objpfx)stamp$o: $(o-objects); $$(do-stamp)
+ endef
+ define do-stamp
++$(make-target-directory)
+ echo '$(patsubst $(objpfx)%,$(addsuffix /,$(subdir))%,$^)' > $@T
+ mv -f $@T $@
+ endef
+@@ -1188,15 +1163,23 @@
+ LC_ALL=C \
+ $(AWK) -f $< -v 'config=$(check-abi-config)' \
+ $(filter %.abilist,$^) \
+- | diff -pu0 - $(filter %.symlist,$^)
++ | { diff -pu0 - $(filter %.symlist,$^) $(check-abi-warn) ; }
+ endef
++ifeq ($(enable-check-abi),warn)
++check-abi-warn = || echo '*** WARNING: $*.so failed ABI check'
++endif
+
+ ifeq ($(firstword $(sysd-sorted-done) f)$(firstword $(generating) f),tf)
+ -include $(common-objpfx)tls.make
+-config-tls-yes := tls
+-config-tls-no := notls
++config-tls := notls
++ifeq ($(use-tls),yes)
++config-tls := tls
++endif
++ifeq ($(use-thread),yes)
++config-tls := thread
++endif
+ check-abi-config := \
+- $(config-machine)-$(config-vendor)-$(config-os)/$(config-tls-$(use-thread))
++ $(config-machine)-$(config-vendor)-$(config-os)/$(config-tls)
+ endif
+
+ update-abi-%: $(..)scripts/merge-abilist.awk $(..)abilist/%.abilist \
+@@ -1211,7 +1194,7 @@
+ endef
+ else
+ define update-abi
+-LC_ALL=C $(AWK) -v config=$(update-abi-config) -f $^ \
++LC_ALL=C $(AWK) -v config='$(update-abi-config)' -f $^ \
+ > $(..)abilist/$*.abilist.new
+ @if cmp -s $(..)abilist/$*.abilist.new $(..)abilist/$*.abilist 2> /dev/null; \
+ then rm -f $(..)abilist/$*.abilist.new; \
+@@ -1233,19 +1216,23 @@
+ update-abi: subdir_update-abi
+ endif
+
+-# Enable this when all the .abilist files are in place.
+-#tests: check-abi
+-
+ ifeq ($(subdir),elf)
+ check-abi: check-abi-libc
+ update-abi: update-abi-libc
+ common-generated += libc.symlist
+ endif
+
++ifeq ($(build-shared),yes)
++ifneq ($(enable-check-abi),no)
++ifdef subdir
++tests: check-abi
++endif
++endif
++endif
++
+ endif
+
+ # There's no good place to put this - here will do.
+-# The dependencies are wrong if it's run from the top level.
+ ifeq ($(filter %posix, $(sysdirs)),)
+ L_tmpnam = 1
+ TMP_MAX = 0
+@@ -1263,24 +1250,20 @@
+ $(stdio_lim:h=st): $(..)stdio-common/stdio_lim.h.in $(..)Rules \
+ $(common-objpfx)config.make
+ $(make-target-directory)
+- echo '#include "$(..)posix/bits/posix1_lim.h"' | \
+- SUNPRO_DEPENDENCIES='$(@:st=dT) $@' \
+- $(CC) $(+includes) -E -dM -xc - -o $(@:st=hT)
+- echo '#include "$(..)misc/sys/uio.h"' | \
+- SUNPRO_DEPENDENCIES='$(@:st=dT) $@' \
+- $(CC) -D_LIBC=1 $(+includes) -E -dM -xc - | cat - >> $(@:st=hT)
+-ifdef sed-remove-objpfx
+- sed $(sed-remove-objpfx) $(@:st=dT) > $(@:st=dt)
+- cat $(@:st=dt) >> $(@:st=d)
+-else
+- cat $(@:st=dT) >> $(@:st=d)
+-endif
++ { echo '#include "$(..)posix/bits/posix1_lim.h"'; \
++ echo '#define _LIBC 1'; \
++ echo '#include "$(..)misc/sys/uio.h"'; } | \
++ $(CC) -E -dM -MD -MP -MF $(@:st=dT) -MT '$(@:st=h) $(@:st=d)' \
++ $(+includes) -xc - -o $(@:st=hT)
++ sed $(sed-remove-objpfx) $(sed-remove-dotdot) \
++ $(@:st=dT) > $(@:st=dt)
++ mv -f $(@:st=dt) $(@:st=d)
+ fopen_max=`sed -n 's/^#define OPEN_MAX //1p' $(@:st=hT)`; \
+ filename_max=`sed -n 's/^#define PATH_MAX //1p' $(@:st=hT)`; \
+ iov_max=`sed -n 's/^#define UIO_MAXIOV //p' $(@:st=hT)`; \
+ fopen_max=$${fopen_max:-16}; \
+ filename_max=$${filename_max:-1024}; \
+- if [ -z $$iov_max ]; then \
++ if [ -z "$$iov_max" ]; then \
+ define_iov_max="# undef IOV_MAX"; \
+ else \
+ define_iov_max="# define IOV_MAX $$iov_max"; \
+@@ -1355,8 +1338,8 @@
+
+ # Also remove the dependencies and generated source files.
+ common-clean: common-mostlyclean
+- -rm -f $(addprefix $(objpfx),$(generated)) $(+depfiles)
+- -rm -f $(objpfx)rtld-*.d
++ -rm -f $(addprefix $(objpfx),$(generated))
++ -rm -f $(objpfx)*.d $(objpfx)*.dt
+ -rm -fr $(addprefix $(objpfx),$(generated-dirs))
+ -rm -f $(addprefix $(common-objpfx),$(common-generated))
+ -rm -f $(objpfx)distinfo
+@@ -1370,17 +1353,23 @@
+ .PHONY: stubs # The parent Makefile calls this target.
+ stubs: $(objpfx)stubs
+ endif
+-s = $(sysdep_dir)/generic
+ $(objpfx)stubs: $(+depfiles)
++ifneq (,$(strip $(+depfiles)))
+ # Use /dev/null since `...` might expand to empty.
+- (s=`cd $s && $(PWD_P)`; \
+- $(patsubst %/,cd % &&,$(objpfx)) \
+- sed -n 's/^stub_warning *(\([^)]*\).*$$/#define __stub_\1/p' \
+- `sed -n -e '\@ $s/[^ ]*\.c@{; s@^.* $s/\([^ ]*\.c\).*$$@'"$$s"'/\1@; h; }' \
+- -e '/stub-tag\.h/{; g; p; }' \
+- $(patsubst $(objpfx)%,%,$^) /dev/null` \
+- /dev/null) > $@T
++ c=`($(patsubst %/,cd % &&,$(objpfx)) \
++ sed -n -e 's@\$$(common-objpfx)@$(common-objpfx)@g' \
++ -e 's@\$$(objpfx)@$(objpfx)@g' \
++ -e '/stub-tag\.h/{; g; s/./&/p; }' \
++ -e '/:/{x; s/^.*$$//; x; }' \
++ -e 's/^.*://;s/\\$$//;s/^ *\([^ ][^ ]*\) .*$$/\1/' \
++ -e '/^[^ ][^ ]*$$/{G;s/^.*\n\(..*\)/\1/;s/\n//;h; }' \
++ $(patsubst $(objpfx)%,%,$^)) | sort | uniq`; \
++ sed -n 's/^stub_warning *(\([^)]*\).*$$/#define __stub_\1/p' \
++ $$c /dev/null > $@T
+ mv -f $@T $@
++else
++ > $@
++endif
+
+ # Make the distribution tar file.
+
+--- glibc-2.3.2/NEWS 2003-01-13 04:26:13.000000000 -0500
++++ glibc-2.3.2/NEWS 2003-04-24 20:05:56.000000000 -0400
+@@ -1,10 +1,24 @@
+-GNU C Library NEWS -- history of user-visible changes. 2003-1-12
+-Copyright (C) 1992-2002, 2003 Free Software Foundation, Inc.
++GNU C Library NEWS -- history of user-visible changes. 2003-4-24
++Copyright (C) 1992-2002,2003 Free Software Foundation, Inc.
+ See the end for copying conditions.
+
+ Please send GNU C library bug reports using the `glibcbug' script to
+ <bugs@gnu.org>. Please send questions and suggestions to <bug-glibc@gnu.org>.
+
++Version 2.3.3
++
++* New functions `dladdr1' and `dlinfo' in <dlfcn.h> provide more ways to
++ interrogate the dynamic linker, compatible with the Solaris interface.
++
++* ELF thread-local storage support (TLS) now works on PowerPC and PowerPC64;
++ implemented by Paul Mackerras, Steven Munroe, and Roland McGrath.
++
++* getifaddrs new uses on Linux the netlink interface to get the information.
++ Implemented by Thorsten Kukuk.
++
++* getaddrinfo now implements AI_V4MAPPED, AI_ALL, and AI_ADDRCONF.
++ Implemented by Ulrich Drepper.
++
+ Version 2.3.2
+
+ * Thread-safe interfaces for many functions that access locale data
+--- glibc-2.3.2/README-alpha 1969-12-31 19:00:00.000000000 -0500
++++ glibc-2.3.2/README-alpha 2002-11-16 08:53:55.000000000 -0500
+@@ -0,0 +1,287 @@
++ GNU libc SNAPSHOT SYSTEM
++ (general info)
++ Updated 1997-9-26
++
++WHAT ARE GNU libc SNAPSHOTS
++---------------------------
++
++Snapshots are an "image" of the main glibc development tree, captured at a
++particular random instant in time. When you use the snapshots, you should be
++able to maintain a local copy of libc that is no more than one day older than
++the official source tree used by the libc maintainers.
++
++The primary purpose of providing snapshots is to widen the group of motivated
++developers that would like to help test, debug, and enhance glibc, by providing
++you with access to the "latest and greatest" source. This has several
++advantages, and several disadvantages.
++
++ First the advantages:
++
++ o Once we have a large base of motivated testers using the snapshots,
++ this should provide good coverage across all currently supported
++ glibc hosts and targets. If a new bug is introduced in glibc due to
++ fixing another bug or ongoing development, it should become
++ obvious much more quickly and get fixed before the next general
++ net release. This should help to reduce the chances of glibc being
++ released to the general public with a major bug that went unnoticed
++ during the release cycle testing because they are machine dependent.
++ We hope to greatly improve glibc's stability and reliability by
++ involving more people and more execution environments in the
++ prerelease testing.
++
++ o With access to the latest source, any diffs that you send to fix
++ bugs or add new features should be much easier for the glibc team
++ to merge into the official source base (after suitable review
++ of course). This encourages us to merge your changes quicker,
++ while they are still "fresh".
++
++ o Once your diffs are merged, you can obtain a new copy of glibc
++ containing your changes almost immediately. Thus you do not
++ have to maintain local copies of your changes for any longer
++ than it takes to get them merged into the official source base.
++ This encourages you to send in changes quicker.
++
++ And the disadvantages:
++
++ o The snapshot you get will be largely untested and of unknown quality.
++ It may fail to configure or compile. It may have serious bugs.
++ You should always keep a copy of the last known working version
++ before updating to the current snapshot, or at least be able to
++ regenerate a working version if the latest snapshot is unusable
++ in your environment for some reason.
++
++ If a production version of glibc has a bug and a snapshot has the fix,
++ and you care about stability, you should put only the fix for that
++ particular problem into your production version. Of course, if you
++ are eager to test glibc, you can use the snapshot versions in your
++ daily work, but users who have not been consulted about whether they
++ feel like testing glibc should generally have something which is at
++ least as bug free as the last released version.
++
++ o Providing timely response to your questions, bug reports, and
++ submitted patches will require the glibc development team to allocate
++ time from an already thin time budget. Please try to help us make
++ this time as productive as possible. See the section below about
++ how to submit changes.
++
++
++WHO SHOULD TRY THE SNAPSHOTS
++----------------------------
++
++Remember, these are snapshots not tested versions. So if you use
++these versions you should be able to
++
++ o make sure your system stays usable
++
++ o locate and hopefully fix problems
++
++ o to port glibc to a new target yourself
++
++You should not use the snapshots if
++
++ o your system is needed in a production environment which needs
++ stability
++
++ o you expect us to fix your problems since you somehow depend on them.
++ You must be willing to fix the problems yourself, we don't want to
++ see "I have problems, fix this" messages.
++
++
++HOW TO GET THE SNAPSHOTS
++------------------------
++
++At the moment we provide a full snapshot weekly (every sunday), so
++that users getting a snapshot for the first time, or updating after
++a long period of not updating, can get the latest version in a single
++operation. Along with the full snapshot, we will provide incremental
++diffs on a nearly daily basis (whenever code changes). Each daily
++diff will be relative to the source tree after applying all previous
++daily diffs. The daily diffs are for people who have relatively low
++bandwidth ftp or uucp connections.
++
++The files will be available via anonymous ftp from alpha.gnu.org, in
++directory /gnu/libc and on linux.kernel.org in /pub/software/libs/glibc. The
++directories should look something like:
++
++ libc-970921.tar.gz
++ libc-970917-970922.diff.gz
++ libc-970922-970925.diff.gz
++ .
++ .
++ .
++
++Please note that the snapshots on alpha.gnu.org and on
++linux.kernel.org are not always in sync. Patches to some files might
++appear a day a diff earlier or later on alpha than on kernel.
++Use always alpha or always kernel but don't mix them.
++
++There are sometimes additionally test releases of the add-ons available in
++these directories. If a new version of an add-on is available it is normally
++required for the corresponding snapshot so always pay attention for these.
++
++Note that we provide GNU gzip compressed files only. You can ftp gzip
++from ftp.gnu.org in directory pub/gnu.
++
++In some cases the dates for diffs and snapshots do not match like in the
++example above. The full release is for 970921 but the patch is for
++970917-970922. This only means that nothing changed between 970917 and 970922
++and that you have to use this patch on top of the 970921 snapshot since the
++patch is made on 970922.
++
++Also, as the gcc developers did with their gcc snapshot system, even though we
++will make the snapshots available on a publically accessible ftp area, we ask
++that recipients not widely publicise their availability. The motivation for
++this request is not to hoard them, but to avoid the situation where the
++general glibc user base naively attempts to use the snapshots, has trouble with
++them, complains publically, and the reputation of glibc declines because of a
++perception of instability or lack of quality control.
++
++
++GLIBC TEST SUITE
++----------------
++
++A test suite is distributed as an integral part of the snapshots. A simple
++"make check" in your build directory is sufficient to run the tests. glibc
++should pass all tests and if any fails, please report it. A failure might not
++originate from a bug in glibc but also from bugs in the tools, e.g. with gcc
++2.7.2.x the math tests fail some of the tests because of compiler bugs.
++
++Note that the test suite is still in its infancy. The tests themselves only
++cover a small portion of libc features, and where tests do exist for a feature
++they are not exhaustive. New tests are welcome.
++
++
++GETTING HELP, GLIBC DISCUSSIONS, etc
++------------------------------------
++
++People who want to help with glibc and who test out snapshots
++regularly should get on the libc-alpha@sourceware.cygnus.com mailing
++list by sending an email to libc-alpha-subscribe@sourceware.cygnus.com.
++This list is meant (as the name suggests) for the discussion of test
++releases and also reports for them. People who are on this list are
++welcome to post questions of general interest.
++
++People who are not only willing to test the snapshots but instead
++really want to help developing glibc should contact
++libc-hacker-subscribe@sourceware.cygnus.com.org to be put on the developers
++mailing list. This list is really only meant for developers. No
++questions about installation problems or other simple topics are
++wanted nor will they be answered.
++
++Do *not* send any questions about the snapshots or patches specific to the
++snapshots to bug-glibc@gnu.org. Nobody there will have any idea what
++you are talking about and it will just cause confusion.
++
++
++BUG REPORTS
++-----------
++
++Send bug reports directly to Ulrich Drepper <drepper@gnu.org>. Please
++do *not* use the glibcbug script for reporting bugs in the snapshots.
++glibcbug should only be used for problems with the official released versions.
++We don't like bug reports in the bug database because otherwise the impression
++of instability or lack of quality control of glibc as a whole might manifest
++in people's mind.
++
++Note that since no testing is done on the snapshots, and snapshots may even be
++made when glibc is in an inconsistent state, it may not be unusual for an
++occasional snapshot to have a very obvious bug, such as failure to compile on
++*any* machine. It is likely that such bugs will be fixed by the next
++snapshot, so it really isn't necessary to report them unless they persist for
++a couple of days.
++
++Missing files should always be reported, since they usually mean there is a
++problem with the snapshot-generating process and we won't know about them
++unless someone tells us.
++
++Bugs which are non-obvious, such as failure to compile on only a specific
++machine, a new machine dependent or obscure bug (particularly one not detected
++by the testsuite), etc should be reported when you discover them, or have a
++suggested patch to fix them.
++
++
++FORMAT FOR PATCHES
++------------------
++
++If you have a fix for a bug, or an enhancement to submit, send your patch to
++Ulrich Drepper <drepper@gnu.org>. Here are some simple guidelines for
++submitting patches:
++
++ o Use "unified diffs" for patches. A typical command for generating
++ context diffs is "diff -ru glibc-old glibc-patched".
++
++ o Use the "minimalist approach" for patches. That is, each patch
++ should address only one particular bug, new feature, etc. Do not
++ save up many unrelated changes and submit them all in one big
++ patch, since in general, the larger the patch the more difficult
++ it is for us to decide if the patch is either correct or
++ desirable. And if we find something about the patch that needs
++ to be corrected before it can be installed, we would have to reject
++ the entire patch, which might contain changes which otherwise would
++ be accepted if submitted separately.
++
++ o Submit a sample ChangeLog entry with your patch. See the existing
++ glibc ChangeLog for examples of what a ChangeLog entry should look
++ like. The emacs command ^X4A will create a ChangeLog entry header
++ for you.
++
++
++BUILDING SNAPSHOTS
++------------------
++
++The `best' way to build glibc is to use an extra directory, e.g.:
++tar xzf libc-970921.tar.gz
++mkdir build-glibc
++cd build-glibc
++../libc-970921/configure ...
++
++In this way you can easily clean up (since `make clean' doesn't work at
++the moment) and rebuild glibc.
++
++
++NECESSARY TOOLS
++---------------
++
++For the recommended versions of gcc, binutils, make, texinfo, gettext,
++autoconf and other tools which might be especially needed when using patches,
++please read the file INSTALL.
++
++
++HOW CAN YOU HELP
++----------------
++
++It helps already a lot if you just install glibc on your system and try to
++solve any problems. You might want to look at the file `PROJECTS' and help
++with one of those projects, fix some bugs (see `BUGS' or the bug database),
++port to an unsupported platform, ...
++
++
++FURTHER DOCUMENTATION
++---------------------
++
++A lot of questions are answered in the FAQ. The files `INSTALL', `README' and
++`NOTES' contain the most important documentation. Furthermore glibc has its
++own 700+ pages info documentation, ...
++
++
++
++And finally a word of caution: The libc is one of the most fundamental parts
++of your system - and these snapshots are untested and come without any
++guarantee or warranty. You might be lucky and everything works or you might
++crash your system. If you install a glibc snapshot as primary library, you
++should have a backup somewhere.
++
++On many systems it is also a problem to replace the libc while the system is
++running. In the worst case on broken OSes some systems crash. On better
++systems you can move the old libc aside but removing it will cause problems
++since there are still processes using this libc image and so you might have to
++check the filesystem to get rid of the libc data. One good alternative (which
++is also safer) is to use a chroot'ed environment.
++
++Thanks for your help and support.
++
++Thanks to Fred Fish from Cygnus for the original version of this text
++(for GDB).
++
++
++Ulrich Drepper
+--- glibc-2.3.2/README.template 1969-12-31 19:00:00.000000000 -0500
++++ glibc-2.3.2/README.template 2002-11-16 08:53:56.000000000 -0500
+@@ -0,0 +1,87 @@
++This directory contains the version VERSION release of the GNU C Library.
++Many bugs have been fixed since the last release.
++Some bugs surely remain.
++
++As of this release, the GNU C library is known to run on the following
++configurations:
++
++ *-*-gnu GNU Hurd
++ i[3456]86-*-linux-gnu Linux-2.x on Intel
++ m68k-*-linux-gnu Linux-2.x on Motorola 680x0
++ alpha*-*-linux-gnu Linux-2.x on DEC Alpha
++ powerpc-*-linux-gnu Linux and MkLinux on PowerPC systems
++ powerpc64-*-linux-gnu Linux-2.4.19+ on 64-bit PowerPC systems
++ sparc-*-linux-gnu Linux-2.x on SPARC
++ sparc64-*-linux-gnu Linux-2.x on UltraSPARC 64-bit
++ arm-*-none ARM standalone systems
++ arm-*-linux Linux-2.x on ARM
++ arm-*-linuxaout Linux-2.x on ARM using a.out binaries
++ mips*-*-linux-gnu Linux-2.x on MIPS
++ ia64-*-linux-gnu Linux-2.x on ia64
++ s390-*-linux-gnu Linux-2.x on IBM S/390
++ s390x-*-linux-gnu Linux-2.4+ on IBM S/390 64-bit
++ sh-*-linux-gnu Linux-2.x on Super Hitachi
++ cris-*-linux-gnu Linux-2.4+ on CRIS
++ x86-64-*-linux-gnu Linux-2.4+ on x86-64
++
++Former releases of this library (version 1.09.1 and perhaps earlier
++versions) used to run on the following configurations:
++
++ alpha-dec-osf1
++ i[3456]86-*-bsd4.3
++ i[3456]86-*-isc2.2
++ i[3456]86-*-isc3
++ i[3456]86-*-sco3.2
++ i[3456]86-*-sco3.2v4
++ i[3456]86-*-sysv
++ i[3456]86-*-sysv4
++ i[3456]86-force_cpu386-none
++ i[3456]86-sequent-bsd
++ i960-nindy960-none
++ m68k-hp-bsd4.3
++ m68k-mvme135-none
++ m68k-mvme136-none
++ m68k-sony-newsos3
++ m68k-sony-newsos4
++ m68k-sun-sunos4
++ mips-dec-ultrix4
++ mips-sgi-irix4
++ sparc-sun-solaris2
++ sparc-sun-sunos4
++
++Since no one has volunteered to test and fix the above configurations,
++these are not supported at the moment. It's expected that these don't
++work anymore. Porting the library is not hard. If you are interested
++in doing a port, please contact the glibc maintainers by sending
++electronic mail to <bug-glibc@gnu.org>.
++
++There are some add-ons which can be used together with GNU libc. They
++are designed in a way to ease the installation by integrating them in
++the libc source tree. Simply get the add-ons you need and use the
++--enable-add-ons option of the `configure' script to tell where the
++add-ons are found. Please read the FAQ file for more details.
++
++See the file INSTALL to find out how to configure, build, install, and port
++the GNU C library. You might also consider reading the WWW pages for the
++GNU libc at http://www.gnu.org/software/libc/libc.html.
++
++The GNU C Library is completely documented by the Texinfo manual found
++in the `manual/' subdirectory. The manual is still being updated and
++contains some known errors and omissions; we regret that we do not
++have the resources to work on the manual as much as we would like.
++Please send comments on the manual to <bug-glibc-manual@gnu.org>, and
++not to the library bug-reporting address.
++
++The file NOTES contains a description of the feature-test macros used
++in the GNU C library, explaining how you can tell the library what
++facilities you want it to make available.
++
++We prefer to get bug reports sent using the `glibcbug' shell script which
++is installed together with the rest of the GNU libc to <bugs@gnu.org>.
++Simply run this shell script and fill in the information. Nevertheless
++you can still send bug reports to <bug-glibc@gnu.org> as normal electronic
++mails.
++
++The GNU C Library is free software. See the file COPYING.LIB for copying
++conditions, and LICENSES for notices about a few contributions that require
++these additional notices to be distributed.
+--- glibc-2.3.2/Versions.def 2002-12-10 14:05:17.000000000 -0500
++++ glibc-2.3.2/Versions.def 2003-04-12 11:39:41.000000000 -0400
+@@ -18,6 +18,7 @@
+ GLIBC_2.3
+ GLIBC_2.3.1
+ GLIBC_2.3.2
++ GLIBC_2.3.3
+ %ifdef USE_IN_LIBIO
+ HURD_CTHREADS_0.3
+ %endif
+@@ -32,6 +33,7 @@
+ libdl {
+ GLIBC_2.0
+ GLIBC_2.1
++ GLIBC_2.3.3
+ }
+ libm {
+ GLIBC_2.0
+@@ -71,6 +73,7 @@
+ GLIBC_2.2.3
+ GLIBC_2.2.6
+ GLIBC_2.3.2
++ GLIBC_2.3.3
+ GLIBC_PRIVATE
+ }
+ libresolv {
+@@ -82,6 +85,7 @@
+ GLIBC_2.1
+ GLIBC_2.2
+ GLIBC_2.3
++ GLIBC_2.3.3
+ }
+ libutil {
+ GLIBC_2.0
+@@ -96,6 +100,7 @@
+ GLIBC_2.1.3
+ GLIBC_2.2.3
+ GLIBC_2.3
++ GLIBC_2.3.3
+ }
+ libanl {
+ GLIBC_2.2.3
+--- glibc-2.3.2/abilist/ld.abilist 1969-12-31 19:00:00.000000000 -0500
++++ glibc-2.3.2/abilist/ld.abilist 2003-04-01 23:39:52.000000000 -0500
+@@ -0,0 +1,35 @@
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.0 A
++ _r_debug D 0x14
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __libc_memalign F
++ calloc F
++ free F
++ malloc F
++ realloc F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.1 A
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ _dl_mcount F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ _r_debug D 0x28
++GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls
++ GLIBC_2.2 A
++GLIBC_2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls x86_64-.*-linux.*/tls
++ GLIBC_2.3 A
++GLIBC_2.3 i.86-.*-linux.*/thread i.86-.*-linux.*/tls
++ ___tls_get_addr F
++GLIBC_2.3 i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread x86_64-.*-linux.*/tls
++ __tls_get_addr F
++GLIBC_2.3 s390-.*-linux.*/tls s390x-.*-linux.*/tls
++ __tls_get_offset F
+--- glibc-2.3.2/abilist/libBrokenLocale.abilist 1969-12-31 19:00:00.000000000 -0500
++++ glibc-2.3.2/abilist/libBrokenLocale.abilist 2003-04-01 23:39:52.000000000 -0500
+@@ -0,0 +1,13 @@
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.0 A
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __ctype_get_mb_cur_max F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2 A
++GLIBC_2.3 powerpc64-.*-linux.*/thread
++ GLIBC_2.3 A
+--- glibc-2.3.2/abilist/libanl.abilist 1969-12-31 19:00:00.000000000 -0500
++++ glibc-2.3.2/abilist/libanl.abilist 2003-04-01 23:39:52.000000000 -0500
+@@ -0,0 +1,13 @@
++GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2.3 A
++GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ gai_cancel F
++ gai_error F
++ gai_suspend F
++ getaddrinfo_a F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++GLIBC_2.3 powerpc64-.*-linux.*/thread
++ GLIBC_2.3 A
+--- glibc-2.3.2/abilist/libc.abilist 1969-12-31 19:00:00.000000000 -0500
++++ glibc-2.3.2/abilist/libc.abilist 2003-04-01 23:39:52.000000000 -0500
+@@ -0,0 +1,2231 @@
++GCC_3.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GCC_3.0 A
++ _Unwind_Find_FDE F
++ __deregister_frame_info_bases F
++ __register_frame_info_bases F
++ __register_frame_info_table_bases F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls
++ __fpu_control D 0x2
++ vm86 F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.0 A
++ _IO_stderr_ D 0x50
++ _IO_stdin_ D 0x50
++ _IO_stdout_ D 0x50
++ __strtoq_internal F
++ __strtouq_internal F
++ _sys_errlist D 0x1ec
++ _sys_siglist D 0x80
++ res_init F
++ sys_errlist D 0x1ec
++ sys_sigabbrev D 0x80
++ sys_siglist D 0x80
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.1.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ getaliasbyname_r F
++ getaliasent_r F
++ getgrent_r F
++ getgrgid_r F
++ getgrnam_r F
++ gethostbyaddr_r F
++ gethostbyname2_r F
++ gethostbyname_r F
++ gethostent_r F
++ getnetbyaddr_r F
++ getnetbyname_r F
++ getnetent_r F
++ getprotobyname_r F
++ getprotobynumber_r F
++ getprotoent_r F
++ getpwent_r F
++ getpwnam_r F
++ getpwuid_r F
++ getrpcbyname_r F
++ getrpcbynumber_r F
++ getrpcent_r F
++ getservbyname_r F
++ getservbyport_r F
++ getservent_r F
++ getspent_r F
++ getspnam_r F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++ _sys_nerr D 0x4
++ sys_nerr D 0x4
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ _IO_do_write F
++ _IO_fclose F
++ _IO_fdopen F
++ _IO_file_attach F
++ _IO_file_close_it F
++ _IO_file_fopen F
++ _IO_file_init F
++ _IO_file_overflow F
++ _IO_file_seekoff F
++ _IO_file_setbuf F
++ _IO_file_sync F
++ _IO_file_underflow F
++ _IO_file_write F
++ _IO_file_xsputn F
++ _IO_fopen F
++ _IO_popen F
++ _IO_proc_close F
++ _IO_proc_open F
++ fclose F
++ fdopen F
++ fopen F
++ pclose F
++ popen F
++ pthread_attr_init F
++ tmpfile F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ chown F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ fnmatch F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ _IO_fgetpos F
++ _IO_fsetpos F
++ fgetpos F
++ fopencookie F
++ fsetpos F
++ getrlimit F
++ localeconv F
++ msgctl F
++ semctl F
++ setrlimit F
++ shmctl F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ re_max_failures D 0x4
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ pthread_cond_broadcast F
++ pthread_cond_destroy F
++ pthread_cond_init F
++ pthread_cond_signal F
++ pthread_cond_wait F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++ realpath F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ _IO_adjust_column F
++ _IO_default_doallocate F
++ _IO_default_finish F
++ _IO_default_pbackfail F
++ _IO_default_uflow F
++ _IO_default_xsgetn F
++ _IO_default_xsputn F
++ _IO_doallocbuf F
++ _IO_feof F
++ _IO_ferror F
++ _IO_fflush F
++ _IO_fgets F
++ _IO_file_close F
++ _IO_file_doallocate F
++ _IO_file_open F
++ _IO_file_read F
++ _IO_file_seek F
++ _IO_file_stat F
++ _IO_flockfile F
++ _IO_flush_all F
++ _IO_flush_all_linebuffered F
++ _IO_fprintf F
++ _IO_fputs F
++ _IO_fread F
++ _IO_free_backup_area F
++ _IO_ftell F
++ _IO_ftrylockfile F
++ _IO_funlockfile F
++ _IO_fwrite F
++ _IO_getc F
++ _IO_getline F
++ _IO_gets F
++ _IO_init F
++ _IO_init_marker F
++ _IO_link_in F
++ _IO_marker_delta F
++ _IO_marker_difference F
++ _IO_padn F
++ _IO_peekc_locked F
++ _IO_printf F
++ _IO_putc F
++ _IO_puts F
++ _IO_remove_marker F
++ _IO_seekmark F
++ _IO_seekoff F
++ _IO_seekpos F
++ _IO_setb F
++ _IO_setbuffer F
++ _IO_setvbuf F
++ _IO_sgetn F
++ _IO_sprintf F
++ _IO_sputbackc F
++ _IO_sscanf F
++ _IO_str_init_readonly F
++ _IO_str_init_static F
++ _IO_str_overflow F
++ _IO_str_pbackfail F
++ _IO_str_seekoff F
++ _IO_str_underflow F
++ _IO_sungetc F
++ _IO_switch_to_get_mode F
++ _IO_un_link F
++ _IO_ungetc F
++ _IO_unsave_markers F
++ _IO_vfprintf F
++ _IO_vfscanf F
++ _IO_vsprintf F
++ __adjtimex F
++ __argz_count F
++ __argz_next F
++ __argz_stringify F
++ __assert_fail F
++ __assert_perror_fail F
++ __bsd_getpgrp F
++ __check_rhosts_file D 0x4
++ __close F
++ __cmsg_nxthdr F
++ __connect F
++ __ctype_get_mb_cur_max F
++ __daylight D 0x4
++ __dcgettext F
++ __default_morecore F
++ __dgettext F
++ __dup2 F
++ __errno_location F
++ __fcntl F
++ __ffs F
++ __finite F
++ __finitef F
++ __finitel F
++ __fxstat F
++ __getdelim F
++ __getpagesize F
++ __getpgid F
++ __getpid F
++ __gettimeofday F
++ __gmtime_r F
++ __h_errno_location F
++ __isinf F
++ __isinff F
++ __isinfl F
++ __isnan F
++ __isnanf F
++ __isnanl F
++ __iswctype F
++ __ivaliduser F
++ __libc_calloc F
++ __libc_free F
++ __libc_init_first F
++ __libc_mallinfo F
++ __libc_malloc F
++ __libc_mallopt F
++ __libc_memalign F
++ __libc_pvalloc F
++ __libc_realloc F
++ __libc_start_main F
++ __libc_valloc F
++ __lseek F
++ __lxstat F
++ __mbrlen F
++ __mbrtowc F
++ __mempcpy F
++ __monstartup F
++ __nss_configure_lookup F
++ __nss_database_lookup F
++ __nss_group_lookup F
++ __nss_hosts_lookup F
++ __nss_next F
++ __nss_passwd_lookup F
++ __open F
++ __overflow F
++ __pipe F
++ __printf_fp F
++ __profile_frequency F
++ __read F
++ __res_randomid F
++ __sbrk F
++ __sched_get_priority_max F
++ __sched_get_priority_min F
++ __sched_getparam F
++ __sched_getscheduler F
++ __sched_setscheduler F
++ __sched_yield F
++ __secure_getenv F
++ __select F
++ __send F
++ __setpgid F
++ __sigaction F
++ __sigaddset F
++ __sigdelset F
++ __sigismember F
++ __sigpause F
++ __sigsetjmp F
++ __stpcpy F
++ __stpncpy F
++ __strcasecmp F
++ __strdup F
++ __strerror_r F
++ __strtod_internal F
++ __strtof_internal F
++ __strtok_r F
++ __strtol_internal F
++ __strtold_internal F
++ __strtoll_internal F
++ __strtoul_internal F
++ __strtoull_internal F
++ __sysv_signal F
++ __uflow F
++ __underflow F
++ __vfscanf F
++ __vsnprintf F
++ __vsscanf F
++ __wait F
++ __waitpid F
++ __wcstod_internal F
++ __wcstof_internal F
++ __wcstol_internal F
++ __wcstold_internal F
++ __wcstoll_internal F
++ __wcstoul_internal F
++ __wcstoull_internal F
++ __write F
++ __xmknod F
++ __xpg_basename F
++ __xstat F
++ _exit F
++ _libc_intl_domainname D 0x5
++ _longjmp F
++ _mcleanup F
++ _mcount F
++ _nl_msg_cat_cntr D 0x4
++ _obstack_allocated_p F
++ _obstack_begin F
++ _obstack_begin_1 F
++ _obstack_free F
++ _obstack_memory_used F
++ _obstack_newchunk F
++ _rpc_dtablesize F
++ _seterr_reply F
++ _setjmp F
++ _tolower F
++ _toupper F
++ a64l F
++ abort F
++ abs F
++ accept F
++ access F
++ acct F
++ addmntent F
++ adjtime F
++ adjtimex F
++ advance F
++ alarm F
++ alphasort F
++ argz_add F
++ argz_add_sep F
++ argz_append F
++ argz_count F
++ argz_create F
++ argz_create_sep F
++ argz_delete F
++ argz_extract F
++ argz_insert F
++ argz_next F
++ argz_replace F
++ argz_stringify F
++ asctime F
++ asctime_r F
++ asprintf F
++ atof F
++ atoi F
++ atol F
++ atoll F
++ authnone_create F
++ authunix_create F
++ authunix_create_default F
++ basename F
++ bcmp F
++ bcopy F
++ bdflush F
++ bind F
++ bindresvport F
++ bindtextdomain F
++ brk F
++ bsd_signal F
++ bsearch F
++ btowc F
++ bzero F
++ calloc F
++ callrpc F
++ canonicalize_file_name F
++ catclose F
++ catgets F
++ catopen F
++ cfgetispeed F
++ cfgetospeed F
++ cfmakeraw F
++ cfree F
++ cfsetispeed F
++ cfsetospeed F
++ cfsetspeed F
++ chdir F
++ chflags F
++ chmod F
++ chroot F
++ clearenv F
++ clearerr F
++ clearerr_unlocked F
++ clnt_broadcast F
++ clnt_create F
++ clnt_pcreateerror F
++ clnt_perrno F
++ clnt_perror F
++ clnt_spcreateerror F
++ clnt_sperrno F
++ clnt_sperror F
++ clntraw_create F
++ clnttcp_create F
++ clntudp_bufcreate F
++ clntudp_create F
++ clock F
++ close F
++ closedir F
++ closelog F
++ confstr F
++ connect F
++ copysign F
++ copysignf F
++ copysignl F
++ creat F
++ create_module F
++ ctermid F
++ ctime F
++ ctime_r F
++ cuserid F
++ daemon F
++ daylight D 0x4
++ dcgettext F
++ delete_module F
++ dgettext F
++ difftime F
++ dirfd F
++ dirname F
++ div F
++ dprintf F
++ drand48 F
++ drand48_r F
++ dup F
++ dup2 F
++ dysize F
++ ecvt F
++ ecvt_r F
++ endaliasent F
++ endfsent F
++ endgrent F
++ endhostent F
++ endmntent F
++ endnetent F
++ endnetgrent F
++ endprotoent F
++ endpwent F
++ endrpcent F
++ endservent F
++ endspent F
++ endttyent F
++ endusershell F
++ endutent F
++ envz_add F
++ envz_entry F
++ envz_get F
++ envz_merge F
++ envz_remove F
++ envz_strip F
++ erand48 F
++ erand48_r F
++ err F
++ error F
++ error_at_line F
++ error_message_count D 0x4
++ error_one_per_line D 0x4
++ errx F
++ ether_aton F
++ ether_aton_r F
++ ether_hostton F
++ ether_line F
++ ether_ntoa F
++ ether_ntoa_r F
++ ether_ntohost F
++ euidaccess F
++ execl F
++ execle F
++ execlp F
++ execv F
++ execve F
++ execvp F
++ exit F
++ fchdir F
++ fchflags F
++ fchmod F
++ fchown F
++ fcloseall F
++ fcntl F
++ fcvt F
++ fcvt_r F
++ fdatasync F
++ feof F
++ feof_unlocked F
++ ferror F
++ ferror_unlocked F
++ fexecve F
++ fflush F
++ fflush_unlocked F
++ ffs F
++ fgetc F
++ fgetgrent F
++ fgetgrent_r F
++ fgetpwent F
++ fgetpwent_r F
++ fgets F
++ fgetspent F
++ fgetspent_r F
++ fileno F
++ fileno_unlocked F
++ finite F
++ finitef F
++ finitel F
++ flock F
++ flockfile F
++ fork F
++ fpathconf F
++ fprintf F
++ fputc F
++ fputc_unlocked F
++ fputs F
++ fread F
++ free F
++ freeaddrinfo F
++ freopen F
++ frexp F
++ frexpf F
++ frexpl F
++ fscanf F
++ fseek F
++ fstatfs F
++ fsync F
++ ftell F
++ ftime F
++ ftok F
++ ftruncate F
++ ftrylockfile F
++ fts_children F
++ fts_close F
++ fts_open F
++ fts_read F
++ fts_set F
++ ftw F
++ funlockfile F
++ fwrite F
++ gcvt F
++ get_avphys_pages F
++ get_current_dir_name F
++ get_kernel_syms F
++ get_myaddress F
++ get_nprocs F
++ get_nprocs_conf F
++ get_phys_pages F
++ getaddrinfo F
++ getaliasbyname F
++ getaliasent F
++ getc F
++ getc_unlocked F
++ getchar F
++ getchar_unlocked F
++ getcwd F
++ getdelim F
++ getdirentries F
++ getdomainname F
++ getdtablesize F
++ getegid F
++ getenv F
++ geteuid F
++ getfsent F
++ getfsfile F
++ getfsspec F
++ getgid F
++ getgrent F
++ getgrgid F
++ getgrnam F
++ getgroups F
++ gethostbyaddr F
++ gethostbyname F
++ gethostbyname2 F
++ gethostent F
++ gethostid F
++ gethostname F
++ getitimer F
++ getline F
++ getlogin F
++ getlogin_r F
++ getmntent F
++ getmntent_r F
++ getnetbyaddr F
++ getnetbyname F
++ getnetent F
++ getnetgrent F
++ getnetgrent_r F
++ getopt F
++ getopt_long F
++ getopt_long_only F
++ getpagesize F
++ getpass F
++ getpeername F
++ getpgid F
++ getpgrp F
++ getpid F
++ getppid F
++ getpriority F
++ getprotobyname F
++ getprotobynumber F
++ getprotoent F
++ getpublickey F
++ getpw F
++ getpwent F
++ getpwnam F
++ getpwuid F
++ getresgid F
++ getresuid F
++ getrpcbyname F
++ getrpcbynumber F
++ getrpcent F
++ getrpcport F
++ getrusage F
++ gets F
++ getsecretkey F
++ getservbyname F
++ getservbyport F
++ getservent F
++ getsid F
++ getsockname F
++ getsockopt F
++ getspent F
++ getspnam F
++ getsubopt F
++ gettext F
++ gettimeofday F
++ getttyent F
++ getttynam F
++ getuid F
++ getusershell F
++ getutent F
++ getutent_r F
++ getutid F
++ getutid_r F
++ getutline F
++ getutline_r F
++ getw F
++ getwd F
++ glob F
++ glob_pattern_p F
++ globfree F
++ gmtime F
++ gmtime_r F
++ group_member F
++ gsignal F
++ gtty F
++ h_nerr D 0x4
++ hasmntopt F
++ hcreate F
++ hcreate_r F
++ hdestroy F
++ hdestroy_r F
++ herror F
++ hsearch F
++ hsearch_r F
++ hstrerror F
++ htonl F
++ htons F
++ index F
++ inet_addr F
++ inet_aton F
++ inet_lnaof F
++ inet_makeaddr F
++ inet_netof F
++ inet_network F
++ inet_nsap_addr F
++ inet_nsap_ntoa F
++ inet_ntoa F
++ inet_ntop F
++ inet_pton F
++ init_module F
++ initgroups F
++ initstate F
++ initstate_r F
++ innetgr F
++ insque F
++ ioctl F
++ iruserok F
++ isalnum F
++ isalpha F
++ isascii F
++ isatty F
++ isblank F
++ iscntrl F
++ isdigit F
++ isfdtype F
++ isgraph F
++ isinf F
++ isinff F
++ isinfl F
++ islower F
++ isnan F
++ isnanf F
++ isnanl F
++ isprint F
++ ispunct F
++ isspace F
++ isupper F
++ iswalnum F
++ iswalpha F
++ iswcntrl F
++ iswctype F
++ iswdigit F
++ iswgraph F
++ iswlower F
++ iswprint F
++ iswpunct F
++ iswspace F
++ iswupper F
++ iswxdigit F
++ isxdigit F
++ jrand48 F
++ jrand48_r F
++ kill F
++ killpg F
++ klogctl F
++ l64a F
++ labs F
++ lchown F
++ lckpwdf F
++ lcong48 F
++ lcong48_r F
++ ldexp F
++ ldexpf F
++ ldexpl F
++ ldiv F
++ lfind F
++ link F
++ listen F
++ llabs F
++ lldiv F
++ llseek F
++ localtime F
++ localtime_r F
++ lockf F
++ longjmp F
++ lrand48 F
++ lrand48_r F
++ lsearch F
++ lseek F
++ madvise F
++ mallinfo F
++ malloc F
++ malloc_get_state F
++ malloc_set_state F
++ malloc_stats F
++ malloc_trim F
++ malloc_usable_size F
++ mallopt F
++ mblen F
++ mbrlen F
++ mbrtowc F
++ mbsinit F
++ mbsnrtowcs F
++ mbsrtowcs F
++ mbstowcs F
++ mbtowc F
++ mcheck F
++ memalign F
++ memccpy F
++ memchr F
++ memcmp F
++ memcpy F
++ memfrob F
++ memmem F
++ memmove F
++ memset F
++ mkdir F
++ mkfifo F
++ mkstemp F
++ mktemp F
++ mktime F
++ mlock F
++ mlockall F
++ mmap F
++ modf F
++ modff F
++ modfl F
++ monstartup F
++ mount F
++ mprobe F
++ mprotect F
++ mrand48 F
++ mrand48_r F
++ mremap F
++ msgget F
++ msgrcv F
++ msgsnd F
++ msync F
++ mtrace F
++ munlock F
++ munlockall F
++ munmap F
++ muntrace F
++ nanosleep F
++ nfsservctl F
++ nice F
++ nl_langinfo F
++ nrand48 F
++ nrand48_r F
++ ntohl F
++ ntohs F
++ obstack_exit_failure D 0x4
++ obstack_free F
++ obstack_printf F
++ obstack_vprintf F
++ on_exit F
++ open F
++ open_memstream F
++ opendir F
++ openlog F
++ opterr D 0x4
++ optind D 0x4
++ optopt D 0x4
++ parse_printf_format F
++ pathconf F
++ pause F
++ perror F
++ personality F
++ pipe F
++ pmap_getmaps F
++ pmap_getport F
++ pmap_rmtcall F
++ pmap_set F
++ pmap_unset F
++ poll F
++ prctl F
++ printf F
++ profil F
++ pselect F
++ psignal F
++ pthread_attr_destroy F
++ pthread_attr_getdetachstate F
++ pthread_attr_getinheritsched F
++ pthread_attr_getschedparam F
++ pthread_attr_getschedpolicy F
++ pthread_attr_getscope F
++ pthread_attr_setdetachstate F
++ pthread_attr_setinheritsched F
++ pthread_attr_setschedparam F
++ pthread_attr_setschedpolicy F
++ pthread_attr_setscope F
++ pthread_condattr_destroy F
++ pthread_condattr_init F
++ pthread_equal F
++ pthread_exit F
++ pthread_getschedparam F
++ pthread_mutex_destroy F
++ pthread_mutex_init F
++ pthread_mutex_lock F
++ pthread_mutex_unlock F
++ pthread_self F
++ pthread_setcancelstate F
++ pthread_setcanceltype F
++ pthread_setschedparam F
++ ptrace F
++ putc F
++ putc_unlocked F
++ putchar F
++ putchar_unlocked F
++ putenv F
++ putpwent F
++ puts F
++ putspent F
++ pututline F
++ putw F
++ pvalloc F
++ qecvt F
++ qecvt_r F
++ qfcvt F
++ qfcvt_r F
++ qgcvt F
++ qsort F
++ query_module F
++ quotactl F
++ raise F
++ rand F
++ rand_r F
++ random F
++ random_r F
++ rcmd F
++ re_comp F
++ re_compile_fastmap F
++ re_compile_pattern F
++ re_exec F
++ re_match F
++ re_match_2 F
++ re_search F
++ re_search_2 F
++ re_set_registers F
++ re_set_syntax F
++ read F
++ readdir F
++ readdir_r F
++ readlink F
++ readv F
++ realloc F
++ reboot F
++ recv F
++ recvfrom F
++ recvmsg F
++ regcomp F
++ regerror F
++ regexec F
++ regfree F
++ register_printf_function F
++ registerrpc F
++ remove F
++ remque F
++ rename F
++ revoke F
++ rewind F
++ rewinddir F
++ rexec F
++ rexecoptions D 0x4
++ rindex F
++ rmdir F
++ rpmatch F
++ rresvport F
++ ruserok F
++ ruserpass F
++ sbrk F
++ scalbn F
++ scalbnf F
++ scalbnl F
++ scandir F
++ scanf F
++ sched_get_priority_max F
++ sched_get_priority_min F
++ sched_getparam F
++ sched_getscheduler F
++ sched_rr_get_interval F
++ sched_setparam F
++ sched_setscheduler F
++ sched_yield F
++ seed48 F
++ seed48_r F
++ seekdir F
++ select F
++ semget F
++ semop F
++ send F
++ sendmsg F
++ sendto F
++ setaliasent F
++ setbuf F
++ setbuffer F
++ setcontext F
++ setdomainname F
++ setegid F
++ setenv F
++ seteuid F
++ setfsent F
++ setfsgid F
++ setfsuid F
++ setgid F
++ setgrent F
++ setgroups F
++ sethostent F
++ sethostid F
++ sethostname F
++ setitimer F
++ setjmp F
++ setlinebuf F
++ setlocale F
++ setlogin F
++ setlogmask F
++ setmntent F
++ setnetent F
++ setnetgrent F
++ setpgid F
++ setpgrp F
++ setpriority F
++ setprotoent F
++ setpwent F
++ setregid F
++ setresgid F
++ setresuid F
++ setreuid F
++ setrpcent F
++ setservent F
++ setsid F
++ setsockopt F
++ setspent F
++ setstate F
++ setstate_r F
++ settimeofday F
++ setttyent F
++ setuid F
++ setusershell F
++ setutent F
++ setvbuf F
++ sgetspent F
++ sgetspent_r F
++ shmat F
++ shmdt F
++ shmget F
++ shutdown F
++ sigaction F
++ sigaddset F
++ sigaltstack F
++ sigandset F
++ sigblock F
++ sigdelset F
++ sigemptyset F
++ sigfillset F
++ siggetmask F
++ siginterrupt F
++ sigisemptyset F
++ sigismember F
++ siglongjmp F
++ signal F
++ sigorset F
++ sigpause F
++ sigpending F
++ sigprocmask F
++ sigreturn F
++ sigsetmask F
++ sigstack F
++ sigsuspend F
++ sigvec F
++ sigwait F
++ sleep F
++ snprintf F
++ socket F
++ socketpair F
++ sprintf F
++ srand F
++ srand48 F
++ srand48_r F
++ srandom F
++ srandom_r F
++ sscanf F
++ ssignal F
++ sstk F
++ statfs F
++ step F
++ stime F
++ stpcpy F
++ stpncpy F
++ strcasecmp F
++ strcat F
++ strchr F
++ strcmp F
++ strcoll F
++ strcpy F
++ strcspn F
++ strdup F
++ strerror F
++ strerror_r F
++ strfmon F
++ strfry F
++ strftime F
++ strlen F
++ strncasecmp F
++ strncat F
++ strncmp F
++ strncpy F
++ strndup F
++ strnlen F
++ strpbrk F
++ strptime F
++ strrchr F
++ strsep F
++ strsignal F
++ strspn F
++ strstr F
++ strtod F
++ strtof F
++ strtok F
++ strtok_r F
++ strtol F
++ strtold F
++ strtoll F
++ strtoq F
++ strtoul F
++ strtoull F
++ strtouq F
++ strxfrm F
++ stty F
++ svc_exit F
++ svc_fdset D 0x80
++ svc_getreq F
++ svc_getreqset F
++ svc_register F
++ svc_run F
++ svc_sendreply F
++ svc_unregister F
++ svcerr_auth F
++ svcerr_decode F
++ svcerr_noproc F
++ svcerr_noprog F
++ svcerr_progvers F
++ svcerr_systemerr F
++ svcerr_weakauth F
++ svcfd_create F
++ svcraw_create F
++ svctcp_create F
++ svcudp_bufcreate F
++ svcudp_create F
++ svcudp_enablecache F
++ swab F
++ swapoff F
++ swapon F
++ symlink F
++ sync F
++ syscall F
++ sysconf F
++ sysctl F
++ sysinfo F
++ syslog F
++ system F
++ tcdrain F
++ tcflow F
++ tcflush F
++ tcgetattr F
++ tcgetpgrp F
++ tcsendbreak F
++ tcsetattr F
++ tcsetpgrp F
++ tdelete F
++ telldir F
++ tempnam F
++ textdomain F
++ tfind F
++ time F
++ timegm F
++ timelocal F
++ times F
++ tmpnam F
++ tmpnam_r F
++ toascii F
++ tolower F
++ toupper F
++ towctrans F
++ towlower F
++ towupper F
++ tr_break F
++ truncate F
++ tsearch F
++ ttyname F
++ ttyname_r F
++ ttyslot F
++ twalk F
++ tzset F
++ ualarm F
++ ulckpwdf F
++ ulimit F
++ umask F
++ umount F
++ uname F
++ ungetc F
++ unlink F
++ unsetenv F
++ updwtmp F
++ uselib F
++ usleep F
++ ustat F
++ utime F
++ utimes F
++ utmpname F
++ valloc F
++ vasprintf F
++ vdprintf F
++ verr F
++ verrx F
++ vfork F
++ vfprintf F
++ vfscanf F
++ vhangup F
++ vlimit F
++ vprintf F
++ vscanf F
++ vsnprintf F
++ vsprintf F
++ vsscanf F
++ vsyslog F
++ vtimes F
++ vwarn F
++ vwarnx F
++ wait F
++ wait3 F
++ wait4 F
++ waitpid F
++ warn F
++ warnx F
++ wcpcpy F
++ wcpncpy F
++ wcrtomb F
++ wcscat F
++ wcschr F
++ wcscmp F
++ wcscoll F
++ wcscpy F
++ wcscspn F
++ wcsdup F
++ wcslen F
++ wcsncat F
++ wcsncmp F
++ wcsncpy F
++ wcsnrtombs F
++ wcspbrk F
++ wcsrchr F
++ wcsrtombs F
++ wcsspn F
++ wcsstr F
++ wcstod F
++ wcstof F
++ wcstok F
++ wcstol F
++ wcstold F
++ wcstombs F
++ wcstoq F
++ wcstoul F
++ wcstouq F
++ wcswidth F
++ wcsxfrm F
++ wctob F
++ wctomb F
++ wctrans F
++ wctype F
++ wcwidth F
++ wmemchr F
++ wmemcmp F
++ wmemcpy F
++ wmemmove F
++ wmemset F
++ write F
++ writev F
++ xdr_accepted_reply F
++ xdr_array F
++ xdr_authunix_parms F
++ xdr_bool F
++ xdr_bytes F
++ xdr_callhdr F
++ xdr_callmsg F
++ xdr_char F
++ xdr_cryptkeyarg F
++ xdr_cryptkeyarg2 F
++ xdr_cryptkeyres F
++ xdr_des_block F
++ xdr_double F
++ xdr_enum F
++ xdr_float F
++ xdr_free F
++ xdr_int F
++ xdr_key_netstarg F
++ xdr_key_netstres F
++ xdr_keybuf F
++ xdr_keystatus F
++ xdr_long F
++ xdr_netobj F
++ xdr_opaque F
++ xdr_opaque_auth F
++ xdr_pmap F
++ xdr_pmaplist F
++ xdr_pointer F
++ xdr_reference F
++ xdr_rejected_reply F
++ xdr_replymsg F
++ xdr_rmtcall_args F
++ xdr_rmtcallres F
++ xdr_short F
++ xdr_string F
++ xdr_u_char F
++ xdr_u_int F
++ xdr_u_long F
++ xdr_u_short F
++ xdr_union F
++ xdr_vector F
++ xdr_void F
++ xdr_wrapstring F
++ xdrmem_create F
++ xdrrec_create F
++ xdrrec_endofrecord F
++ xdrrec_eof F
++ xdrrec_skiprecord F
++ xdrstdio_create F
++ xencrypt F
++ xprt_register F
++ xprt_unregister F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __fork F
++ _nl_default_dirname D 0x12
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __bzero F
++ __clone F
++ clone F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls
++ __divdi3 F
++ __moddi3 F
++ __udivdi3 F
++ __umoddi3 F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ atexit F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls
++ __deregister_frame F
++ __frame_state_for F
++ __register_frame F
++ __register_frame_info_table F
++ __register_frame_table F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ __deregister_frame_info F
++ __register_frame_info F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2 sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ _IO_file_jumps D 0x54
++ _IO_list_all D 0x4
++ __after_morecore_hook D 0x4
++ __ctype32_b D 0x4
++ __ctype_b D 0x4
++ __ctype_tolower D 0x4
++ __ctype_toupper D 0x4
++ __curbrk D 0x4
++ __environ D 0x4
++ __free_hook D 0x4
++ __malloc_hook D 0x4
++ __malloc_initialize_hook D 0x4
++ __memalign_hook D 0x4
++ __morecore D 0x4
++ __progname D 0x4
++ __progname_full D 0x4
++ __rcmd_errstr D 0x4
++ __realloc_hook D 0x4
++ __timezone D 0x4
++ __tzname D 0x8
++ _environ D 0x4
++ _nl_domain_bindings D 0x4
++ _null_auth D 0xc
++ _obstack D 0x4
++ environ D 0x4
++ error_print_progname D 0x4
++ h_errlist D 0x14
++ loc1 D 0x4
++ loc2 D 0x4
++ locs D 0x4
++ mallwatch D 0x4
++ obstack_alloc_failed_handler D 0x4
++ optarg D 0x4
++ program_invocation_name D 0x4
++ program_invocation_short_name D 0x4
++ re_syntax_options D 0x4
++ rpc_createerr D 0x10
++ stderr D 0x4
++ stdin D 0x4
++ stdout D 0x4
++ svcauthdes_stats D 0xc
++ timezone D 0x4
++ tzname D 0x8
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls s390-.*-linux.*/tls
++ ___brk_addr D 0x4
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ mcount F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls
++ ioperm F
++ iopl F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls
++ _errno D 0x4
++ _h_errno D 0x4
++ errno D 0x4
++ h_errno D 0x4
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2 sh[34].*-.*-linux.*/notls
++ _res D 0x200
++GLIBC_2.0 m68.*-.*-linux.*/notls
++ _res D 0x1fe
++ cacheflush F
++GLIBC_2.0 m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __fpu_control D 0x4
++GLIBC_2.0 powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls
++ __ashldi3 F
++ __ashrdi3 F
++ __cmpdi2 F
++ __fixdfdi F
++ __fixsfdi F
++ __fixunsdfdi F
++ __fixunssfdi F
++ __floatdidf F
++ __floatdisf F
++ __lshrdi3 F
++ __ucmpdi2 F
++GLIBC_2.1.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls
++ __memcpy_by2 F
++ __memcpy_by4 F
++ __memcpy_g F
++ __mempcpy_by2 F
++ __mempcpy_by4 F
++ __mempcpy_byn F
++ __memset_ccn_by2 F
++ __memset_ccn_by4 F
++ __memset_gcn_by2 F
++ __memset_gcn_by4 F
++ __stpcpy_g F
++ __strcat_c F
++ __strcat_g F
++ __strchr_c F
++ __strchr_g F
++ __strchrnul_c F
++ __strchrnul_g F
++ __strcmp_gg F
++ __strcpy_g F
++ __strcspn_cg F
++ __strcspn_g F
++ __strlen_g F
++ __strncat_g F
++ __strncmp_g F
++ __strncpy_by2 F
++ __strncpy_by4 F
++ __strncpy_byn F
++ __strncpy_gg F
++ __strpbrk_cg F
++ __strpbrk_g F
++ __strrchr_c F
++ __strrchr_g F
++ __strspn_cg F
++ __strspn_g F
++ __strstr_cg F
++ __strstr_g F
++GLIBC_2.1.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.1.1 A
++GLIBC_2.1.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ _Exit F
++ __mempcpy_small F
++ __stpcpy_small F
++ __strcpy_small F
++ __strcspn_c1 F
++ __strcspn_c2 F
++ __strcspn_c3 F
++ __strpbrk_c2 F
++ __strpbrk_c3 F
++ __strsep_1c F
++ __strsep_2c F
++ __strsep_3c F
++ __strsep_g F
++ __strspn_c1 F
++ __strspn_c2 F
++ __strspn_c3 F
++ __strtok_r_1c F
++ __strverscmp F
++ getutmp F
++ getutmpx F
++ imaxabs F
++ imaxdiv F
++ strchrnul F
++ xdr_hyper F
++ xdr_int64_t F
++ xdr_longlong_t F
++ xdr_u_hyper F
++ xdr_u_longlong_t F
++ xdr_uint64_t F
++GLIBC_2.1.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.1.2 A
++GLIBC_2.1.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __vfork F
++GLIBC_2.1.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.1.3 A
++GLIBC_2.1.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __cxa_atexit F
++ __cxa_finalize F
++ __sigsuspend F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls
++ scalbln F
++ scalblnf F
++ scalblnl F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.1 A
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.2 ia64-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ wordexp F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ _IO_fgetpos64 F
++ _IO_fsetpos64 F
++ __fxstat64 F
++ __lxstat64 F
++ __xstat64 F
++ fgetpos64 F
++ fsetpos64 F
++ getrlimit64 F
++ readdir64 F
++ readdir64_r F
++ scandir64 F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ glob64 F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ alphasort64 F
++ versionsort64 F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ _IO_file_finish F
++ _IO_getline_info F
++ __asprintf F
++ __backtrace F
++ __backtrace_symbols F
++ __backtrace_symbols_fd F
++ __duplocale F
++ __freelocale F
++ __isalnum_l F
++ __isalpha_l F
++ __isascii_l F
++ __isblank_l F
++ __iscntrl_l F
++ __isdigit_l F
++ __isgraph_l F
++ __islower_l F
++ __isprint_l F
++ __ispunct_l F
++ __isspace_l F
++ __isupper_l F
++ __iswalnum_l F
++ __iswalpha_l F
++ __iswblank_l F
++ __iswcntrl_l F
++ __iswctype_l F
++ __iswdigit_l F
++ __iswgraph_l F
++ __iswlower_l F
++ __iswprint_l F
++ __iswpunct_l F
++ __iswspace_l F
++ __iswupper_l F
++ __iswxdigit_l F
++ __isxdigit_l F
++ __libc_allocate_rtsig F
++ __libc_current_sigrtmax F
++ __libc_current_sigrtmin F
++ __libc_freeres F
++ __libc_sa_len F
++ __newlocale F
++ __poll F
++ __pread64 F
++ __pwrite64 F
++ __rawmemchr F
++ __signbit F
++ __signbitf F
++ __strcasecmp_l F
++ __strcasestr F
++ __strcoll_l F
++ __strfmon_l F
++ __strncasecmp_l F
++ __strtod_l F
++ __strtof_l F
++ __strtol_l F
++ __strtold_l F
++ __strtoll_l F
++ __strtoul_l F
++ __strtoull_l F
++ __strxfrm_l F
++ __toascii_l F
++ __tolower_l F
++ __toupper_l F
++ __towctrans F
++ __towctrans_l F
++ __towlower_l F
++ __towupper_l F
++ __wcscasecmp_l F
++ __wcscoll_l F
++ __wcsncasecmp_l F
++ __wcstod_l F
++ __wcstof_l F
++ __wcstol_l F
++ __wcstold_l F
++ __wcstoll_l F
++ __wcstoul_l F
++ __wcstoull_l F
++ __wcsxfrm_l F
++ __wctype_l F
++ _argp_unlock_xxx F
++ _authenticate F
++ _dl_mcount_wrapper F
++ _dl_mcount_wrapper_check F
++ addseverity F
++ argp_err_exit_status D 0x4
++ argp_error F
++ argp_failure F
++ argp_help F
++ argp_parse F
++ argp_state_help F
++ argp_usage F
++ authdes_create F
++ authdes_getucred F
++ authdes_pk_create F
++ backtrace F
++ backtrace_symbols F
++ backtrace_symbols_fd F
++ capget F
++ capset F
++ cbc_crypt F
++ clntunix_create F
++ creat64 F
++ des_setparity F
++ ecb_crypt F
++ endutxent F
++ fattach F
++ fdetach F
++ ffsl F
++ ffsll F
++ fgetc_unlocked F
++ fgets_unlocked F
++ fmtmsg F
++ fopen64 F
++ fputs_unlocked F
++ fread_unlocked F
++ freopen64 F
++ fseeko F
++ fseeko64 F
++ fstatfs64 F
++ fstatvfs F
++ fstatvfs64 F
++ ftello F
++ ftello64 F
++ ftruncate64 F
++ ftw64 F
++ fwrite_unlocked F
++ gai_strerror F
++ getcontext F
++ getdate F
++ getdate_err D 0x4
++ getdate_r F
++ getmsg F
++ getnameinfo F
++ getnetname F
++ getpmsg F
++ getpt F
++ getutxent F
++ getutxid F
++ getutxline F
++ globfree64 F
++ gnu_get_libc_release F
++ gnu_get_libc_version F
++ grantpt F
++ host2netname F
++ iconv F
++ iconv_close F
++ iconv_open F
++ if_freenameindex F
++ if_indextoname F
++ if_nameindex F
++ if_nametoindex F
++ in6addr_any D 0x10
++ in6addr_loopback D 0x10
++ isastream F
++ iswblank F
++ key_decryptsession F
++ key_decryptsession_pk F
++ key_encryptsession F
++ key_encryptsession_pk F
++ key_gendes F
++ key_get_conv F
++ key_secretkey_is_set F
++ key_setnet F
++ key_setsecret F
++ lockf64 F
++ lseek64 F
++ makecontext F
++ mempcpy F
++ mmap64 F
++ netname2host F
++ netname2user F
++ nftw F
++ nftw64 F
++ ntp_adjtime F
++ ntp_gettime F
++ open64 F
++ passwd2des F
++ pread F
++ pread64 F
++ printf_size F
++ printf_size_info F
++ ptsname F
++ ptsname_r F
++ putgrent F
++ putmsg F
++ putpmsg F
++ pututxline F
++ pwrite F
++ pwrite64 F
++ rawmemchr F
++ rtime F
++ sendfile F
++ setrlimit64 F
++ setutxent F
++ sighold F
++ sigignore F
++ sigqueue F
++ sigrelse F
++ sigset F
++ sigtimedwait F
++ sigwaitinfo F
++ statfs64 F
++ statvfs F
++ statvfs64 F
++ strcasestr F
++ strtoimax F
++ strtoumax F
++ strverscmp F
++ svcunix_create F
++ svcunixfd_create F
++ swapcontext F
++ sysv_signal F
++ tcgetsid F
++ tdestroy F
++ tmpfile64 F
++ truncate64 F
++ umount2 F
++ unlockpt F
++ updwtmpx F
++ user2netname F
++ utmpxname F
++ versionsort F
++ waitid F
++ wcscasecmp F
++ wcsncasecmp F
++ wcsnlen F
++ wcstoimax F
++ wcstoll F
++ wcstoull F
++ wcstoumax F
++ wcswcs F
++ wordfree F
++ xdecrypt F
++ xdr_authdes_cred F
++ xdr_authdes_verf F
++ xdr_getcredres F
++ xdr_int16_t F
++ xdr_int32_t F
++ xdr_int8_t F
++ xdr_netnamestr F
++ xdr_sizeof F
++ xdr_uint16_t F
++ xdr_uint32_t F
++ xdr_uint8_t F
++ xdr_unixcred F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2 sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ __key_decryptsession_pk_LOCAL D 0x4
++ __key_encryptsession_pk_LOCAL D 0x4
++ __key_gendes_LOCAL D 0x4
++ _sys_errlist D 0x1f4
++ _sys_siglist D 0x100
++ argp_program_bug_address D 0x4
++ argp_program_version D 0x4
++ argp_program_version_hook D 0x4
++ sys_errlist D 0x1f4
++ sys_sigabbrev D 0x100
++ sys_siglist D 0x100
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls
++ __signbitl F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls
++| GLIBC_2.2 sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ _IO_2_1_stderr_ D 0x98
++ _IO_2_1_stdin_ D 0x98
++ _IO_2_1_stdout_ D 0x98
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ modify_ldt F
++GLIBC_2.1 powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ _IO_2_1_stderr_ D 0xa0
++ _IO_2_1_stdin_ D 0xa0
++ _IO_2_1_stdout_ D 0xa0
++GLIBC_2.1 s390-.*-linux.*/tls
++ __chown F
++GLIBC_2.2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2.1 A
++GLIBC_2.2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ pivot_root F
++ posix_openpt F
++GLIBC_2.2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2.2 A
++GLIBC_2.2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __nss_hostname_digits_dots F
++GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2.3 A
++GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __rpc_thread_createerr F
++ __rpc_thread_svc_fdset F
++ __rpc_thread_svc_max_pollfd F
++ __rpc_thread_svc_pollfd F
++ sprofil F
++GLIBC_2.2.4 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2.4 A
++GLIBC_2.2.4 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ dl_iterate_phdr F
++ getgrouplist F
++ sockatmark F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++ __arch_prctl F
++ arch_prctl F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ _IO_adjust_wcolumn F
++ _IO_free_wbackup_area F
++ _IO_init_wmarker F
++ _IO_iter_begin F
++ _IO_iter_end F
++ _IO_iter_file F
++ _IO_iter_next F
++ _IO_least_wmarker F
++ _IO_list_lock F
++ _IO_list_resetlock F
++ _IO_list_unlock F
++ _IO_seekwmark F
++ _IO_sputbackwc F
++ _IO_sungetwc F
++ _IO_switch_to_main_wget_area F
++ _IO_switch_to_wbackup_area F
++ _IO_switch_to_wget_mode F
++ _IO_unsave_wmarkers F
++ _IO_wdefault_doallocate F
++ _IO_wdefault_finish F
++ _IO_wdefault_pbackfail F
++ _IO_wdefault_uflow F
++ _IO_wdefault_xsgetn F
++ _IO_wdefault_xsputn F
++ _IO_wdo_write F
++ _IO_wdoallocbuf F
++ _IO_wfile_overflow F
++ _IO_wfile_seekoff F
++ _IO_wfile_sync F
++ _IO_wfile_underflow F
++ _IO_wfile_xsputn F
++ _IO_wmarker_delta F
++ _IO_wsetb F
++ __assert F
++ __cyg_profile_func_enter F
++ __cyg_profile_func_exit F
++ __endmntent F
++ __fbufsize F
++ __flbf F
++ __fpending F
++ __fpurge F
++ __freadable F
++ __freading F
++ __fsetlocking F
++ __fwritable F
++ __fwriting F
++ __getmntent_r F
++ __nl_langinfo_l F
++ __open64 F
++ __res_init F
++ __res_nclose F
++ __res_ninit F
++ __res_state F
++ __setmntent F
++ __statfs F
++ __strndup F
++ __sysconf F
++ __sysctl F
++ __wctrans_l F
++ __woverflow F
++ __wuflow F
++ __wunderflow F
++ __xpg_sigpause F
++ _flushlbf F
++ bind_textdomain_codeset F
++ dcngettext F
++ dngettext F
++ fgetwc F
++ fgetwc_unlocked F
++ fgetws F
++ fgetws_unlocked F
++ fmemopen F
++ fputwc F
++ fputwc_unlocked F
++ fputws F
++ fputws_unlocked F
++ fwide F
++ fwprintf F
++ fwscanf F
++ getdirentries64 F
++ getloadavg F
++ getwc F
++ getwc_unlocked F
++ getwchar F
++ getwchar_unlocked F
++ iruserok_af F
++ mcheck_check_all F
++ mcheck_pedantic F
++ memrchr F
++ mincore F
++ mkdtemp F
++ mkstemp64 F
++ moncontrol F
++ ngettext F
++ posix_fadvise F
++ posix_fadvise64 F
++ posix_fallocate F
++ posix_fallocate64 F
++ posix_madvise F
++ posix_memalign F
++ posix_spawn F
++ posix_spawn_file_actions_addclose F
++ posix_spawn_file_actions_adddup2 F
++ posix_spawn_file_actions_addopen F
++ posix_spawn_file_actions_destroy F
++ posix_spawn_file_actions_init F
++ posix_spawnattr_destroy F
++ posix_spawnattr_getflags F
++ posix_spawnattr_getpgroup F
++ posix_spawnattr_getschedparam F
++ posix_spawnattr_getschedpolicy F
++ posix_spawnattr_getsigdefault F
++ posix_spawnattr_getsigmask F
++ posix_spawnattr_init F
++ posix_spawnattr_setflags F
++ posix_spawnattr_setpgroup F
++ posix_spawnattr_setschedparam F
++ posix_spawnattr_setschedpolicy F
++ posix_spawnattr_setsigdefault F
++ posix_spawnattr_setsigmask F
++ posix_spawnp F
++ putwc F
++ putwc_unlocked F
++ putwchar F
++ putwchar_unlocked F
++ rcmd_af F
++ rexec_af F
++ rresvport_af F
++ ruserok_af F
++ svc_getreq_common F
++ svc_getreq_poll F
++ svc_max_pollfd D 0x4
++ swprintf F
++ swscanf F
++ ungetwc F
++ vfwprintf F
++ vfwscanf F
++ vswprintf F
++ vswscanf F
++ vwprintf F
++ vwscanf F
++ wcschrnul F
++ wcsftime F
++ wmempcpy F
++ wprintf F
++ wscanf F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls
++ __ctype32_b D 0x8
++ __ctype32_tolower D 0x8
++ __ctype32_toupper D 0x8
++ __ctype_b D 0x8
++ __ctype_tolower D 0x8
++ __ctype_toupper D 0x8
++ _res D 0x238
++ _sys_errlist D 0x3e8
++ sys_errlist D 0x3e8
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ _IO_2_1_stderr_ D 0xe0
++ _IO_2_1_stdin_ D 0xe0
++ _IO_2_1_stdout_ D 0xe0
++ _IO_file_jumps D 0xa8
++ _IO_list_all D 0x8
++ _IO_wfile_jumps D 0xa8
++ __after_morecore_hook D 0x8
++ __curbrk D 0x8
++ __environ D 0x8
++ __free_hook D 0x8
++ __key_decryptsession_pk_LOCAL D 0x8
++ __key_encryptsession_pk_LOCAL D 0x8
++ __key_gendes_LOCAL D 0x8
++ __malloc_hook D 0x8
++ __malloc_initialize_hook D 0x8
++ __memalign_hook D 0x8
++ __morecore D 0x8
++ __progname D 0x8
++ __progname_full D 0x8
++ __rcmd_errstr D 0x8
++ __realloc_hook D 0x8
++ __timezone D 0x8
++ __tzname D 0x10
++ _environ D 0x8
++ _nl_domain_bindings D 0x8
++ _null_auth D 0x18
++ _obstack D 0x8
++ _res_hconf D 0x48
++ _sys_siglist D 0x200
++ argp_program_bug_address D 0x8
++ argp_program_version D 0x8
++ argp_program_version_hook D 0x8
++ environ D 0x8
++ error_print_progname D 0x8
++ h_errlist D 0x28
++ loc1 D 0x8
++ loc2 D 0x8
++ locs D 0x8
++ mallwatch D 0x8
++ obstack_alloc_failed_handler D 0x8
++ optarg D 0x8
++ program_invocation_name D 0x8
++ program_invocation_short_name D 0x8
++ re_syntax_options D 0x8
++ rpc_createerr D 0x20
++ stderr D 0x8
++ stdin D 0x8
++ stdout D 0x8
++ svc_pollfd D 0x8
++ svcauthdes_stats D 0x18
++ sys_sigabbrev D 0x200
++ sys_siglist D 0x200
++ timezone D 0x8
++ tzname D 0x10
++GLIBC_2.2.6 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++ GLIBC_2.2.6 A
++GLIBC_2.2.6 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __nanosleep F
++GLIBC_2.2.6 ia64-.*-linux.*/tls
++ getunwind F
++GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2 A
++GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ __ctype32_tolower D 0x4
++ __ctype32_toupper D 0x4
++ _res_hconf D 0x30
++ svc_pollfd D 0x4
++GLIBC_2.2 i.86-.*-linux.*/thread i.86-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ _IO_wfile_jumps D 0x54
++GLIBC_2.2 ia64-.*-linux.*/tls
++ __clone2 F
++ __divdf3 F
++ __divsf3 F
++ __divtf3 F
++ __multi3 F
++ _inb F
++ _inl F
++ _inw F
++ _outb F
++ _outl F
++ _outw F
++ inb F
++ inl F
++ inw F
++ outb F
++ outw F
++ pciconfig_read F
++ pciconfig_write F
++GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls
++ ___brk_addr D 0x8
++GLIBC_2.2 sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ _nl_default_dirname D 0x20
++GLIBC_2.3.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++ GLIBC_2.3.2 A
++ __register_atfork F
++ lchmod F
++ sched_getaffinity F
++ sched_setaffinity F
++ strptime_l F
++GLIBC_2.3.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls x86_64-.*-linux.*/tls
++ epoll_create F
++ epoll_ctl F
++ epoll_wait F
++GLIBC_2.3.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++ GLIBC_2.3.3 A
++ remap_file_pages F
++GLIBC_2.3.3 i.86-.*-linux.*/thread i.86-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls
++ _sys_siglist D 0x104
++ sys_sigabbrev D 0x104
++ sys_siglist D 0x104
++GLIBC_2.3.3 ia64-.*-linux.*/tls powerpc64-.*-linux.*/thread s390x-.*-linux.*/tls x86_64-.*-linux.*/tls
++| GLIBC_2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ strtoll_l F
++ strtoull_l F
++GLIBC_2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++ GLIBC_2.3 A
++ __ctype_b_loc F
++ __ctype_tolower_loc F
++ __ctype_toupper_loc F
++ __isctype F
++ __strftime_l F
++ __uselocale F
++ __wcsftime_l F
++ duplocale F
++ fgetxattr F
++ flistxattr F
++ freeifaddrs F
++ freelocale F
++ fremovexattr F
++ fsetxattr F
++ futimes F
++ getifaddrs F
++ getxattr F
++ isalnum_l F
++ isalpha_l F
++ isblank_l F
++ iscntrl_l F
++ isctype F
++ isdigit_l F
++ isgraph_l F
++ islower_l F
++ isprint_l F
++ ispunct_l F
++ isspace_l F
++ isupper_l F
++ iswalnum_l F
++ iswalpha_l F
++ iswblank_l F
++ iswcntrl_l F
++ iswctype_l F
++ iswdigit_l F
++ iswgraph_l F
++ iswlower_l F
++ iswprint_l F
++ iswpunct_l F
++ iswspace_l F
++ iswupper_l F
++ iswxdigit_l F
++ isxdigit_l F
++ lgetxattr F
++ listxattr F
++ llistxattr F
++ lremovexattr F
++ lsetxattr F
++ lutimes F
++ newlocale F
++ nl_langinfo_l F
++ readahead F
++ removexattr F
++ sendfile64 F
++ setxattr F
++ strcasecmp_l F
++ strcoll_l F
++ strfmon_l F
++ strftime_l F
++ strncasecmp_l F
++ strtod_l F
++ strtof_l F
++ strtol_l F
++ strtold_l F
++ strtoul_l F
++ strxfrm_l F
++ tolower_l F
++ toupper_l F
++ towctrans_l F
++ towlower_l F
++ towupper_l F
++ uselocale F
++ wcscasecmp_l F
++ wcscoll_l F
++ wcsftime_l F
++ wcsncasecmp_l F
++ wcstod_l F
++ wcstof_l F
++ wcstol_l F
++ wcstold_l F
++ wcstoll_l F
++ wcstoul_l F
++ wcstoull_l F
++ wcsxfrm_l F
++ wctrans_l F
++ wctype_l F
++GLIBC_2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ _sys_errlist D 0x1f8
++ sys_errlist D 0x1f8
++GLIBC_2.3 ia64-.*-linux.*/tls powerpc64-.*-linux.*/thread s390x-.*-linux.*/tls x86_64-.*-linux.*/tls
++ _sys_errlist D 0x3f0
++ sys_errlist D 0x3f0
+--- glibc-2.3.2/abilist/libcrypt.abilist 1969-12-31 19:00:00.000000000 -0500
++++ glibc-2.3.2/abilist/libcrypt.abilist 2003-04-01 23:39:52.000000000 -0500
+@@ -0,0 +1,19 @@
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.0 A
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ crypt F
++ crypt_r F
++ encrypt F
++ encrypt_r F
++ fcrypt F
++ setkey F
++ setkey_r F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++GLIBC_2.2 s390x-.*-linux.*/tls
++ GLIBC_2.2 A
++GLIBC_2.3 powerpc64-.*-linux.*/thread
++ GLIBC_2.3 A
+--- glibc-2.3.2/abilist/libdl.abilist 1969-12-31 19:00:00.000000000 -0500
++++ glibc-2.3.2/abilist/libdl.abilist 2003-04-01 23:39:52.000000000 -0500
+@@ -0,0 +1,33 @@
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.0 A
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ dlopen F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ dladdr F
++ dlclose F
++ dlerror F
++ dlsym F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.1 A
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ dlvsym F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++GLIBC_2.2 s390x-.*-linux.*/tls
++ GLIBC_2.2 A
++GLIBC_2.3.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++ GLIBC_2.3.3 A
++ dladdr1 F
++ dlinfo F
++GLIBC_2.3 powerpc64-.*-linux.*/thread
++ GLIBC_2.3 A
+--- glibc-2.3.2/abilist/libm.abilist 1969-12-31 19:00:00.000000000 -0500
++++ glibc-2.3.2/abilist/libm.abilist 2003-04-01 23:39:52.000000000 -0500
+@@ -0,0 +1,355 @@
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.0 A
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ _LIB_VERSION D 0x4
++ acos F
++ acosf F
++ acosh F
++ acoshf F
++ acoshl F
++ acosl F
++ asin F
++ asinf F
++ asinh F
++ asinhf F
++ asinhl F
++ asinl F
++ atan F
++ atan2 F
++ atan2f F
++ atan2l F
++ atanf F
++ atanh F
++ atanhf F
++ atanhl F
++ atanl F
++ cbrt F
++ cbrtf F
++ cbrtl F
++ ceil F
++ ceilf F
++ ceill F
++ copysign F
++ copysignf F
++ copysignl F
++ cos F
++ cosf F
++ cosh F
++ coshf F
++ coshl F
++ cosl F
++ drem F
++ dremf F
++ dreml F
++ erf F
++ erfc F
++ erfcf F
++ erfcl F
++ erff F
++ erfl F
++ exp F
++ expf F
++ expl F
++ expm1 F
++ expm1f F
++ expm1l F
++ fabs F
++ fabsf F
++ fabsl F
++ finite F
++ finitef F
++ finitel F
++ floor F
++ floorf F
++ floorl F
++ fmod F
++ fmodf F
++ fmodl F
++ frexp F
++ frexpf F
++ frexpl F
++ gamma F
++ gammaf F
++ gammal F
++ hypot F
++ hypotf F
++ hypotl F
++ ilogb F
++ ilogbf F
++ ilogbl F
++ j0 F
++ j0f F
++ j0l F
++ j1 F
++ j1f F
++ j1l F
++ jn F
++ jnf F
++ jnl F
++ ldexp F
++ ldexpf F
++ ldexpl F
++ lgamma F
++ lgamma_r F
++ lgammaf F
++ lgammaf_r F
++ lgammal F
++ lgammal_r F
++ log F
++ log10 F
++ log10f F
++ log10l F
++ log1p F
++ log1pf F
++ log1pl F
++ logb F
++ logbf F
++ logbl F
++ logf F
++ logl F
++ matherr F
++ modf F
++ modff F
++ modfl F
++ nextafter F
++ nextafterf F
++ nextafterl F
++ pow F
++ powf F
++ powl F
++ remainder F
++ remainderf F
++ remainderl F
++ rint F
++ rintf F
++ rintl F
++ scalb F
++ scalbf F
++ scalbl F
++ scalbn F
++ scalbnf F
++ scalbnl F
++ signgam D 0x4
++ significand F
++ significandf F
++ significandl F
++ sin F
++ sinf F
++ sinh F
++ sinhf F
++ sinhl F
++ sinl F
++ sqrt F
++ sqrtf F
++ sqrtl F
++ tan F
++ tanf F
++ tanh F
++ tanhf F
++ tanhl F
++ tanl F
++ y0 F
++ y0f F
++ y0l F
++ y1 F
++ y1f F
++ y1l F
++ yn F
++ ynf F
++ ynl F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.1 A
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ feclearexcept F
++ fegetenv F
++ fegetexceptflag F
++ feraiseexcept F
++ fesetenv F
++ fesetexceptflag F
++ feupdateenv F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __clog10 F
++ __clog10f F
++ __clog10l F
++ __finite F
++ __finitef F
++ __finitel F
++ __fpclassify F
++ __fpclassifyf F
++ __signbit F
++ __signbitf F
++ cabs F
++ cabsf F
++ cabsl F
++ cacos F
++ cacosf F
++ cacosh F
++ cacoshf F
++ cacoshl F
++ cacosl F
++ carg F
++ cargf F
++ cargl F
++ casin F
++ casinf F
++ casinh F
++ casinhf F
++ casinhl F
++ casinl F
++ catan F
++ catanf F
++ catanh F
++ catanhf F
++ catanhl F
++ catanl F
++ ccos F
++ ccosf F
++ ccosh F
++ ccoshf F
++ ccoshl F
++ ccosl F
++ cexp F
++ cexpf F
++ cexpl F
++ cimag F
++ cimagf F
++ cimagl F
++ clog F
++ clog10 F
++ clog10f F
++ clog10l F
++ clogf F
++ clogl F
++ conj F
++ conjf F
++ conjl F
++ cpow F
++ cpowf F
++ cpowl F
++ cproj F
++ cprojf F
++ cprojl F
++ creal F
++ crealf F
++ creall F
++ csin F
++ csinf F
++ csinh F
++ csinhf F
++ csinhl F
++ csinl F
++ csqrt F
++ csqrtf F
++ csqrtl F
++ ctan F
++ ctanf F
++ ctanh F
++ ctanhf F
++ ctanhl F
++ ctanl F
++ exp10 F
++ exp10f F
++ exp10l F
++ exp2 F
++ exp2f F
++ fdim F
++ fdimf F
++ fdiml F
++ fegetround F
++ feholdexcept F
++ fesetround F
++ fetestexcept F
++ fma F
++ fmaf F
++ fmal F
++ fmax F
++ fmaxf F
++ fmaxl F
++ fmin F
++ fminf F
++ fminl F
++ llrint F
++ llrintf F
++ llrintl F
++ llround F
++ llroundf F
++ llroundl F
++ log2 F
++ log2f F
++ log2l F
++ lrint F
++ lrintf F
++ lrintl F
++ lround F
++ lroundf F
++ lroundl F
++ nan F
++ nanf F
++ nanl F
++ nearbyint F
++ nearbyintf F
++ nearbyintl F
++ nexttoward F
++ nexttowardf F
++ nexttowardl F
++ pow10 F
++ pow10f F
++ pow10l F
++ remquo F
++ remquof F
++ remquol F
++ round F
++ roundf F
++ roundl F
++ scalbln F
++ scalblnf F
++ scalblnl F
++ sincos F
++ sincosf F
++ sincosl F
++ tgamma F
++ tgammaf F
++ tgammal F
++ trunc F
++ truncf F
++ truncl F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls
++ __fpclassifyl F
++ __signbitl F
++ exp2l F
++GLIBC_2.1 powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __fe_dfl_env D 0x8
++ __fe_enabled_env D 0x8
++ __fe_nomask_env F
++ __fe_nonieee_env D 0x8
++GLIBC_2.2.3 ia64-.*-linux.*/tls
++ GLIBC_2.2.3 A
++ matherrf F
++ matherrl F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ fedisableexcept F
++ feenableexcept F
++ fegetexcept F
++GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls
++ __expl F
++ __expm1l F
++GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2 A
++GLIBC_2.3 powerpc64-.*-linux.*/thread
++ GLIBC_2.3 A
+--- glibc-2.3.2/abilist/libnsl.abilist 1969-12-31 19:00:00.000000000 -0500
++++ glibc-2.3.2/abilist/libnsl.abilist 2003-04-01 23:39:52.000000000 -0500
+@@ -0,0 +1,142 @@
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.0 A
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __yp_check F
++ xdr_domainname F
++ xdr_keydat F
++ xdr_mapname F
++ xdr_peername F
++ xdr_valdat F
++ xdr_yp_buf F
++ xdr_ypbind_binding F
++ xdr_ypbind_resp F
++ xdr_ypbind_resptype F
++ xdr_ypbind_setdom F
++ xdr_ypdelete_args F
++ xdr_ypmap_parms F
++ xdr_ypmaplist F
++ xdr_yppush_status F
++ xdr_yppushresp_xfr F
++ xdr_ypreq_key F
++ xdr_ypreq_nokey F
++ xdr_ypreq_xfr F
++ xdr_ypresp_all F
++ xdr_ypresp_key_val F
++ xdr_ypresp_maplist F
++ xdr_ypresp_master F
++ xdr_ypresp_order F
++ xdr_ypresp_val F
++ xdr_ypresp_xfr F
++ xdr_ypstat F
++ xdr_ypupdate_args F
++ xdr_ypxfrstat F
++ yp_all F
++ yp_bind F
++ yp_first F
++ yp_get_default_domain F
++ yp_maplist F
++ yp_master F
++ yp_match F
++ yp_next F
++ yp_order F
++ yp_unbind F
++ yp_update F
++ ypbinderr_string F
++ yperr_string F
++ ypprot_err F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.1 A
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __free_fdresult F
++ __nis_default_access F
++ __nis_default_group F
++ __nis_default_owner F
++ __nis_default_ttl F
++ __nis_finddirectory F
++ __nis_hash F
++ __nisbind_connect F
++ __nisbind_create F
++ __nisbind_destroy F
++ __nisbind_next F
++ nis_add F
++ nis_add_entry F
++ nis_addmember F
++ nis_checkpoint F
++ nis_clone_directory F
++ nis_clone_object F
++ nis_clone_result F
++ nis_creategroup F
++ nis_destroy_object F
++ nis_destroygroup F
++ nis_dir_cmp F
++ nis_domain_of F
++ nis_domain_of_r F
++ nis_first_entry F
++ nis_free_directory F
++ nis_free_object F
++ nis_free_request F
++ nis_freenames F
++ nis_freeresult F
++ nis_freeservlist F
++ nis_freetags F
++ nis_getnames F
++ nis_getservlist F
++ nis_ismember F
++ nis_leaf_of F
++ nis_leaf_of_r F
++ nis_lerror F
++ nis_list F
++ nis_local_directory F
++ nis_local_group F
++ nis_local_host F
++ nis_local_principal F
++ nis_lookup F
++ nis_mkdir F
++ nis_modify F
++ nis_modify_entry F
++ nis_name_of F
++ nis_name_of_r F
++ nis_next_entry F
++ nis_perror F
++ nis_ping F
++ nis_print_directory F
++ nis_print_entry F
++ nis_print_group F
++ nis_print_group_entry F
++ nis_print_link F
++ nis_print_object F
++ nis_print_result F
++ nis_print_rights F
++ nis_print_table F
++ nis_read_obj F
++ nis_remove F
++ nis_remove_entry F
++ nis_removemember F
++ nis_rmdir F
++ nis_servstate F
++ nis_sperrno F
++ nis_sperror F
++ nis_sperror_r F
++ nis_stats F
++ nis_verifygroup F
++ nis_write_obj F
++ readColdStartFile F
++ writeColdStartFile F
++ xdr_cback_data F
++ xdr_obj_p F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ xdr_ypall F
++GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2 A
++GLIBC_2.3 powerpc64-.*-linux.*/thread
++ GLIBC_2.3 A
+--- glibc-2.3.2/abilist/libpthread.abilist 1969-12-31 19:00:00.000000000 -0500
++++ glibc-2.3.2/abilist/libpthread.abilist 2003-04-01 23:39:52.000000000 -0500
+@@ -0,0 +1,256 @@
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.0 A
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ pthread_attr_init F
++ pthread_create F
++ sem_destroy F
++ sem_getvalue F
++ sem_init F
++ sem_post F
++ sem_trywait F
++ sem_wait F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ pthread_atfork F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ pthread_cond_broadcast F
++ pthread_cond_destroy F
++ pthread_cond_init F
++ pthread_cond_signal F
++ pthread_cond_timedwait F
++ pthread_cond_wait F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ _IO_flockfile F
++ _IO_ftrylockfile F
++ _IO_funlockfile F
++ __close F
++ __connect F
++ __errno_location F
++ __fcntl F
++ __fork F
++ __h_errno_location F
++ __lseek F
++ __open F
++ __pthread_getspecific F
++ __pthread_key_create F
++ __pthread_mutex_destroy F
++ __pthread_mutex_init F
++ __pthread_mutex_lock F
++ __pthread_mutex_trylock F
++ __pthread_mutex_unlock F
++ __pthread_mutexattr_destroy F
++ __pthread_mutexattr_init F
++ __pthread_mutexattr_settype F
++ __pthread_once F
++ __pthread_setspecific F
++ __read F
++ __send F
++ __sigaction F
++ __wait F
++ __write F
++ _pthread_cleanup_pop F
++ _pthread_cleanup_pop_restore F
++ _pthread_cleanup_push F
++ _pthread_cleanup_push_defer F
++ accept F
++ close F
++ connect F
++ fcntl F
++ flockfile F
++ fork F
++ fsync F
++ ftrylockfile F
++ funlockfile F
++ longjmp F
++ lseek F
++ msync F
++ nanosleep F
++ open F
++ pause F
++ pthread_attr_destroy F
++ pthread_attr_getdetachstate F
++ pthread_attr_getinheritsched F
++ pthread_attr_getschedparam F
++ pthread_attr_getschedpolicy F
++ pthread_attr_getscope F
++ pthread_attr_setdetachstate F
++ pthread_attr_setinheritsched F
++ pthread_attr_setschedparam F
++ pthread_attr_setschedpolicy F
++ pthread_attr_setscope F
++ pthread_cancel F
++ pthread_condattr_destroy F
++ pthread_condattr_init F
++ pthread_detach F
++ pthread_equal F
++ pthread_exit F
++ pthread_getschedparam F
++ pthread_getspecific F
++ pthread_join F
++ pthread_key_create F
++ pthread_key_delete F
++ pthread_kill F
++ pthread_kill_other_threads_np F
++ pthread_mutex_destroy F
++ pthread_mutex_init F
++ pthread_mutex_lock F
++ pthread_mutex_trylock F
++ pthread_mutex_unlock F
++ pthread_mutexattr_destroy F
++ pthread_mutexattr_getkind_np F
++ pthread_mutexattr_init F
++ pthread_mutexattr_setkind_np F
++ pthread_once F
++ pthread_self F
++ pthread_setcancelstate F
++ pthread_setcanceltype F
++ pthread_setschedparam F
++ pthread_setspecific F
++ pthread_sigmask F
++ pthread_testcancel F
++ raise F
++ read F
++ recv F
++ recvfrom F
++ recvmsg F
++ send F
++ sendmsg F
++ sendto F
++ sigaction F
++ siglongjmp F
++ sigwait F
++ system F
++ tcdrain F
++ vfork F
++ wait F
++ waitpid F
++ write F
++GLIBC_2.1.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.1.1 A
++GLIBC_2.1.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ sem_close F
++ sem_open F
++ sem_unlink F
++GLIBC_2.1.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.1.2 A
++GLIBC_2.1.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __vfork F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.1 A
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __libc_allocate_rtsig F
++ __libc_current_sigrtmax F
++ __libc_current_sigrtmin F
++ pthread_attr_getguardsize F
++ pthread_attr_getstackaddr F
++ pthread_attr_getstacksize F
++ pthread_attr_setguardsize F
++ pthread_attr_setstackaddr F
++ pthread_attr_setstacksize F
++ pthread_getconcurrency F
++ pthread_mutexattr_gettype F
++ pthread_mutexattr_settype F
++ pthread_rwlock_destroy F
++ pthread_rwlock_init F
++ pthread_rwlock_rdlock F
++ pthread_rwlock_tryrdlock F
++ pthread_rwlock_trywrlock F
++ pthread_rwlock_unlock F
++ pthread_rwlock_wrlock F
++ pthread_rwlockattr_destroy F
++ pthread_rwlockattr_getkind_np F
++ pthread_rwlockattr_getpshared F
++ pthread_rwlockattr_init F
++ pthread_rwlockattr_setkind_np F
++ pthread_rwlockattr_setpshared F
++ pthread_setconcurrency F
++GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2.3 A
++GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ pthread_getattr_np F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __open64 F
++ __pread64 F
++ __pthread_rwlock_destroy F
++ __pthread_rwlock_init F
++ __pthread_rwlock_rdlock F
++ __pthread_rwlock_tryrdlock F
++ __pthread_rwlock_trywrlock F
++ __pthread_rwlock_unlock F
++ __pthread_rwlock_wrlock F
++ __pwrite64 F
++ __res_state F
++ lseek64 F
++ open64 F
++ pread F
++ pread64 F
++ pthread_attr_getstack F
++ pthread_attr_setstack F
++ pthread_barrier_destroy F
++ pthread_barrier_init F
++ pthread_barrier_wait F
++ pthread_barrierattr_destroy F
++ pthread_barrierattr_init F
++ pthread_barrierattr_setpshared F
++ pthread_condattr_getpshared F
++ pthread_condattr_setpshared F
++ pthread_getcpuclockid F
++ pthread_mutex_timedlock F
++ pthread_mutexattr_getpshared F
++ pthread_mutexattr_setpshared F
++ pthread_rwlock_timedrdlock F
++ pthread_rwlock_timedwrlock F
++ pthread_spin_destroy F
++ pthread_spin_init F
++ pthread_spin_lock F
++ pthread_spin_trylock F
++ pthread_spin_unlock F
++ pthread_yield F
++ pwrite F
++ pwrite64 F
++ sem_timedwait F
++GLIBC_2.2.6 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++ GLIBC_2.2.6 A
++GLIBC_2.2.6 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __nanosleep F
++GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2 A
++GLIBC_2.3.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++ GLIBC_2.3.2 A
++GLIBC_2.3.3 i.86-.*-linux.*/thread sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.3.3 A
++ pthread_barrierattr_getpshared F
++ pthread_condattr_getclock F
++ pthread_condattr_setclock F
++ pthread_timedjoin_np F
++ pthread_tryjoin_np F
++GLIBC_2.3 powerpc64-.*-linux.*/thread
++ GLIBC_2.3 A
+--- glibc-2.3.2/abilist/libresolv.abilist 1969-12-31 19:00:00.000000000 -0500
++++ glibc-2.3.2/abilist/libresolv.abilist 2003-04-01 23:39:52.000000000 -0500
+@@ -0,0 +1,95 @@
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.0 A
++ dn_expand F
++ res_mkquery F
++ res_query F
++ res_querydomain F
++ res_search F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __b64_ntop F
++ __b64_pton F
++ __dn_comp F
++ __dn_count_labels F
++ __dn_skipname F
++ __fp_nquery F
++ __fp_query F
++ __fp_resstat F
++ __hostalias F
++ __loc_aton F
++ __loc_ntoa F
++ __p_cdname F
++ __p_cdnname F
++ __p_class F
++ __p_fqname F
++ __p_fqnname F
++ __p_option F
++ __p_query F
++ __p_secstodate F
++ __p_time F
++ __p_type F
++ __putlong F
++ __putshort F
++ __res_close F
++ __res_dnok F
++ __res_hnok F
++ __res_isourserver F
++ __res_mailok F
++ __res_nameinquery F
++ __res_ownok F
++ __res_queriesmatch F
++ __res_send F
++ __sym_ntop F
++ __sym_ntos F
++ __sym_ston F
++ _gethtbyaddr F
++ _gethtbyname F
++ _gethtbyname2 F
++ _gethtent F
++ _getlong F
++ _getshort F
++ _sethtent F
++ inet_net_ntop F
++ inet_net_pton F
++ inet_neta F
++ res_gethostbyaddr F
++ res_gethostbyname F
++ res_gethostbyname2 F
++ res_send_setqhook F
++ res_send_setrhook F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ __p_class_syms D 0x54
++ __p_type_syms D 0x21c
++ _res_opcodes D 0x40
++GLIBC_2.0 ia64-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __p_class_syms D 0xa8
++ __p_type_syms D 0x438
++ _res_opcodes D 0x80
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __dn_expand F
++ __res_hostalias F
++ __res_mkquery F
++ __res_nmkquery F
++ __res_nquery F
++ __res_nquerydomain F
++ __res_nsearch F
++ __res_nsend F
++ __res_query F
++ __res_querydomain F
++ __res_search F
++GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2 A
++GLIBC_2.3.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++ GLIBC_2.3.2 A
++ __p_rcode F
++GLIBC_2.3 powerpc64-.*-linux.*/thread
++ GLIBC_2.3 A
+--- glibc-2.3.2/abilist/librt.abilist 1969-12-31 19:00:00.000000000 -0500
++++ glibc-2.3.2/abilist/librt.abilist 2003-04-01 23:39:52.000000000 -0500
+@@ -0,0 +1,44 @@
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.1 A
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ aio_cancel F
++ aio_cancel64 F
++ aio_error F
++ aio_error64 F
++ aio_fsync F
++ aio_fsync64 F
++ aio_init F
++ aio_read F
++ aio_read64 F
++ aio_return F
++ aio_return64 F
++ aio_suspend F
++ aio_suspend64 F
++ aio_write F
++ aio_write64 F
++ lio_listio F
++ lio_listio64 F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ clock_getcpuclockid F
++ clock_getres F
++ clock_gettime F
++ clock_nanosleep F
++ clock_settime F
++ shm_open F
++ shm_unlink F
++ timer_create F
++ timer_delete F
++ timer_getoverrun F
++ timer_gettime F
++ timer_settime F
++GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2 A
++GLIBC_2.3 powerpc64-.*-linux.*/thread
++ GLIBC_2.3 A
+--- glibc-2.3.2/abilist/libthread_db.abilist 1969-12-31 19:00:00.000000000 -0500
++++ glibc-2.3.2/abilist/libthread_db.abilist 2003-04-01 23:39:52.000000000 -0500
+@@ -0,0 +1,59 @@
++GLIBC_2.1.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.1.3 A
++GLIBC_2.1.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ td_init F
++ td_log F
++ td_ta_clear_event F
++ td_ta_delete F
++ td_ta_enable_stats F
++ td_ta_event_addr F
++ td_ta_event_getmsg F
++ td_ta_get_nthreads F
++ td_ta_get_ph F
++ td_ta_get_stats F
++ td_ta_map_id2thr F
++ td_ta_map_lwp2thr F
++ td_ta_new F
++ td_ta_reset_stats F
++ td_ta_set_event F
++ td_ta_setconcurrency F
++ td_ta_thr_iter F
++ td_ta_tsd_iter F
++ td_thr_clear_event F
++ td_thr_dbresume F
++ td_thr_dbsuspend F
++ td_thr_event_enable F
++ td_thr_event_getmsg F
++ td_thr_get_info F
++ td_thr_getfpregs F
++ td_thr_getgregs F
++ td_thr_getxregs F
++ td_thr_getxregsize F
++ td_thr_set_event F
++ td_thr_setfpregs F
++ td_thr_setgregs F
++ td_thr_setprio F
++ td_thr_setsigpending F
++ td_thr_setxregs F
++ td_thr_sigsetmask F
++ td_thr_tsd F
++ td_thr_validate F
++GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2.3 A
++GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ td_symbol_list F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++GLIBC_2.2 s390x-.*-linux.*/tls
++ GLIBC_2.2 A
++GLIBC_2.3.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++ GLIBC_2.3.3 A
++ td_thr_tlsbase F
++GLIBC_2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++ GLIBC_2.3 A
++ td_thr_tls_get_addr F
+--- glibc-2.3.2/abilist/libutil.abilist 1969-12-31 19:00:00.000000000 -0500
++++ glibc-2.3.2/abilist/libutil.abilist 2003-04-01 23:39:52.000000000 -0500
+@@ -0,0 +1,18 @@
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.0 A
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ forkpty F
++ login F
++ login_tty F
++ logout F
++ logwtmp F
++ openpty F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++GLIBC_2.2 s390x-.*-linux.*/tls
++ GLIBC_2.2 A
++GLIBC_2.3 powerpc64-.*-linux.*/thread
++ GLIBC_2.3 A
+--- glibc-2.3.2/argp/Makefile 2002-12-04 14:45:21.000000000 -0500
++++ glibc-2.3.2/argp/Makefile 2003-09-19 22:37:01.000000000 -0400
+@@ -1,4 +1,4 @@
+-# Copyright (C) 1997, 2002 Free Software Foundation, Inc.
++# Copyright (C) 1997, 2002, 2003 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
+@@ -28,4 +28,8 @@
+
+ tests = argp-test tst-argp1
+
++CFLAGS-argp-help.c = $(uses-callbacks) -fexceptions
++CFLAGS-argp-parse.c = $(uses-callbacks)
++CFLAGS-argp-fmtstream.c = -fexceptions
++
+ include ../Rules
+--- glibc-2.3.2/argp/argp-help.c 2002-04-08 04:19:17.000000000 -0400
++++ glibc-2.3.2/argp/argp-help.c 2003-08-21 08:36:58.000000000 -0400
+@@ -1,5 +1,5 @@
+ /* Hierarchial argument parsing help output
+- Copyright (C) 1995-2000, 2001, 2002 Free Software Foundation, Inc.
++ Copyright (C) 1995-2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Written by Miles Bader <miles@gnu.ai.mit.edu>.
+
+@@ -521,7 +521,7 @@
+ free (hol);
+ }
+
+-static inline int
++static int
+ hol_entry_short_iterate (const struct hol_entry *entry,
+ int (*func)(const struct argp_option *opt,
+ const struct argp_option *real,
+@@ -547,6 +547,7 @@
+ }
+
+ static inline int
++__attribute ((always_inline))
+ hol_entry_long_iterate (const struct hol_entry *entry,
+ int (*func)(const struct argp_option *opt,
+ const struct argp_option *real,
+--- glibc-2.3.2/argp/argp.h 2003-02-28 20:09:18.000000000 -0500
++++ glibc-2.3.2/argp/argp.h 2003-09-19 22:37:01.000000000 -0400
+@@ -32,6 +32,10 @@
+ # define __const const
+ #endif
+
++#ifndef __THROW
++# define __THROW
++#endif
++
+ #ifndef __error_t_defined
+ typedef int error_t;
+ # define __error_t_defined
+@@ -376,11 +380,11 @@
+ extern error_t argp_parse (__const struct argp *__restrict __argp,
+ int __argc, char **__restrict __argv,
+ unsigned __flags, int *__restrict __arg_index,
+- void *__restrict __input) __THROW;
++ void *__restrict __input);
+ extern error_t __argp_parse (__const struct argp *__restrict __argp,
+ int __argc, char **__restrict __argv,
+ unsigned __flags, int *__restrict __arg_index,
+- void *__restrict __input) __THROW;
++ void *__restrict __input);
+
+ /* Global variables. */
+
+@@ -444,10 +448,10 @@
+ ARGP_HELP_*. */
+ extern void argp_help (__const struct argp *__restrict __argp,
+ FILE *__restrict __stream,
+- unsigned __flags, char *__restrict __name) __THROW;
++ unsigned __flags, char *__restrict __name);
+ extern void __argp_help (__const struct argp *__restrict __argp,
+ FILE *__restrict __stream, unsigned __flags,
+- char *__name) __THROW;
++ char *__name);
+
+ /* The following routines are intended to be called from within an argp
+ parsing routine (thus taking an argp_state structure as the first
+@@ -461,23 +465,23 @@
+ from the set ARGP_HELP_*. */
+ extern void argp_state_help (__const struct argp_state *__restrict __state,
+ FILE *__restrict __stream,
+- unsigned int __flags) __THROW;
++ unsigned int __flags);
+ extern void __argp_state_help (__const struct argp_state *__restrict __state,
+ FILE *__restrict __stream,
+- unsigned int __flags) __THROW;
++ unsigned int __flags);
+
+ /* Possibly output the standard usage message for ARGP to stderr and exit. */
+-extern void argp_usage (__const struct argp_state *__state) __THROW;
+-extern void __argp_usage (__const struct argp_state *__state) __THROW;
++extern void argp_usage (__const struct argp_state *__state);
++extern void __argp_usage (__const struct argp_state *__state);
+
+ /* If appropriate, print the printf string FMT and following args, preceded
+ by the program name and `:', to stderr, and followed by a `Try ... --help'
+ message, then exit (1). */
+ extern void argp_error (__const struct argp_state *__restrict __state,
+- __const char *__restrict __fmt, ...) __THROW
++ __const char *__restrict __fmt, ...)
+ __attribute__ ((__format__ (__printf__, 2, 3)));
+ extern void __argp_error (__const struct argp_state *__restrict __state,
+- __const char *__restrict __fmt, ...) __THROW
++ __const char *__restrict __fmt, ...)
+ __attribute__ ((__format__ (__printf__, 2, 3)));
+
+ /* Similar to the standard gnu error-reporting function error(), but will
+@@ -490,11 +494,11 @@
+ parsing but don't reflect a (syntactic) problem with the input. */
+ extern void argp_failure (__const struct argp_state *__restrict __state,
+ int __status, int __errnum,
+- __const char *__restrict __fmt, ...) __THROW
++ __const char *__restrict __fmt, ...)
+ __attribute__ ((__format__ (__printf__, 4, 5)));
+ extern void __argp_failure (__const struct argp_state *__restrict __state,
+ int __status, int __errnum,
+- __const char *__restrict __fmt, ...) __THROW
++ __const char *__restrict __fmt, ...)
+ __attribute__ ((__format__ (__printf__, 4, 5)));
+
+ /* Returns true if the option OPT is a valid short option. */
+--- glibc-2.3.2/argp/tst-argp1.c 2002-12-04 17:45:02.000000000 -0500
++++ glibc-2.3.2/argp/tst-argp1.c 2003-03-18 16:46:06.000000000 -0500
+@@ -1,4 +1,4 @@
+-/* Copyright (C) 2002 Free Software Foundation, Inc.
++/* Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
+
+@@ -29,7 +29,7 @@
+ #define OPT_TOPLEVEL 304
+
+
+-static const struct argp_option options[] =
++static const struct argp_option test_options[] =
+ {
+ { NULL, 0, NULL, 0, "\
+ This is a test for threads so we allow ther user to selection the number of \
+@@ -89,12 +89,12 @@
+ /* Data structure to communicate with argp functions. */
+ static struct argp argp =
+ {
+- options, parse_opt
++ test_options, parse_opt
+ };
+
+
+-int
+-main (void)
++static int
++do_test (void)
+ {
+ int argc = 2;
+ char *argv[3] = { (char *) "tst-argp1", (char *) "--help", NULL };
+@@ -113,3 +113,6 @@
+ {
+ return ARGP_ERR_UNKNOWN;
+ }
++
++#define TEST_FUNCTION do_test ()
++#include "../test-skeleton.c"
+--- glibc-2.3.2/assert/assert.h 2001-07-07 15:20:51.000000000 -0400
++++ glibc-2.3.2/assert/assert.h 2003-08-21 08:36:58.000000000 -0400
+@@ -1,4 +1,4 @@
+-/* Copyright (C) 1991,1992,1994-1999,2000,2001 Free Software Foundation, Inc.
++/* Copyright (C) 1991,1992,1994-2001,2003 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
+@@ -84,16 +84,33 @@
+
+ __END_DECLS
+
+-# define assert(expr) \
++/* For the macro definition we use gcc's __builtin_expect if possible
++ to generate good code for the non-error case. gcc 3.0 is a good
++ enough estimate for when the feature became available. */
++# if __GNUC_PREREQ (3, 0)
++# define assert(expr) \
++ (__ASSERT_VOID_CAST (__builtin_expect (!!(expr), 1) ? 0 : \
++ (__assert_fail (__STRING(expr), __FILE__, __LINE__, \
++ __ASSERT_FUNCTION), 0)))
++# else
++# define assert(expr) \
+ (__ASSERT_VOID_CAST ((expr) ? 0 : \
+ (__assert_fail (__STRING(expr), __FILE__, __LINE__, \
+ __ASSERT_FUNCTION), 0)))
++# endif
+
+ # ifdef __USE_GNU
+-# define assert_perror(errnum) \
++# if __GNUC_PREREQ (3, 0)
++# define assert_perror(errnum) \
++ (__ASSERT_VOID_CAST (__builtin_expect (!(errnum), 1) ? 0 : \
++ (__assert_perror_fail ((errnum), __FILE__, __LINE__, \
++ __ASSERT_FUNCTION), 0)))
++# else
++# define assert_perror(errnum) \
+ (__ASSERT_VOID_CAST (!(errnum) ? 0 : \
+ (__assert_perror_fail ((errnum), __FILE__, __LINE__, \
+ __ASSERT_FUNCTION), 0)))
++# endif
+ # endif
+
+ /* Version 2.4 and later of GCC define a magical variable `__PRETTY_FUNCTION__'
+--- glibc-2.3.2/autom4te.cache/output.0 1969-12-31 19:00:00.000000000 -0500
++++ glibc-2.3.2/autom4te.cache/output.0 2003-09-19 22:40:33.000000000 -0400
+@@ -0,0 +1,8515 @@
++@%:@! /bin/sh
++@%:@ From configure.in CVSid.
++@%:@ Guess values for system-dependent variables and create Makefiles.
++@%:@ Generated by GNU Autoconf 2.57 for GNU C Library (see version.h).
++@%:@
++@%:@ Report bugs to <glibc>.
++@%:@
++@%:@ Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002
++@%:@ Free Software Foundation, Inc.
++@%:@ This configure script is free software; the Free Software Foundation
++@%:@ gives unlimited permission to copy, distribute and modify it.
++## --------------------- ##
++## M4sh Initialization. ##
++## --------------------- ##
++
++# Be Bourne compatible
++if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
++ emulate sh
++ NULLCMD=:
++ # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
++ # is contrary to our usage. Disable this feature.
++ alias -g '${1+"$@"}'='"$@"'
++elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
++ set -o posix
++fi
++
++# Support unset when possible.
++if (FOO=FOO; unset FOO) >/dev/null 2>&1; then
++ as_unset=unset
++else
++ as_unset=false
++fi
++
++
++# Work around bugs in pre-3.0 UWIN ksh.
++$as_unset ENV MAIL MAILPATH
++PS1='$ '
++PS2='> '
++PS4='+ '
++
++# NLS nuisances.
++for as_var in \
++ LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
++ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
++ LC_TELEPHONE LC_TIME
++do
++ if (set +x; test -n "`(eval $as_var=C; export $as_var) 2>&1`"); then
++ eval $as_var=C; export $as_var
++ else
++ $as_unset $as_var
++ fi
++done
++
++# Required to use basename.
++if expr a : '\(a\)' >/dev/null 2>&1; then
++ as_expr=expr
++else
++ as_expr=false
++fi
++
++if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
++ as_basename=basename
++else
++ as_basename=false
++fi
++
++
++# Name of the executable.
++as_me=`$as_basename "$0" ||
++$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
++ X"$0" : 'X\(//\)$' \| \
++ X"$0" : 'X\(/\)$' \| \
++ . : '\(.\)' 2>/dev/null ||
++echo X/"$0" |
++ sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
++ /^X\/\(\/\/\)$/{ s//\1/; q; }
++ /^X\/\(\/\).*/{ s//\1/; q; }
++ s/.*/./; q'`
++
++
++# PATH needs CR, and LINENO needs CR and PATH.
++# Avoid depending upon Character Ranges.
++as_cr_letters='abcdefghijklmnopqrstuvwxyz'
++as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
++as_cr_Letters=$as_cr_letters$as_cr_LETTERS
++as_cr_digits='0123456789'
++as_cr_alnum=$as_cr_Letters$as_cr_digits
++
++# The user is always right.
++if test "${PATH_SEPARATOR+set}" != set; then
++ echo "#! /bin/sh" >conf$$.sh
++ echo "exit 0" >>conf$$.sh
++ chmod +x conf$$.sh
++ if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
++ PATH_SEPARATOR=';'
++ else
++ PATH_SEPARATOR=:
++ fi
++ rm -f conf$$.sh
++fi
++
++
++ as_lineno_1=$LINENO
++ as_lineno_2=$LINENO
++ as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
++ test "x$as_lineno_1" != "x$as_lineno_2" &&
++ test "x$as_lineno_3" = "x$as_lineno_2" || {
++ # Find who we are. Look in the path if we contain no path at all
++ # relative or not.
++ case $0 in
++ *[\\/]* ) as_myself=$0 ;;
++ *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
++done
++
++ ;;
++ esac
++ # We did not find ourselves, most probably we were run as `sh COMMAND'
++ # in which case we are not to be found in the path.
++ if test "x$as_myself" = x; then
++ as_myself=$0
++ fi
++ if test ! -f "$as_myself"; then
++ { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2
++ { (exit 1); exit 1; }; }
++ fi
++ case $CONFIG_SHELL in
++ '')
++ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for as_base in sh bash ksh sh5; do
++ case $as_dir in
++ /*)
++ if ("$as_dir/$as_base" -c '
++ as_lineno_1=$LINENO
++ as_lineno_2=$LINENO
++ as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
++ test "x$as_lineno_1" != "x$as_lineno_2" &&
++ test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then
++ $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; }
++ $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
++ CONFIG_SHELL=$as_dir/$as_base
++ export CONFIG_SHELL
++ exec "$CONFIG_SHELL" "$0" ${1+"$@"}
++ fi;;
++ esac
++ done
++done
++;;
++ esac
++
++ # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
++ # uniformly replaced by the line number. The first 'sed' inserts a
++ # line-number line before each line; the second 'sed' does the real
++ # work. The second script uses 'N' to pair each line-number line
++ # with the numbered line, and appends trailing '-' during
++ # substitution so that $LINENO is not a special case at line end.
++ # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
++ # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-)
++ sed '=' <$as_myself |
++ sed '
++ N
++ s,$,-,
++ : loop
++ s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
++ t loop
++ s,-$,,
++ s,^['$as_cr_digits']*\n,,
++ ' >$as_me.lineno &&
++ chmod +x $as_me.lineno ||
++ { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
++ { (exit 1); exit 1; }; }
++
++ # Don't try to exec as it changes $[0], causing all sort of problems
++ # (the dirname of $[0] is not the place where we might find the
++ # original and so on. Autoconf is especially sensible to this).
++ . ./$as_me.lineno
++ # Exit status is that of the last command.
++ exit
++}
++
++
++case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
++ *c*,-n*) ECHO_N= ECHO_C='
++' ECHO_T=' ' ;;
++ *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;;
++ *) ECHO_N= ECHO_C='\c' ECHO_T= ;;
++esac
++
++if expr a : '\(a\)' >/dev/null 2>&1; then
++ as_expr=expr
++else
++ as_expr=false
++fi
++
++rm -f conf$$ conf$$.exe conf$$.file
++echo >conf$$.file
++if ln -s conf$$.file conf$$ 2>/dev/null; then
++ # We could just check for DJGPP; but this test a) works b) is more generic
++ # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
++ if test -f conf$$.exe; then
++ # Don't use ln at all; we don't have any links
++ as_ln_s='cp -p'
++ else
++ as_ln_s='ln -s'
++ fi
++elif ln conf$$.file conf$$ 2>/dev/null; then
++ as_ln_s=ln
++else
++ as_ln_s='cp -p'
++fi
++rm -f conf$$ conf$$.exe conf$$.file
++
++if mkdir -p . 2>/dev/null; then
++ as_mkdir_p=:
++else
++ as_mkdir_p=false
++fi
++
++as_executable_p="test -f"
++
++# Sed expression to map a string onto a valid CPP name.
++as_tr_cpp="sed y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g"
++
++# Sed expression to map a string onto a valid variable name.
++as_tr_sh="sed y%*+%pp%;s%[^_$as_cr_alnum]%_%g"
++
++
++# IFS
++# We need space, tab and new line, in precisely that order.
++as_nl='
++'
++IFS=" $as_nl"
++
++# CDPATH.
++$as_unset CDPATH
++
++
++# Name of the host.
++# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
++# so uname gets run too.
++ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
++
++exec 6>&1
++
++#
++# Initializations.
++#
++ac_default_prefix=/usr/local
++ac_config_libobj_dir=.
++cross_compiling=no
++subdirs=
++MFLAGS=
++MAKEFLAGS=
++SHELL=${CONFIG_SHELL-/bin/sh}
++
++# Maximum number of lines to put in a shell here document.
++# This variable seems obsolete. It should probably be removed, and
++# only ac_max_sed_lines should be used.
++: ${ac_max_here_lines=38}
++
++# Identity of this package.
++PACKAGE_NAME='GNU C Library'
++PACKAGE_TARNAME='c-library'
++PACKAGE_VERSION='(see version.h)'
++PACKAGE_STRING='GNU C Library (see version.h)'
++PACKAGE_BUGREPORT='glibc'
++
++ac_unique_file="include/features.h"
++ac_subdirs_all="$ac_subdirs_all "
++# Factoring default headers for most tests.
++ac_includes_default="\
++#include <stdio.h>
++#if HAVE_SYS_TYPES_H
++# include <sys/types.h>
++#endif
++#if HAVE_SYS_STAT_H
++# include <sys/stat.h>
++#endif
++#if STDC_HEADERS
++# include <stdlib.h>
++# include <stddef.h>
++#else
++# if HAVE_STDLIB_H
++# include <stdlib.h>
++# endif
++#endif
++#if HAVE_STRING_H
++# if !STDC_HEADERS && HAVE_MEMORY_H
++# include <memory.h>
++# endif
++# include <string.h>
++#endif
++#if HAVE_STRINGS_H
++# include <strings.h>
++#endif
++#if HAVE_INTTYPES_H
++# include <inttypes.h>
++#else
++# if HAVE_STDINT_H
++# include <stdint.h>
++# endif
++#endif
++#if HAVE_UNISTD_H
++# include <unistd.h>
++#endif"
++
++ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS with_fp with_cvs enable_check_abi oldest_abi subdirs force_install all_warnings build build_cpu build_vendor build_os host host_cpu host_vendor host_os base_machine sysnames INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC OBJEXT BUILD_CC cross_compiling CPP CXX CXXFLAGS ac_ct_CXX AR OBJDUMP RANLIB ac_ct_RANLIB MIG AS LD PWD_P MAKE MSGFMT MAKEINFO SED AUTOCONF CCVERSION SYSINCLUDES libc_cv_gcc_static_libgcc BASH libc_cv_have_bash2 KSH libc_cv_have_ksh AWK PERL INSTALL_INFO OLD_DEBIAN_INSTALL_INFO BISON VERSIONING libc_cv_asm_protected_directive libc_cv_initfinit_array libc_cv_z_nodelete libc_cv_z_nodlopen libc_cv_z_initfirst libc_cv_Bgroup ASFLAGS_config libc_cv_z_combreloc libc_cv_have_initfini libc_cv_cpp_asm_debuginfo no_whole_archive exceptions LIBGD EGREP sizeof_long_double libc_cv_gcc_unwind_find_fde uname_sysname uname_release uname_version old_glibc_headers libc_cv_slibdir libc_cv_localedir libc_cv_sysconfdir libc_cv_rootsbindir libc_cv_forced_unwind use_ldconfig ldd_rewrite_script gnu_ld gnu_as elf xcoff static shared pic_default profile omitfp bounded static_nss nopic_initfini DEFINES linux_doors mach_interface_list VERSION RELEASE LIB@&t@OBJS LTLIBOBJS'
++ac_subst_files=''
++
++# Initialize some variables set by options.
++ac_init_help=
++ac_init_version=false
++# The variables have the same names as the options, with
++# dashes changed to underlines.
++cache_file=/dev/null
++exec_prefix=NONE
++no_create=
++no_recursion=
++prefix=NONE
++program_prefix=NONE
++program_suffix=NONE
++program_transform_name=s,x,x,
++silent=
++site=
++srcdir=
++verbose=
++x_includes=NONE
++x_libraries=NONE
++
++# Installation directory options.
++# These are left unexpanded so users can "make install exec_prefix=/foo"
++# and all the variables that are supposed to be based on exec_prefix
++# by default will actually change.
++# Use braces instead of parens because sh, perl, etc. also accept them.
++bindir='${exec_prefix}/bin'
++sbindir='${exec_prefix}/sbin'
++libexecdir='${exec_prefix}/libexec'
++datadir='${prefix}/share'
++sysconfdir='${prefix}/etc'
++sharedstatedir='${prefix}/com'
++localstatedir='${prefix}/var'
++libdir='${exec_prefix}/lib'
++includedir='${prefix}/include'
++oldincludedir='/usr/include'
++infodir='${prefix}/info'
++mandir='${prefix}/man'
++
++ac_prev=
++for ac_option
++do
++ # If the previous option needs an argument, assign it.
++ if test -n "$ac_prev"; then
++ eval "$ac_prev=\$ac_option"
++ ac_prev=
++ continue
++ fi
++
++ ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'`
++
++ # Accept the important Cygnus configure options, so we can diagnose typos.
++
++ case $ac_option in
++
++ -bindir | --bindir | --bindi | --bind | --bin | --bi)
++ ac_prev=bindir ;;
++ -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
++ bindir=$ac_optarg ;;
++
++ -build | --build | --buil | --bui | --bu)
++ ac_prev=build_alias ;;
++ -build=* | --build=* | --buil=* | --bui=* | --bu=*)
++ build_alias=$ac_optarg ;;
++
++ -cache-file | --cache-file | --cache-fil | --cache-fi \
++ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
++ ac_prev=cache_file ;;
++ -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
++ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
++ cache_file=$ac_optarg ;;
++
++ --config-cache | -C)
++ cache_file=config.cache ;;
++
++ -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
++ ac_prev=datadir ;;
++ -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
++ | --da=*)
++ datadir=$ac_optarg ;;
++
++ -disable-* | --disable-*)
++ ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
++ # Reject names that are not valid shell variable names.
++ expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
++ { echo "$as_me: error: invalid feature name: $ac_feature" >&2
++ { (exit 1); exit 1; }; }
++ ac_feature=`echo $ac_feature | sed 's/-/_/g'`
++ eval "enable_$ac_feature=no" ;;
++
++ -enable-* | --enable-*)
++ ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
++ # Reject names that are not valid shell variable names.
++ expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
++ { echo "$as_me: error: invalid feature name: $ac_feature" >&2
++ { (exit 1); exit 1; }; }
++ ac_feature=`echo $ac_feature | sed 's/-/_/g'`
++ case $ac_option in
++ *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
++ *) ac_optarg=yes ;;
++ esac
++ eval "enable_$ac_feature='$ac_optarg'" ;;
++
++ -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
++ | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
++ | --exec | --exe | --ex)
++ ac_prev=exec_prefix ;;
++ -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
++ | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
++ | --exec=* | --exe=* | --ex=*)
++ exec_prefix=$ac_optarg ;;
++
++ -gas | --gas | --ga | --g)
++ # Obsolete; use --with-gas.
++ with_gas=yes ;;
++
++ -help | --help | --hel | --he | -h)
++ ac_init_help=long ;;
++ -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
++ ac_init_help=recursive ;;
++ -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
++ ac_init_help=short ;;
++
++ -host | --host | --hos | --ho)
++ ac_prev=host_alias ;;
++ -host=* | --host=* | --hos=* | --ho=*)
++ host_alias=$ac_optarg ;;
++
++ -includedir | --includedir | --includedi | --included | --include \
++ | --includ | --inclu | --incl | --inc)
++ ac_prev=includedir ;;
++ -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
++ | --includ=* | --inclu=* | --incl=* | --inc=*)
++ includedir=$ac_optarg ;;
++
++ -infodir | --infodir | --infodi | --infod | --info | --inf)
++ ac_prev=infodir ;;
++ -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
++ infodir=$ac_optarg ;;
++
++ -libdir | --libdir | --libdi | --libd)
++ ac_prev=libdir ;;
++ -libdir=* | --libdir=* | --libdi=* | --libd=*)
++ libdir=$ac_optarg ;;
++
++ -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
++ | --libexe | --libex | --libe)
++ ac_prev=libexecdir ;;
++ -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
++ | --libexe=* | --libex=* | --libe=*)
++ libexecdir=$ac_optarg ;;
++
++ -localstatedir | --localstatedir | --localstatedi | --localstated \
++ | --localstate | --localstat | --localsta | --localst \
++ | --locals | --local | --loca | --loc | --lo)
++ ac_prev=localstatedir ;;
++ -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
++ | --localstate=* | --localstat=* | --localsta=* | --localst=* \
++ | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
++ localstatedir=$ac_optarg ;;
++
++ -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
++ ac_prev=mandir ;;
++ -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
++ mandir=$ac_optarg ;;
++
++ -nfp | --nfp | --nf)
++ # Obsolete; use --without-fp.
++ with_fp=no ;;
++
++ -no-create | --no-create | --no-creat | --no-crea | --no-cre \
++ | --no-cr | --no-c | -n)
++ no_create=yes ;;
++
++ -no-recursion | --no-recursion | --no-recursio | --no-recursi \
++ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
++ no_recursion=yes ;;
++
++ -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
++ | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
++ | --oldin | --oldi | --old | --ol | --o)
++ ac_prev=oldincludedir ;;
++ -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
++ | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
++ | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
++ oldincludedir=$ac_optarg ;;
++
++ -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
++ ac_prev=prefix ;;
++ -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
++ prefix=$ac_optarg ;;
++
++ -program-prefix | --program-prefix | --program-prefi | --program-pref \
++ | --program-pre | --program-pr | --program-p)
++ ac_prev=program_prefix ;;
++ -program-prefix=* | --program-prefix=* | --program-prefi=* \
++ | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
++ program_prefix=$ac_optarg ;;
++
++ -program-suffix | --program-suffix | --program-suffi | --program-suff \
++ | --program-suf | --program-su | --program-s)
++ ac_prev=program_suffix ;;
++ -program-suffix=* | --program-suffix=* | --program-suffi=* \
++ | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
++ program_suffix=$ac_optarg ;;
++
++ -program-transform-name | --program-transform-name \
++ | --program-transform-nam | --program-transform-na \
++ | --program-transform-n | --program-transform- \
++ | --program-transform | --program-transfor \
++ | --program-transfo | --program-transf \
++ | --program-trans | --program-tran \
++ | --progr-tra | --program-tr | --program-t)
++ ac_prev=program_transform_name ;;
++ -program-transform-name=* | --program-transform-name=* \
++ | --program-transform-nam=* | --program-transform-na=* \
++ | --program-transform-n=* | --program-transform-=* \
++ | --program-transform=* | --program-transfor=* \
++ | --program-transfo=* | --program-transf=* \
++ | --program-trans=* | --program-tran=* \
++ | --progr-tra=* | --program-tr=* | --program-t=*)
++ program_transform_name=$ac_optarg ;;
++
++ -q | -quiet | --quiet | --quie | --qui | --qu | --q \
++ | -silent | --silent | --silen | --sile | --sil)
++ silent=yes ;;
++
++ -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
++ ac_prev=sbindir ;;
++ -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
++ | --sbi=* | --sb=*)
++ sbindir=$ac_optarg ;;
++
++ -sharedstatedir | --sharedstatedir | --sharedstatedi \
++ | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
++ | --sharedst | --shareds | --shared | --share | --shar \
++ | --sha | --sh)
++ ac_prev=sharedstatedir ;;
++ -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
++ | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
++ | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
++ | --sha=* | --sh=*)
++ sharedstatedir=$ac_optarg ;;
++
++ -site | --site | --sit)
++ ac_prev=site ;;
++ -site=* | --site=* | --sit=*)
++ site=$ac_optarg ;;
++
++ -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
++ ac_prev=srcdir ;;
++ -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
++ srcdir=$ac_optarg ;;
++
++ -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
++ | --syscon | --sysco | --sysc | --sys | --sy)
++ ac_prev=sysconfdir ;;
++ -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
++ | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
++ sysconfdir=$ac_optarg ;;
++
++ -target | --target | --targe | --targ | --tar | --ta | --t)
++ ac_prev=target_alias ;;
++ -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
++ target_alias=$ac_optarg ;;
++
++ -v | -verbose | --verbose | --verbos | --verbo | --verb)
++ verbose=yes ;;
++
++ -version | --version | --versio | --versi | --vers | -V)
++ ac_init_version=: ;;
++
++ -with-* | --with-*)
++ ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
++ # Reject names that are not valid shell variable names.
++ expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
++ { echo "$as_me: error: invalid package name: $ac_package" >&2
++ { (exit 1); exit 1; }; }
++ ac_package=`echo $ac_package| sed 's/-/_/g'`
++ case $ac_option in
++ *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
++ *) ac_optarg=yes ;;
++ esac
++ eval "with_$ac_package='$ac_optarg'" ;;
++
++ -without-* | --without-*)
++ ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'`
++ # Reject names that are not valid shell variable names.
++ expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
++ { echo "$as_me: error: invalid package name: $ac_package" >&2
++ { (exit 1); exit 1; }; }
++ ac_package=`echo $ac_package | sed 's/-/_/g'`
++ eval "with_$ac_package=no" ;;
++
++ --x)
++ # Obsolete; use --with-x.
++ with_x=yes ;;
++
++ -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
++ | --x-incl | --x-inc | --x-in | --x-i)
++ ac_prev=x_includes ;;
++ -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
++ | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
++ x_includes=$ac_optarg ;;
++
++ -x-libraries | --x-libraries | --x-librarie | --x-librari \
++ | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
++ ac_prev=x_libraries ;;
++ -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
++ | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
++ x_libraries=$ac_optarg ;;
++
++ -*) { echo "$as_me: error: unrecognized option: $ac_option
++Try \`$0 --help' for more information." >&2
++ { (exit 1); exit 1; }; }
++ ;;
++
++ *=*)
++ ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
++ # Reject names that are not valid shell variable names.
++ expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
++ { echo "$as_me: error: invalid variable name: $ac_envvar" >&2
++ { (exit 1); exit 1; }; }
++ ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`
++ eval "$ac_envvar='$ac_optarg'"
++ export $ac_envvar ;;
++
++ *)
++ # FIXME: should be removed in autoconf 3.0.
++ echo "$as_me: WARNING: you should use --build, --host, --target" >&2
++ expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
++ echo "$as_me: WARNING: invalid host type: $ac_option" >&2
++ : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
++ ;;
++
++ esac
++done
++
++if test -n "$ac_prev"; then
++ ac_option=--`echo $ac_prev | sed 's/_/-/g'`
++ { echo "$as_me: error: missing argument to $ac_option" >&2
++ { (exit 1); exit 1; }; }
++fi
++
++# Be sure to have absolute paths.
++for ac_var in exec_prefix prefix
++do
++ eval ac_val=$`echo $ac_var`
++ case $ac_val in
++ [\\/$]* | ?:[\\/]* | NONE | '' ) ;;
++ *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
++ { (exit 1); exit 1; }; };;
++ esac
++done
++
++# Be sure to have absolute paths.
++for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \
++ localstatedir libdir includedir oldincludedir infodir mandir
++do
++ eval ac_val=$`echo $ac_var`
++ case $ac_val in
++ [\\/$]* | ?:[\\/]* ) ;;
++ *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
++ { (exit 1); exit 1; }; };;
++ esac
++done
++
++# There might be people who depend on the old broken behavior: `$host'
++# used to hold the argument of --host etc.
++# FIXME: To remove some day.
++build=$build_alias
++host=$host_alias
++target=$target_alias
++
++# FIXME: To remove some day.
++if test "x$host_alias" != x; then
++ if test "x$build_alias" = x; then
++ cross_compiling=maybe
++ echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
++ If a cross compiler is detected then cross compile mode will be used." >&2
++ elif test "x$build_alias" != "x$host_alias"; then
++ cross_compiling=yes
++ fi
++fi
++
++ac_tool_prefix=
++test -n "$host_alias" && ac_tool_prefix=$host_alias-
++
++test "$silent" = yes && exec 6>/dev/null
++
++
++# Find the source files, if location was not specified.
++if test -z "$srcdir"; then
++ ac_srcdir_defaulted=yes
++ # Try the directory containing this script, then its parent.
++ ac_confdir=`(dirname "$0") 2>/dev/null ||
++$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
++ X"$0" : 'X\(//\)[^/]' \| \
++ X"$0" : 'X\(//\)$' \| \
++ X"$0" : 'X\(/\)' \| \
++ . : '\(.\)' 2>/dev/null ||
++echo X"$0" |
++ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
++ /^X\(\/\/\)[^/].*/{ s//\1/; q; }
++ /^X\(\/\/\)$/{ s//\1/; q; }
++ /^X\(\/\).*/{ s//\1/; q; }
++ s/.*/./; q'`
++ srcdir=$ac_confdir
++ if test ! -r $srcdir/$ac_unique_file; then
++ srcdir=..
++ fi
++else
++ ac_srcdir_defaulted=no
++fi
++if test ! -r $srcdir/$ac_unique_file; then
++ if test "$ac_srcdir_defaulted" = yes; then
++ { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2
++ { (exit 1); exit 1; }; }
++ else
++ { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2
++ { (exit 1); exit 1; }; }
++ fi
++fi
++(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null ||
++ { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2
++ { (exit 1); exit 1; }; }
++srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'`
++ac_env_build_alias_set=${build_alias+set}
++ac_env_build_alias_value=$build_alias
++ac_cv_env_build_alias_set=${build_alias+set}
++ac_cv_env_build_alias_value=$build_alias
++ac_env_host_alias_set=${host_alias+set}
++ac_env_host_alias_value=$host_alias
++ac_cv_env_host_alias_set=${host_alias+set}
++ac_cv_env_host_alias_value=$host_alias
++ac_env_target_alias_set=${target_alias+set}
++ac_env_target_alias_value=$target_alias
++ac_cv_env_target_alias_set=${target_alias+set}
++ac_cv_env_target_alias_value=$target_alias
++ac_env_CC_set=${CC+set}
++ac_env_CC_value=$CC
++ac_cv_env_CC_set=${CC+set}
++ac_cv_env_CC_value=$CC
++ac_env_CFLAGS_set=${CFLAGS+set}
++ac_env_CFLAGS_value=$CFLAGS
++ac_cv_env_CFLAGS_set=${CFLAGS+set}
++ac_cv_env_CFLAGS_value=$CFLAGS
++ac_env_LDFLAGS_set=${LDFLAGS+set}
++ac_env_LDFLAGS_value=$LDFLAGS
++ac_cv_env_LDFLAGS_set=${LDFLAGS+set}
++ac_cv_env_LDFLAGS_value=$LDFLAGS
++ac_env_CPPFLAGS_set=${CPPFLAGS+set}
++ac_env_CPPFLAGS_value=$CPPFLAGS
++ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set}
++ac_cv_env_CPPFLAGS_value=$CPPFLAGS
++ac_env_CPP_set=${CPP+set}
++ac_env_CPP_value=$CPP
++ac_cv_env_CPP_set=${CPP+set}
++ac_cv_env_CPP_value=$CPP
++ac_env_CXX_set=${CXX+set}
++ac_env_CXX_value=$CXX
++ac_cv_env_CXX_set=${CXX+set}
++ac_cv_env_CXX_value=$CXX
++ac_env_CXXFLAGS_set=${CXXFLAGS+set}
++ac_env_CXXFLAGS_value=$CXXFLAGS
++ac_cv_env_CXXFLAGS_set=${CXXFLAGS+set}
++ac_cv_env_CXXFLAGS_value=$CXXFLAGS
++
++#
++# Report the --help message.
++#
++if test "$ac_init_help" = "long"; then
++ # Omit some internal or obsolete options to make the list less imposing.
++ # This message is too long to be a string in the A/UX 3.1 sh.
++ cat <<_ACEOF
++\`configure' configures GNU C Library (see version.h) to adapt to many kinds of systems.
++
++Usage: $0 [OPTION]... [VAR=VALUE]...
++
++To assign environment variables (e.g., CC, CFLAGS...), specify them as
++VAR=VALUE. See below for descriptions of some of the useful variables.
++
++Defaults for the options are specified in brackets.
++
++Configuration:
++ -h, --help display this help and exit
++ --help=short display options specific to this package
++ --help=recursive display the short help of all the included packages
++ -V, --version display version information and exit
++ -q, --quiet, --silent do not print \`checking...' messages
++ --cache-file=FILE cache test results in FILE [disabled]
++ -C, --config-cache alias for \`--cache-file=config.cache'
++ -n, --no-create do not create output files
++ --srcdir=DIR find the sources in DIR [configure dir or \`..']
++
++_ACEOF
++
++ cat <<_ACEOF
++Installation directories:
++ --prefix=PREFIX install architecture-independent files in PREFIX
++ [$ac_default_prefix]
++ --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
++ [PREFIX]
++
++By default, \`make install' will install all the files in
++\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
++an installation prefix other than \`$ac_default_prefix' using \`--prefix',
++for instance \`--prefix=\$HOME'.
++
++For better control, use the options below.
++
++Fine tuning of the installation directories:
++ --bindir=DIR user executables [EPREFIX/bin]
++ --sbindir=DIR system admin executables [EPREFIX/sbin]
++ --libexecdir=DIR program executables [EPREFIX/libexec]
++ --datadir=DIR read-only architecture-independent data [PREFIX/share]
++ --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
++ --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
++ --localstatedir=DIR modifiable single-machine data [PREFIX/var]
++ --libdir=DIR object code libraries [EPREFIX/lib]
++ --includedir=DIR C header files [PREFIX/include]
++ --oldincludedir=DIR C header files for non-gcc [/usr/include]
++ --infodir=DIR info documentation [PREFIX/info]
++ --mandir=DIR man documentation [PREFIX/man]
++_ACEOF
++
++ cat <<\_ACEOF
++
++System types:
++ --build=BUILD configure for building on BUILD [guessed]
++ --host=HOST cross-compile to build programs to run on HOST [BUILD]
++_ACEOF
++fi
++
++if test -n "$ac_init_help"; then
++ case $ac_init_help in
++ short | recursive ) echo "Configuration of GNU C Library (see version.h):";;
++ esac
++ cat <<\_ACEOF
++
++Optional Features:
++ --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
++ --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
++ --disable-sanity-checks really do not use threads (should not be used except
++ in special situations) @<:@default=yes@:>@
++ --enable-check-abi do "make check-abi" in "make check" (no/warn/yes)
++ @<:@default=no@:>@
++ --enable-shared build shared library @<:@default=yes if GNU ld &
++ ELF@:>@
++ --enable-profile build profiled library @<:@default=yes@:>@
++ --enable-omitfp build undebuggable optimized library
++ @<:@default=no@:>@
++ --enable-bounded build with runtime bounds checking
++ @<:@default=no@:>@
++ --disable-versioning do not include versioning information in the library
++ objects @<:@default=yes if supported@:>@
++ --enable-oldest-abi=ABI configure the oldest ABI supported @<:@e.g. 2.2@:>@
++ @<:@default=glibc default@:>@
++ --enable-add-ons@<:@=DIRS...@:>@
++ configure and build add-ons in DIR1,DIR2,... search
++ for add-ons if no parameter given
++ --disable-hidden-plt do not hide internal function calls to avoid PLT
++ --enable-static-nss build static NSS modules @<:@default=no@:>@
++ --disable-force-install don't force installation of files from this package,
++ even if they are older than the installed files
++ --enable-kernel=VERSION compile for compatibility with kernel not older than
++ VERSION
++ --enable-all-warnings enable all useful warnings gcc can issue
++
++Optional Packages:
++ --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
++ --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
++ --with-gmp=DIRECTORY find GMP source code in DIRECTORY (not needed)
++ --with-gd=DIR find libgd include dir and library with prefix DIR
++ --with-gd-include=DIR find libgd include files in DIR
++ --with-gd-lib=DIR find libgd library files in DIR
++ --with-fp if using floating-point hardware @<:@default=yes@:>@
++ --with-binutils=PATH specify location of binutils (as and ld)
++ --with-elf if using the ELF object format
++ --with-xcoff if using the XCOFF object format
++ --without-cvs if CVS should not be used
++ --with-headers=PATH location of system headers to use (for example
++ /usr/src/linux/include) @<:@default=compiler
++ default@:>@
++ --with-tls enable support for TLS
++ --without-__thread do not use TLS features even when supporting them
++
++Some influential environment variables:
++ CC C compiler command
++ CFLAGS C compiler flags
++ LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
++ nonstandard directory <lib dir>
++ CPPFLAGS C/C++ preprocessor flags, e.g. -I<include dir> if you have
++ headers in a nonstandard directory <include dir>
++ CPP C preprocessor
++ CXX C++ compiler command
++ CXXFLAGS C++ compiler flags
++
++Use these variables to override the choices made by `configure' or to help
++it to find libraries and programs with nonstandard names/locations.
++
++Report bugs to <glibc>.
++_ACEOF
++fi
++
++if test "$ac_init_help" = "recursive"; then
++ # If there are subdirs, report their specific --help.
++ ac_popdir=`pwd`
++ for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
++ test -d $ac_dir || continue
++ ac_builddir=.
++
++if test "$ac_dir" != .; then
++ ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
++ # A "../" for each directory in $ac_dir_suffix.
++ ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
++else
++ ac_dir_suffix= ac_top_builddir=
++fi
++
++case $srcdir in
++ .) # No --srcdir option. We are building in place.
++ ac_srcdir=.
++ if test -z "$ac_top_builddir"; then
++ ac_top_srcdir=.
++ else
++ ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
++ fi ;;
++ [\\/]* | ?:[\\/]* ) # Absolute path.
++ ac_srcdir=$srcdir$ac_dir_suffix;
++ ac_top_srcdir=$srcdir ;;
++ *) # Relative path.
++ ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
++ ac_top_srcdir=$ac_top_builddir$srcdir ;;
++esac
++# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be
++# absolute.
++ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd`
++ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd`
++ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd`
++ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd`
++
++ cd $ac_dir
++ # Check for guested configure; otherwise get Cygnus style configure.
++ if test -f $ac_srcdir/configure.gnu; then
++ echo
++ $SHELL $ac_srcdir/configure.gnu --help=recursive
++ elif test -f $ac_srcdir/configure; then
++ echo
++ $SHELL $ac_srcdir/configure --help=recursive
++ elif test -f $ac_srcdir/configure.ac ||
++ test -f $ac_srcdir/configure.in; then
++ echo
++ $ac_configure --help
++ else
++ echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
++ fi
++ cd "$ac_popdir"
++ done
++fi
++
++test -n "$ac_init_help" && exit 0
++if $ac_init_version; then
++ cat <<\_ACEOF
++GNU C Library configure (see version.h)
++generated by GNU Autoconf 2.57
++
++Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002
++Free Software Foundation, Inc.
++This configure script is free software; the Free Software Foundation
++gives unlimited permission to copy, distribute and modify it.
++_ACEOF
++ exit 0
++fi
++exec 5>config.log
++cat >&5 <<_ACEOF
++This file contains any messages produced by compilers while
++running configure, to aid debugging if configure makes a mistake.
++
++It was created by GNU C Library $as_me (see version.h), which was
++generated by GNU Autoconf 2.57. Invocation command line was
++
++ $ $0 $@
++
++_ACEOF
++{
++cat <<_ASUNAME
++@%:@@%:@ --------- @%:@@%:@
++@%:@@%:@ Platform. @%:@@%:@
++@%:@@%:@ --------- @%:@@%:@
++
++hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
++uname -m = `(uname -m) 2>/dev/null || echo unknown`
++uname -r = `(uname -r) 2>/dev/null || echo unknown`
++uname -s = `(uname -s) 2>/dev/null || echo unknown`
++uname -v = `(uname -v) 2>/dev/null || echo unknown`
++
++/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
++/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown`
++
++/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown`
++/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown`
++/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
++hostinfo = `(hostinfo) 2>/dev/null || echo unknown`
++/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown`
++/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown`
++/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown`
++
++_ASUNAME
++
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ echo "PATH: $as_dir"
++done
++
++} >&5
++
++cat >&5 <<_ACEOF
++
++
++@%:@@%:@ ----------- @%:@@%:@
++@%:@@%:@ Core tests. @%:@@%:@
++@%:@@%:@ ----------- @%:@@%:@
++
++_ACEOF
++
++
++# Keep a trace of the command line.
++# Strip out --no-create and --no-recursion so they do not pile up.
++# Strip out --silent because we don't want to record it for future runs.
++# Also quote any args containing shell meta-characters.
++# Make two passes to allow for proper duplicate-argument suppression.
++ac_configure_args=
++ac_configure_args0=
++ac_configure_args1=
++ac_sep=
++ac_must_keep_next=false
++for ac_pass in 1 2
++do
++ for ac_arg
++ do
++ case $ac_arg in
++ -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
++ -q | -quiet | --quiet | --quie | --qui | --qu | --q \
++ | -silent | --silent | --silen | --sile | --sil)
++ continue ;;
++ *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
++ ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
++ esac
++ case $ac_pass in
++ 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
++ 2)
++ ac_configure_args1="$ac_configure_args1 '$ac_arg'"
++ if test $ac_must_keep_next = true; then
++ ac_must_keep_next=false # Got value, back to normal.
++ else
++ case $ac_arg in
++ *=* | --config-cache | -C | -disable-* | --disable-* \
++ | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
++ | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
++ | -with-* | --with-* | -without-* | --without-* | --x)
++ case "$ac_configure_args0 " in
++ "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
++ esac
++ ;;
++ -* ) ac_must_keep_next=true ;;
++ esac
++ fi
++ ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'"
++ # Get rid of the leading space.
++ ac_sep=" "
++ ;;
++ esac
++ done
++done
++$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; }
++$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; }
++
++# When interrupted or exit'd, cleanup temporary files, and complete
++# config.log. We remove comments because anyway the quotes in there
++# would cause problems or look ugly.
++# WARNING: Be sure not to use single quotes in there, as some shells,
++# such as our DU 5.0 friend, will then `close' the trap.
++trap 'exit_status=$?
++ # Save into config.log some information that might help in debugging.
++ {
++ echo
++
++ cat <<\_ASBOX
++@%:@@%:@ ---------------- @%:@@%:@
++@%:@@%:@ Cache variables. @%:@@%:@
++@%:@@%:@ ---------------- @%:@@%:@
++_ASBOX
++ echo
++ # The following way of writing the cache mishandles newlines in values,
++{
++ (set) 2>&1 |
++ case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in
++ *ac_space=\ *)
++ sed -n \
++ "s/'"'"'/'"'"'\\\\'"'"''"'"'/g;
++ s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p"
++ ;;
++ *)
++ sed -n \
++ "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
++ ;;
++ esac;
++}
++ echo
++
++ cat <<\_ASBOX
++@%:@@%:@ ----------------- @%:@@%:@
++@%:@@%:@ Output variables. @%:@@%:@
++@%:@@%:@ ----------------- @%:@@%:@
++_ASBOX
++ echo
++ for ac_var in $ac_subst_vars
++ do
++ eval ac_val=$`echo $ac_var`
++ echo "$ac_var='"'"'$ac_val'"'"'"
++ done | sort
++ echo
++
++ if test -n "$ac_subst_files"; then
++ cat <<\_ASBOX
++@%:@@%:@ ------------- @%:@@%:@
++@%:@@%:@ Output files. @%:@@%:@
++@%:@@%:@ ------------- @%:@@%:@
++_ASBOX
++ echo
++ for ac_var in $ac_subst_files
++ do
++ eval ac_val=$`echo $ac_var`
++ echo "$ac_var='"'"'$ac_val'"'"'"
++ done | sort
++ echo
++ fi
++
++ if test -s confdefs.h; then
++ cat <<\_ASBOX
++@%:@@%:@ ----------- @%:@@%:@
++@%:@@%:@ confdefs.h. @%:@@%:@
++@%:@@%:@ ----------- @%:@@%:@
++_ASBOX
++ echo
++ sed "/^$/d" confdefs.h | sort
++ echo
++ fi
++ test "$ac_signal" != 0 &&
++ echo "$as_me: caught signal $ac_signal"
++ echo "$as_me: exit $exit_status"
++ } >&5
++ rm -f core *.core &&
++ rm -rf conftest* confdefs* conf$$* $ac_clean_files &&
++ exit $exit_status
++ ' 0
++for ac_signal in 1 2 13 15; do
++ trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
++done
++ac_signal=0
++
++# confdefs.h avoids OS command line length limits that DEFS can exceed.
++rm -rf conftest* confdefs.h
++# AIX cpp loses on an empty file, so make sure it contains at least a newline.
++echo >confdefs.h
++
++# Predefined preprocessor variables.
++
++cat >>confdefs.h <<_ACEOF
++@%:@define PACKAGE_NAME "$PACKAGE_NAME"
++_ACEOF
++
++
++cat >>confdefs.h <<_ACEOF
++@%:@define PACKAGE_TARNAME "$PACKAGE_TARNAME"
++_ACEOF
++
++
++cat >>confdefs.h <<_ACEOF
++@%:@define PACKAGE_VERSION "$PACKAGE_VERSION"
++_ACEOF
++
++
++cat >>confdefs.h <<_ACEOF
++@%:@define PACKAGE_STRING "$PACKAGE_STRING"
++_ACEOF
++
++
++cat >>confdefs.h <<_ACEOF
++@%:@define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
++_ACEOF
++
++
++# Let the site file select an alternate cache file if it wants to.
++# Prefer explicitly selected file to automatically selected ones.
++if test -z "$CONFIG_SITE"; then
++ if test "x$prefix" != xNONE; then
++ CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
++ else
++ CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
++ fi
++fi
++for ac_site_file in $CONFIG_SITE; do
++ if test -r "$ac_site_file"; then
++ { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
++echo "$as_me: loading site script $ac_site_file" >&6;}
++ sed 's/^/| /' "$ac_site_file" >&5
++ . "$ac_site_file"
++ fi
++done
++
++if test -r "$cache_file"; then
++ # Some versions of bash will fail to source /dev/null (special
++ # files actually), so we avoid doing that.
++ if test -f "$cache_file"; then
++ { echo "$as_me:$LINENO: loading cache $cache_file" >&5
++echo "$as_me: loading cache $cache_file" >&6;}
++ case $cache_file in
++ [\\/]* | ?:[\\/]* ) . $cache_file;;
++ *) . ./$cache_file;;
++ esac
++ fi
++else
++ { echo "$as_me:$LINENO: creating cache $cache_file" >&5
++echo "$as_me: creating cache $cache_file" >&6;}
++ >$cache_file
++fi
++
++# Check that the precious variables saved in the cache have kept the same
++# value.
++ac_cache_corrupted=false
++for ac_var in `(set) 2>&1 |
++ sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do
++ eval ac_old_set=\$ac_cv_env_${ac_var}_set
++ eval ac_new_set=\$ac_env_${ac_var}_set
++ eval ac_old_val="\$ac_cv_env_${ac_var}_value"
++ eval ac_new_val="\$ac_env_${ac_var}_value"
++ case $ac_old_set,$ac_new_set in
++ set,)
++ { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
++echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
++ ac_cache_corrupted=: ;;
++ ,set)
++ { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5
++echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
++ ac_cache_corrupted=: ;;
++ ,);;
++ *)
++ if test "x$ac_old_val" != "x$ac_new_val"; then
++ { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
++echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
++ { echo "$as_me:$LINENO: former value: $ac_old_val" >&5
++echo "$as_me: former value: $ac_old_val" >&2;}
++ { echo "$as_me:$LINENO: current value: $ac_new_val" >&5
++echo "$as_me: current value: $ac_new_val" >&2;}
++ ac_cache_corrupted=:
++ fi;;
++ esac
++ # Pass precious variables to config.status.
++ if test "$ac_new_set" = set; then
++ case $ac_new_val in
++ *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
++ ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
++ *) ac_arg=$ac_var=$ac_new_val ;;
++ esac
++ case " $ac_configure_args " in
++ *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
++ *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
++ esac
++ fi
++done
++if $ac_cache_corrupted; then
++ { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5
++echo "$as_me: error: changes in the environment can compromise the build" >&2;}
++ { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
++echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
++ { (exit 1); exit 1; }; }
++fi
++
++ac_ext=c
++ac_cpp='$CPP $CPPFLAGS'
++ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
++ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
++ac_compiler_gnu=$ac_cv_c_compiler_gnu
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++ ac_config_headers="$ac_config_headers config.h"
++
++ac_aux_dir=
++for ac_dir in scripts $srcdir/scripts; do
++ if test -f $ac_dir/install-sh; then
++ ac_aux_dir=$ac_dir
++ ac_install_sh="$ac_aux_dir/install-sh -c"
++ break
++ elif test -f $ac_dir/install.sh; then
++ ac_aux_dir=$ac_dir
++ ac_install_sh="$ac_aux_dir/install.sh -c"
++ break
++ elif test -f $ac_dir/shtool; then
++ ac_aux_dir=$ac_dir
++ ac_install_sh="$ac_aux_dir/shtool install -c"
++ break
++ fi
++done
++if test -z "$ac_aux_dir"; then
++ { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in scripts $srcdir/scripts" >&5
++echo "$as_me: error: cannot find install-sh or install.sh in scripts $srcdir/scripts" >&2;}
++ { (exit 1); exit 1; }; }
++fi
++ac_config_guess="$SHELL $ac_aux_dir/config.guess"
++ac_config_sub="$SHELL $ac_aux_dir/config.sub"
++ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
++
++
++if test "`cd $srcdir; /bin/pwd`" = "`/bin/pwd`"; then
++ { { echo "$as_me:$LINENO: error: you must configure in a separate build directory" >&5
++echo "$as_me: error: you must configure in a separate build directory" >&2;}
++ { (exit 1); exit 1; }; }
++fi
++
++# This will get text that should go into config.make.
++config_vars=
++
++# Check for a --with-gmp argument and set gmp-srcdir in config.make.
++
++# Check whether --with-gmp or --without-gmp was given.
++if test "${with_gmp+set}" = set; then
++ withval="$with_gmp"
++
++case "$with_gmp" in
++yes) { { echo "$as_me:$LINENO: error: --with-gmp requires an argument; use --with-gmp=DIRECTORY" >&5
++echo "$as_me: error: --with-gmp requires an argument; use --with-gmp=DIRECTORY" >&2;}
++ { (exit 1); exit 1; }; } ;;
++''|no) ;;
++*) config_vars="$config_vars
++gmp-srcdir = $withval" ;;
++esac
++
++fi;
++# Check for a --with-gd argument and set libgd-LDFLAGS in config.make.
++
++# Check whether --with-gd or --without-gd was given.
++if test "${with_gd+set}" = set; then
++ withval="$with_gd"
++ case "$with_gd" in
++yes|''|no) ;;
++*) libgd_include="-I$withval/include"
++ libgd_ldflags="-L$withval/lib" ;;
++esac
++
++fi;
++
++# Check whether --with-gd-include or --without-gd-include was given.
++if test "${with_gd_include+set}" = set; then
++ withval="$with_gd_include"
++ case "$with_gd_include" in
++''|no) ;;
++*) libgd_include="-I$withval" ;;
++esac
++
++fi;
++
++# Check whether --with-gd-lib or --without-gd-lib was given.
++if test "${with_gd_lib+set}" = set; then
++ withval="$with_gd_lib"
++ case "$with_gd_lib" in
++''|no) ;;
++*) libgd_ldflags="-L$withval" ;;
++esac
++
++fi;
++
++if test -n "$libgd_include"; then
++ config_vars="$config_vars
++CFLAGS-memusagestat.c = $libgd_include"
++fi
++if test -n "$libgd_ldflags"; then
++ config_vars="$config_vars
++libgd-LDFLAGS = $libgd_ldflags"
++fi
++
++
++# Check whether --with-fp or --without-fp was given.
++if test "${with_fp+set}" = set; then
++ withval="$with_fp"
++ with_fp=$withval
++else
++ with_fp=yes
++fi;
++
++
++# Check whether --with-binutils or --without-binutils was given.
++if test "${with_binutils+set}" = set; then
++ withval="$with_binutils"
++ path_binutils=$withval
++else
++ path_binutils=''
++fi;
++
++# Check whether --with-elf or --without-elf was given.
++if test "${with_elf+set}" = set; then
++ withval="$with_elf"
++ elf=$withval
++else
++ elf=no
++fi;
++
++# Check whether --with-xcoff or --without-xcoff was given.
++if test "${with_xcoff+set}" = set; then
++ withval="$with_xcoff"
++ xcoff=$withval
++else
++ xcoff=no
++fi;
++
++# Check whether --with-cvs or --without-cvs was given.
++if test "${with_cvs+set}" = set; then
++ withval="$with_cvs"
++ with_cvs=$withval
++else
++ with_cvs=yes
++fi;
++if test "$with_cvs" = yes; then
++ if test -d $srcdir/CVS && grep :pserver: $srcdir/CVS/Root > /dev/null
++ then
++ with_cvs=no
++ fi
++fi
++
++
++
++# Check whether --with-headers or --without-headers was given.
++if test "${with_headers+set}" = set; then
++ withval="$with_headers"
++ sysheaders=$withval
++else
++ sysheaders=''
++fi;
++
++# Check whether --enable-sanity-checks or --disable-sanity-checks was given.
++if test "${enable_sanity_checks+set}" = set; then
++ enableval="$enable_sanity_checks"
++ enable_sanity=$enableval
++else
++ enable_sanity=yes
++fi;
++
++
++# Check whether --enable-check-abi or --disable-check-abi was given.
++if test "${enable_check_abi+set}" = set; then
++ enableval="$enable_check_abi"
++ enable_check_abi=$enableval
++else
++ enable_check_abi=no
++fi;
++
++static=yes
++# Check whether --enable-shared or --disable-shared was given.
++if test "${enable_shared+set}" = set; then
++ enableval="$enable_shared"
++ shared=$enableval
++else
++ shared=default
++fi;
++# Check whether --enable-profile or --disable-profile was given.
++if test "${enable_profile+set}" = set; then
++ enableval="$enable_profile"
++ profile=$enableval
++else
++ profile=yes
++fi;
++# Check whether --enable-omitfp or --disable-omitfp was given.
++if test "${enable_omitfp+set}" = set; then
++ enableval="$enable_omitfp"
++ omitfp=$enableval
++else
++ omitfp=no
++fi;
++# Check whether --enable-bounded or --disable-bounded was given.
++if test "${enable_bounded+set}" = set; then
++ enableval="$enable_bounded"
++ bounded=$enableval
++else
++ bounded=no
++fi;
++# Check whether --enable-versioning or --disable-versioning was given.
++if test "${enable_versioning+set}" = set; then
++ enableval="$enable_versioning"
++ enable_versioning=$enableval
++else
++ enable_versioning=yes
++fi;
++
++# Check whether --enable-oldest-abi or --disable-oldest-abi was given.
++if test "${enable_oldest_abi+set}" = set; then
++ enableval="$enable_oldest_abi"
++ oldest_abi=$enableval
++else
++ oldest_abi=no
++fi;
++if test "$oldest_abi" = yes || test "$oldest_abi" = no; then
++ oldest_abi=default
++else
++ cat >>confdefs.h <<_ACEOF
++@%:@define GLIBC_OLDEST_ABI "$oldest_abi"
++_ACEOF
++
++fi
++
++
++# Check whether --enable-add-ons or --disable-add-ons was given.
++if test "${enable_add_ons+set}" = set; then
++ enableval="$enable_add_ons"
++ case "$enableval" in
++ yes) add_ons=`cd $srcdir && echo */configure | sed -e 's!/configure!!g'`
++ test "$add_ons" = "*" && add_ons= ;;
++ *) add_ons=`echo "$enableval" | sed 's/,/ /g'`;;
++ esac
++else
++ add_ons=
++fi;
++
++
++# Check whether --with-tls or --without-tls was given.
++if test "${with_tls+set}" = set; then
++ withval="$with_tls"
++ usetls=$withval
++else
++ usetls=no
++fi;
++
++
++# Check whether --with-__thread or --without-__thread was given.
++if test "${with___thread+set}" = set; then
++ withval="$with___thread"
++ use__thread=$withval
++else
++ use__thread=yes
++fi;
++
++# Check whether --enable-hidden-plt or --disable-hidden-plt was given.
++if test "${enable_hidden_plt+set}" = set; then
++ enableval="$enable_hidden_plt"
++ hidden=$enableval
++else
++ hidden=yes
++fi;
++if test "x$hidden" = xno; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define NO_HIDDEN 1
++_ACEOF
++
++fi
++
++
++
++subdirs="$subdirs "
++add_ons_pfx=
++if test x"$add_ons" != x; then
++ for f in $add_ons; do
++ # Some sanity checks
++ if test "$f" = "crypt"; then
++ { { echo "$as_me:$LINENO: error:
++*** It seems that you're using an old \`crypt' add-on. crypt is now
++*** part of glibc and using the old add-on will not work with this
++*** release. Start again with fresh sources and without the old
++*** \`crypt' add-on." >&5
++echo "$as_me: error:
++*** It seems that you're using an old \`crypt' add-on. crypt is now
++*** part of glibc and using the old add-on will not work with this
++*** release. Start again with fresh sources and without the old
++*** \`crypt' add-on." >&2;}
++ { (exit 1); exit 1; }; }
++ fi
++ if test "$f" = "localedata"; then
++ { { echo "$as_me:$LINENO: error:
++*** It seems that you're using an old \`localedata' add-on. localedata
++*** is now part of glibc and using the old add-on will not work with
++*** this release. Start again with fresh sources and without the old
++*** \`localedata' add-on." >&5
++echo "$as_me: error:
++*** It seems that you're using an old \`localedata' add-on. localedata
++*** is now part of glibc and using the old add-on will not work with
++*** this release. Start again with fresh sources and without the old
++*** \`localedata' add-on." >&2;}
++ { (exit 1); exit 1; }; }
++ fi
++ # Test whether such a subdir really exists.
++ if test -d $srcdir/$f; then
++ add_ons_pfx="$add_ons_pfx $f/"
++ subdirs="$subdirs $f"
++ else
++ { { echo "$as_me:$LINENO: error: add-on directory \"$f\" does not exist" >&5
++echo "$as_me: error: add-on directory \"$f\" does not exist" >&2;}
++ { (exit 1); exit 1; }; }
++ fi
++ done
++fi
++
++# Check whether --enable-static-nss or --disable-static-nss was given.
++if test "${enable_static_nss+set}" = set; then
++ enableval="$enable_static_nss"
++ static_nss=$enableval
++else
++ static_nss=no
++fi;
++if test x"$static_nss" = xyes || test x"$shared" = xno; then
++ static_nss=yes
++ cat >>confdefs.h <<\_ACEOF
++@%:@define DO_STATIC_NSS 1
++_ACEOF
++
++fi
++
++# Check whether --enable-force-install or --disable-force-install was given.
++if test "${enable_force_install+set}" = set; then
++ enableval="$enable_force_install"
++ force_install=$enableval
++else
++ force_install=yes
++fi;
++
++
++# Check whether --enable-kernel or --disable-kernel was given.
++if test "${enable_kernel+set}" = set; then
++ enableval="$enable_kernel"
++ minimum_kernel=$enableval
++fi;
++if test "$minimum_kernel" = yes || test "$minimum_kernel" = no; then
++ # Better nothing than this.
++ minimum_kernel=""
++else
++ if test "$minimum_kernel" = current; then
++ minimum_kernel=`uname -r 2>/dev/null` || minimum_kernel=
++ fi
++fi
++
++# Check whether --enable-all-warnings or --disable-all-warnings was given.
++if test "${enable_all_warnings+set}" = set; then
++ enableval="$enable_all_warnings"
++ all_warnings=$enableval
++fi;
++
++
++# Make sure we can run config.sub.
++$ac_config_sub sun4 >/dev/null 2>&1 ||
++ { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5
++echo "$as_me: error: cannot run $ac_config_sub" >&2;}
++ { (exit 1); exit 1; }; }
++
++echo "$as_me:$LINENO: checking build system type" >&5
++echo $ECHO_N "checking build system type... $ECHO_C" >&6
++if test "${ac_cv_build+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ ac_cv_build_alias=$build_alias
++test -z "$ac_cv_build_alias" &&
++ ac_cv_build_alias=`$ac_config_guess`
++test -z "$ac_cv_build_alias" &&
++ { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5
++echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
++ { (exit 1); exit 1; }; }
++ac_cv_build=`$ac_config_sub $ac_cv_build_alias` ||
++ { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" >&5
++echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed" >&2;}
++ { (exit 1); exit 1; }; }
++
++fi
++echo "$as_me:$LINENO: result: $ac_cv_build" >&5
++echo "${ECHO_T}$ac_cv_build" >&6
++build=$ac_cv_build
++build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
++build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
++build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
++
++
++echo "$as_me:$LINENO: checking host system type" >&5
++echo $ECHO_N "checking host system type... $ECHO_C" >&6
++if test "${ac_cv_host+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ ac_cv_host_alias=$host_alias
++test -z "$ac_cv_host_alias" &&
++ ac_cv_host_alias=$ac_cv_build_alias
++ac_cv_host=`$ac_config_sub $ac_cv_host_alias` ||
++ { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5
++echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;}
++ { (exit 1); exit 1; }; }
++
++fi
++echo "$as_me:$LINENO: result: $ac_cv_host" >&5
++echo "${ECHO_T}$ac_cv_host" >&6
++host=$ac_cv_host
++host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
++host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
++host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
++
++
++
++# The way shlib-versions is used to generate soversions.mk uses a
++# fairly simplistic model for name recognition that can't distinguish
++# i486-pc-linux-gnu fully from i486-pc-gnu. So we mutate a $host_os
++# of `gnu*' here to be `gnu-gnu*' just so that shlib-versions can
++# tell. This doesn't get used much beyond that, so it's fairly safe.
++case "$host_os" in
++linux*)
++ ;;
++gnu*)
++ host_os=`echo $host_os | sed -e 's/gnu/gnu-gnu/'`
++ ;;
++esac
++
++# We keep the original values in `$config_*' and never modify them, so we
++# can write them unchanged into config.make. Everything else uses
++# $machine, $vendor, and $os, and changes them whenever convenient.
++config_machine=$host_cpu config_vendor=$host_vendor config_os=$host_os
++
++# Don't allow vendor == "unknown"
++test "$config_vendor" = unknown && config_vendor=
++config_os="`echo $config_os | sed 's/^unknown-//'`"
++
++# Some configurations imply other options.
++case "$host_os" in
++gnu* | linux* | bsd4.4* | netbsd* | freebsd*)
++ # These systems always use GNU tools.
++ gnu_ld=yes gnu_as=yes ;;
++esac
++case "$host_os" in
++# i586-linuxaout is mangled into i586-pc-linux-gnuaout
++linux*ecoff* | linux*aout* | gnu*aout* | gnu*ecoff*)
++ ;;
++gnu* | linux* | freebsd* | netbsd* | sysv4* | solaris2* | irix6*)
++ # These systems (almost) always use the ELF format.
++ elf=yes
++ ;;
++aix*)
++ # These systems are always xcoff
++ xcoff=yes
++ elf=no
++ ;;
++esac
++
++machine=$config_machine
++vendor=$config_vendor
++os=$config_os
++
++# config.guess on some IBM machines says `rs6000' instead of `powerpc'.
++# Unify this here.
++if test "$machine" = rs6000; then
++ machine="powerpc"
++fi
++
++# Braindead PowerPC box with absolutely no FPU.
++case "$machine-$host_os" in
++ powerpc*-*soft)
++ with_fp=no
++ ;;
++esac
++
++###
++### I put this here to prevent those annoying emails from people who cannot
++### read and try to compile glibc on unsupported platforms. --drepper
++###
++### By using the undocumented --enable-hacker-mode option for configure
++### one can skip this test to make the configuration not fail for unsupported
++### platforms.
++###
++if test -z "$enable_hacker_mode"; then
++ case "$machine-$host_os" in
++ *-linux* | *-gnu* | arm*-none* | powerpc-aix4.3.*)
++ ;;
++ *)
++ echo "*** The GNU C library is currently not available for this platform."
++ echo "*** So far nobody cared to port it and if there is no volunteer it"
++ echo "*** might never happen. So, if you have interest to see glibc on"
++ echo "*** this platform visit"
++ echo "*** http://www.gnu.org/software/libc/porting.html"
++ echo "*** and join the group of porters"
++ exit 1
++ ;;
++ esac
++fi
++
++# Expand the configuration machine name into a subdirectory by architecture
++# type and particular chip.
++case "$machine" in
++a29k | am29000) base_machine=a29k machine=a29k ;;
++alpha*) base_machine=alpha machine=alpha/$machine ;;
++arm*) base_machine=arm machine=arm/arm32/$machine ;;
++c3[012]) base_machine=cx0 machine=cx0/c30 ;;
++c4[04]) base_machine=cx0 machine=cx0/c40 ;;
++hppa*64*) base_machine=hppa machine=hppa/hppa64 ;;
++hppa*) base_machine=hppa machine=hppa/hppa1.1 ;;
++i[3456]86) base_machine=i386 machine=i386/$machine ;;
++ia64) base_machine=ia64 machine=ia64 ;;
++m680?0) base_machine=m68k machine=m68k/$machine ;;
++m68k) base_machine=m68k machine=m68k/m68020 ;;
++m88???) base_machine=m88k machine=m88k/$machine ;;
++m88k) base_machine=m88k machine=m88k/m88100 ;;
++mips64*) base_machine=mips64
++ case "$CC $CFLAGS $CPPFLAGS " in
++ *" -mabi=n32 "*) mips_cc_abi=n32 ;;
++ *" -mabi=64 "*|*" -mabi=n64 "*) mips_cc_abi=64 ;;
++ *" -mabi=32 "*|*" -mabi=o32 "*) mips_cc_abi=32 ;;
++ *) mips_cc_abi=default ;;
++ esac
++ case $config_os in
++ *abin32*) mips_config_abi=n32 ;;
++ *abi64*|*abin64*) mips_config_abi=64 ;;
++ *abi32*|*abio32*) mips_config_abi=32 ;;
++ *) mips_config_abi=$mips_cc_abi ;;
++ esac
++ case $mips_config_abi in
++ default) machine=mips/mips64/n32 mips_config_abi=n32 ;;
++ n32) machine=mips/mips64/n32 ;;
++ 64) machine=mips/mips64/n64 ;;
++ 32) machine=mips/mips32/kern64 ;;
++ esac
++ machine=$machine/$config_machine
++ if test $mips_config_abi != $mips_cc_abi; then
++ # This won't make it to config.make, but we want to
++ # set this in case configure tests depend on it.
++ CPPFLAGS="$CPPFLAGS -mabi=$mips_config_abi"
++ fi
++ ;;
++mips*) base_machine=mips machine=mips/mips32/$machine ;;
++powerpc) base_machine=powerpc machine=powerpc/powerpc32 ;;
++powerpc64) base_machine=powerpc machine=powerpc/powerpc64 ;;
++s390) base_machine=s390 machine=s390/s390-32 ;;
++s390x) base_machine=s390 machine=s390/s390-64 ;;
++sh3*) base_machine=sh machine=sh/sh3 ;;
++sh4*) base_machine=sh machine=sh/sh4 ;;
++sparc | sparcv[67])
++ base_machine=sparc machine=sparc/sparc32 ;;
++sparcv8 | supersparc | hypersparc)
++ base_machine=sparc machine=sparc/sparc32/sparcv8 ;;
++sparcv8plus | sparcv8plusa | sparcv9)
++ base_machine=sparc machine=sparc/sparc32/sparcv9 ;;
++sparcv8plusb | sparcv9b)
++ base_machine=sparc machine=sparc/sparc32/sparcv9b ;;
++sparc64 | ultrasparc)
++ base_machine=sparc machine=sparc/sparc64 ;;
++sparc64b | ultrasparc3)
++ base_machine=sparc machine=sparc/sparc64/sparcv9b ;;
++thumb*) base_machine=thumb machine=arm/thumb/$machine ;;
++*) base_machine=$machine ;;
++esac
++
++
++if test "$base_machine" = "i386"; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define USE_REGPARMS 1
++_ACEOF
++
++fi
++
++# Compute the list of sysdep directories for this configuration.
++# This can take a while to compute.
++sysdep_dir=$srcdir/sysdeps
++echo "$as_me:$LINENO: checking sysdep dirs" >&5
++echo $ECHO_N "checking sysdep dirs... $ECHO_C" >&6
++# Make sco3.2v4 become sco3.2.4 and sunos4.1.1_U1 become sunos4.1.1.U1.
++os="`echo $os | sed 's/\([0-9A-Z]\)[v_]\([0-9A-Z]\)/\1.\2/g'`"
++
++case "$os" in
++gnu*)
++ base_os=mach/hurd ;;
++netbsd* | 386bsd* | freebsd* | bsdi*)
++ base_os=unix/bsd/bsd4.4 ;;
++osf* | sunos* | ultrix* | newsos* | dynix* | *bsd*)
++ base_os=unix/bsd ;;
++sysv* | isc* | esix* | sco* | minix* | irix4* | linux*)
++ base_os=unix/sysv ;;
++irix6*)
++ base_os=unix/sysv/irix6/$os ;;
++solaris[2-9]*)
++ base_os=unix/sysv/sysv4 ;;
++hpux*)
++ base_os=unix/sysv/hpux/$os ;;
++aix4.3*)
++ base_os=unix/sysv/aix/aix4.3 ;;
++none)
++ base_os=standalone ;;
++*)
++ base_os='' ;;
++esac
++
++# For sunos4.1.1, try sunos4.1.1, then sunos4.1, then sunos4, then sunos.
++tail=$os
++ostry=$os
++while o=`echo $tail | sed 's/\.[^.]*$//'`; test $o != $tail; do
++ ostry="$ostry /$o"
++ tail=$o
++done
++o=`echo $tail | sed 's/[0-9]*$//'`
++if test $o != $tail; then
++ ostry="$ostry /$o"
++fi
++# For linux-gnu, try linux-gnu, then linux.
++o=`echo $tail | sed 's/-.*$//'`
++if test $o != $tail; then
++ ostry="$ostry /$o"
++fi
++
++# For unix/sysv/sysv4, try unix/sysv/sysv4, then unix/sysv, then unix.
++base=
++tail=$base_os
++while b=`echo $tail | sed 's@^\(.*\)/\([^/]*\)$@& \1@'`; test -n "$b"; do
++ set $b
++ base="$base /$1"
++ tail="$2"
++done
++
++# For sparc/sparc32, try sparc/sparc32 and then sparc.
++mach=
++tail=$machine
++while m=`echo $tail | sed 's@^\(.*\)/\([^/]*\)$@& \1@'`; test -n "$m"; do
++ set $m
++ # Prepend the machine's FPU directory unless --without-fp.
++ if test "$with_fp" = yes; then
++ mach="$mach /$1/fpu"
++ else
++ mach="$mach /$1/nofpu"
++ fi
++ mach="$mach /$1"
++ tail="$2"
++done
++
++
++# Find what sysdep directories exist.
++sysnames=
++IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
++for d in $add_ons_pfx ''; do
++ for b in $base ''; do
++ for m0 in $mach ''; do
++ for v in /$vendor ''; do
++ test "$v" = / && continue
++ for o in /$ostry ''; do
++ test "$o" = / && continue
++ for m in $mach ''; do
++ if test "$m0$b$v$o$m"; then
++ try="${d}sysdeps$m0$b$v$o$m"
++ test -n "$enable_debug_configure" &&
++ echo "$0 DEBUG: try $try" >&2
++ if test -d $srcdir/$try; then
++ sysnames="$sysnames $try"
++ { test -n "$o" || test -n "$b"; } && os_used=t
++ { test -n "$m" || test -n "$m0"; } && machine_used=t
++ fi
++ fi
++ done
++ done
++ done
++ done
++ done
++done
++IFS="$ac_save_ifs"
++
++if test -z "$os_used" && test "$os" != none; then
++ { { echo "$as_me:$LINENO: error: Operating system $os is not supported." >&5
++echo "$as_me: error: Operating system $os is not supported." >&2;}
++ { (exit 1); exit 1; }; }
++fi
++if test -z "$machine_used" && test "$machine" != none; then
++ { { echo "$as_me:$LINENO: error: The $machine is not supported." >&5
++echo "$as_me: error: The $machine is not supported." >&2;}
++ { (exit 1); exit 1; }; }
++fi
++
++# We have now validated the configuration.
++
++
++# If using ELF, look for an `elf' subdirectory of each machine directory.
++# We prepend these rather than inserting them whereever the machine appears
++# because things specified by the machine's ELF ABI should override
++# OS-specific things, and should always be the same for any OS on the
++# machine (otherwise what's the point of an ABI?).
++if test "$elf" = yes; then
++ elf_dirs=
++ for d in $add_ons_pfx ''; do
++ for m in $mach; do
++ if test -d $srcdir/${d}sysdeps$m/elf; then
++ elf_dirs="$elf_dirs ${d}sysdeps$m/elf"
++ fi
++ done
++ done
++ sysnames="`echo $elf_dirs | sed -e 's,//,/,g'` $sysnames"
++fi
++
++
++# Expand the list of system names into a full list of directories
++# from each element's parent name and Implies file (if present).
++set $sysnames
++names=
++while test $# -gt 0; do
++ name=$1
++ shift
++
++ case " $names " in *" $name "*)
++ # Already in the list.
++ continue
++ esac
++
++ # Report each name as we discover it, so there is no long pause in output.
++ echo $ECHO_N "$name $ECHO_C" >&6
++
++ name_base=`echo $name | sed -e 's@\(.*sysdeps\)/.*@\1@'`
++
++ case $name in
++ /*) xsrcdir= ;;
++ *) xsrcdir=$srcdir/ ;;
++ esac
++ test -n "$enable_debug_configure" &&
++ echo "DEBUG: name/Implies $xsrcdir$name/Implies" >&2
++
++ if test -f $xsrcdir$name/Implies; then
++ # Collect more names from the `Implies' file (removing comments).
++ implied_candidate="`sed 's/#.*$//' < $xsrcdir$name/Implies`"
++ implied=
++ for x in $implied_candidate; do
++ found=no
++ if test -d $xsrcdir$name_base/$x; then
++ implied="$implied $name_base/$x";
++ found=yes
++ fi
++ for d in $add_ons_pfx ''; do
++ try="${d}sysdeps/$x"
++ case $d in
++ /*) try_srcdir= ;;
++ *) try_srcdir=$srcdir/ ;;
++ esac
++ test -n "$enable_debug_configure" &&
++ echo "DEBUG: $name implied $x try($d) {$try_srcdir}$try" >&2
++ if test $try != $xsrcdir$name_base/$x && test -d $try_srcdir$try;
++ then
++ implied="$implied $try"
++ found=yes
++ fi
++ done
++ if test $found = no; then
++ { echo "$as_me:$LINENO: WARNING: $name/Implies specifies nonexistent $x" >&5
++echo "$as_me: WARNING: $name/Implies specifies nonexistent $x" >&2;}
++ fi
++ done
++ else
++ implied=
++ fi
++
++ # Add NAME to the list of names.
++ names="$names $name"
++
++ # Find the parent of NAME, using the empty string if it has none.
++ parent="`echo $name | sed -n -e 's=/[^/]*$==' -e '/sysdeps$/q' -e p`"
++
++ # Add the names implied by NAME, and NAME's parent (if it has one), to
++ # the list of names to be processed (the argument list). We prepend the
++ # implied names to the list and append the parent. We want implied
++ # directories to come before further directories inferred from the
++ # configuration components; this ensures that for sysv4, unix/common
++ # (implied by unix/sysv/sysv4) comes before unix/sysv (in ostry (here $*)
++ # after sysv4).
++ sysnames="`echo $implied $* $parent`"
++ test -n "$sysnames" && set $sysnames
++done
++
++# Add the default directories.
++default_sysnames=sysdeps/generic
++if test "$elf" = yes; then
++ default_sysnames="sysdeps/generic/elf $default_sysnames"
++fi
++sysnames="$names $default_sysnames"
++
++# The other names were emitted during the scan.
++echo "$as_me:$LINENO: result: $default_sysnames" >&5
++echo "${ECHO_T}$default_sysnames" >&6
++
++
++### Locate tools.
++
++# Find a good install program. We prefer a C program (faster),
++# so one script is as good as another. But avoid the broken or
++# incompatible versions:
++# SysV /etc/install, /usr/sbin/install
++# SunOS /usr/etc/install
++# IRIX /sbin/install
++# AIX /bin/install
++# AmigaOS /C/install, which installs bootblocks on floppy discs
++# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
++# AFS /usr/afsws/bin/install, which mishandles nonexistent args
++# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
++# ./install, which can be erroneously created by make from ./install.sh.
++echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
++echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6
++if test -z "$INSTALL"; then
++if test "${ac_cv_path_install+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ # Account for people who put trailing slashes in PATH elements.
++case $as_dir/ in
++ ./ | .// | /cC/* | \
++ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
++ /usr/ucb/* ) ;;
++ *)
++ # OSF1 and SCO ODT 3.0 have their own names for install.
++ # Don't use installbsd from OSF since it installs stuff as root
++ # by default.
++ for ac_prog in ginstall scoinst install; do
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
++ if test $ac_prog = install &&
++ grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
++ # AIX install. It has an incompatible calling convention.
++ :
++ elif test $ac_prog = install &&
++ grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
++ # program-specific install script used by HP pwplus--don't use.
++ :
++ else
++ ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
++ break 3
++ fi
++ fi
++ done
++ done
++ ;;
++esac
++done
++
++
++fi
++ if test "${ac_cv_path_install+set}" = set; then
++ INSTALL=$ac_cv_path_install
++ else
++ # As a last resort, use the slow shell script. We don't cache a
++ # path for INSTALL within a source directory, because that will
++ # break other packages using the cache if that directory is
++ # removed, or if the path is relative.
++ INSTALL=$ac_install_sh
++ fi
++fi
++echo "$as_me:$LINENO: result: $INSTALL" >&5
++echo "${ECHO_T}$INSTALL" >&6
++
++# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
++# It thinks the first close brace ends the variable substitution.
++test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
++
++test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
++
++test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
++
++if test "$INSTALL" = "${srcdir}/scripts/install-sh -c"; then
++ # The makefiles need to use a different form to find it in $srcdir.
++ INSTALL='\$(..)./scripts/install-sh -c'
++fi
++echo "$as_me:$LINENO: checking whether ln -s works" >&5
++echo $ECHO_N "checking whether ln -s works... $ECHO_C" >&6
++LN_S=$as_ln_s
++if test "$LN_S" = "ln -s"; then
++ echo "$as_me:$LINENO: result: yes" >&5
++echo "${ECHO_T}yes" >&6
++else
++ echo "$as_me:$LINENO: result: no, using $LN_S" >&5
++echo "${ECHO_T}no, using $LN_S" >&6
++fi
++
++
++ac_ext=c
++ac_cpp='$CPP $CPPFLAGS'
++ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
++ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
++ac_compiler_gnu=$ac_cv_c_compiler_gnu
++if test -n "$ac_tool_prefix"; then
++ # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
++set dummy ${ac_tool_prefix}gcc; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_CC+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$CC"; then
++ ac_cv_prog_CC="$CC" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_CC="${ac_tool_prefix}gcc"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++fi
++fi
++CC=$ac_cv_prog_CC
++if test -n "$CC"; then
++ echo "$as_me:$LINENO: result: $CC" >&5
++echo "${ECHO_T}$CC" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++fi
++if test -z "$ac_cv_prog_CC"; then
++ ac_ct_CC=$CC
++ # Extract the first word of "gcc", so it can be a program name with args.
++set dummy gcc; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$ac_ct_CC"; then
++ ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_ac_ct_CC="gcc"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++fi
++fi
++ac_ct_CC=$ac_cv_prog_ac_ct_CC
++if test -n "$ac_ct_CC"; then
++ echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
++echo "${ECHO_T}$ac_ct_CC" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++ CC=$ac_ct_CC
++else
++ CC="$ac_cv_prog_CC"
++fi
++
++if test -z "$CC"; then
++ if test -n "$ac_tool_prefix"; then
++ # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
++set dummy ${ac_tool_prefix}cc; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_CC+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$CC"; then
++ ac_cv_prog_CC="$CC" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_CC="${ac_tool_prefix}cc"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++fi
++fi
++CC=$ac_cv_prog_CC
++if test -n "$CC"; then
++ echo "$as_me:$LINENO: result: $CC" >&5
++echo "${ECHO_T}$CC" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++fi
++if test -z "$ac_cv_prog_CC"; then
++ ac_ct_CC=$CC
++ # Extract the first word of "cc", so it can be a program name with args.
++set dummy cc; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$ac_ct_CC"; then
++ ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_ac_ct_CC="cc"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++fi
++fi
++ac_ct_CC=$ac_cv_prog_ac_ct_CC
++if test -n "$ac_ct_CC"; then
++ echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
++echo "${ECHO_T}$ac_ct_CC" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++ CC=$ac_ct_CC
++else
++ CC="$ac_cv_prog_CC"
++fi
++
++fi
++if test -z "$CC"; then
++ # Extract the first word of "cc", so it can be a program name with args.
++set dummy cc; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_CC+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$CC"; then
++ ac_cv_prog_CC="$CC" # Let the user override the test.
++else
++ ac_prog_rejected=no
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
++ ac_prog_rejected=yes
++ continue
++ fi
++ ac_cv_prog_CC="cc"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++if test $ac_prog_rejected = yes; then
++ # We found a bogon in the path, so make sure we never use it.
++ set dummy $ac_cv_prog_CC
++ shift
++ if test $@%:@ != 0; then
++ # We chose a different compiler from the bogus one.
++ # However, it has the same basename, so the bogon will be chosen
++ # first if we set CC to just the basename; use the full file name.
++ shift
++ ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
++ fi
++fi
++fi
++fi
++CC=$ac_cv_prog_CC
++if test -n "$CC"; then
++ echo "$as_me:$LINENO: result: $CC" >&5
++echo "${ECHO_T}$CC" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++fi
++if test -z "$CC"; then
++ if test -n "$ac_tool_prefix"; then
++ for ac_prog in cl
++ do
++ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
++set dummy $ac_tool_prefix$ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_CC+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$CC"; then
++ ac_cv_prog_CC="$CC" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++fi
++fi
++CC=$ac_cv_prog_CC
++if test -n "$CC"; then
++ echo "$as_me:$LINENO: result: $CC" >&5
++echo "${ECHO_T}$CC" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++ test -n "$CC" && break
++ done
++fi
++if test -z "$CC"; then
++ ac_ct_CC=$CC
++ for ac_prog in cl
++do
++ # Extract the first word of "$ac_prog", so it can be a program name with args.
++set dummy $ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$ac_ct_CC"; then
++ ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_ac_ct_CC="$ac_prog"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++fi
++fi
++ac_ct_CC=$ac_cv_prog_ac_ct_CC
++if test -n "$ac_ct_CC"; then
++ echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
++echo "${ECHO_T}$ac_ct_CC" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++ test -n "$ac_ct_CC" && break
++done
++
++ CC=$ac_ct_CC
++fi
++
++fi
++
++
++test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
++See \`config.log' for more details." >&5
++echo "$as_me: error: no acceptable C compiler found in \$PATH
++See \`config.log' for more details." >&2;}
++ { (exit 1); exit 1; }; }
++
++# Provide some information about the compiler.
++echo "$as_me:$LINENO:" \
++ "checking for C compiler version" >&5
++ac_compiler=`set X $ac_compile; echo $2`
++{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
++ (eval $ac_compiler --version </dev/null >&5) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }
++{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5
++ (eval $ac_compiler -v </dev/null >&5) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }
++{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5
++ (eval $ac_compiler -V </dev/null >&5) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }
++
++EXEEXT=
++echo "$as_me:$LINENO: checking for suffix of object files" >&5
++echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6
++if test "${ac_cv_objext+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++
++int
++main ()
++{
++
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest.o conftest.obj
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++ (eval $ac_compile) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; then
++ for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do
++ case $ac_file in
++ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;;
++ *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
++ break;;
++ esac
++done
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile
++See \`config.log' for more details." >&5
++echo "$as_me: error: cannot compute suffix of object files: cannot compile
++See \`config.log' for more details." >&2;}
++ { (exit 1); exit 1; }; }
++fi
++
++rm -f conftest.$ac_cv_objext conftest.$ac_ext
++fi
++echo "$as_me:$LINENO: result: $ac_cv_objext" >&5
++echo "${ECHO_T}$ac_cv_objext" >&6
++OBJEXT=$ac_cv_objext
++ac_objext=$OBJEXT
++echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
++echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6
++if test "${ac_cv_c_compiler_gnu+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++
++int
++main ()
++{
++#ifndef __GNUC__
++ choke me
++#endif
++
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++ (eval $ac_compile) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -s conftest.$ac_objext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ ac_compiler_gnu=yes
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_compiler_gnu=no
++fi
++rm -f conftest.$ac_objext conftest.$ac_ext
++ac_cv_c_compiler_gnu=$ac_compiler_gnu
++
++fi
++echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
++echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6
++GCC=`test $ac_compiler_gnu = yes && echo yes`
++ac_test_CFLAGS=${CFLAGS+set}
++ac_save_CFLAGS=$CFLAGS
++CFLAGS="-g"
++echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
++echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6
++if test "${ac_cv_prog_cc_g+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++
++int
++main ()
++{
++
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++ (eval $ac_compile) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -s conftest.$ac_objext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ ac_cv_prog_cc_g=yes
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_cv_prog_cc_g=no
++fi
++rm -f conftest.$ac_objext conftest.$ac_ext
++fi
++echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
++echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
++if test "$ac_test_CFLAGS" = set; then
++ CFLAGS=$ac_save_CFLAGS
++elif test $ac_cv_prog_cc_g = yes; then
++ if test "$GCC" = yes; then
++ CFLAGS="-g -O2"
++ else
++ CFLAGS="-g"
++ fi
++else
++ if test "$GCC" = yes; then
++ CFLAGS="-O2"
++ else
++ CFLAGS=
++ fi
++fi
++echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5
++echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6
++if test "${ac_cv_prog_cc_stdc+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ ac_cv_prog_cc_stdc=no
++ac_save_CC=$CC
++cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++#include <stdarg.h>
++#include <stdio.h>
++#include <sys/types.h>
++#include <sys/stat.h>
++/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
++struct buf { int x; };
++FILE * (*rcsopen) (struct buf *, struct stat *, int);
++static char *e (p, i)
++ char **p;
++ int i;
++{
++ return p[i];
++}
++static char *f (char * (*g) (char **, int), char **p, ...)
++{
++ char *s;
++ va_list v;
++ va_start (v,p);
++ s = g (p, va_arg (v,int));
++ va_end (v);
++ return s;
++}
++int test (int i, double x);
++struct s1 {int (*f) (int a);};
++struct s2 {int (*f) (double a);};
++int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
++int argc;
++char **argv;
++int
++main ()
++{
++return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
++ ;
++ return 0;
++}
++_ACEOF
++# Don't try gcc -ansi; that turns off useful extensions and
++# breaks some systems' header files.
++# AIX -qlanglvl=ansi
++# Ultrix and OSF/1 -std1
++# HP-UX 10.20 and later -Ae
++# HP-UX older versions -Aa -D_HPUX_SOURCE
++# SVR4 -Xc -D__EXTENSIONS__
++for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
++do
++ CC="$ac_save_CC $ac_arg"
++ rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++ (eval $ac_compile) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -s conftest.$ac_objext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ ac_cv_prog_cc_stdc=$ac_arg
++break
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++fi
++rm -f conftest.$ac_objext
++done
++rm -f conftest.$ac_ext conftest.$ac_objext
++CC=$ac_save_CC
++
++fi
++
++case "x$ac_cv_prog_cc_stdc" in
++ x|xno)
++ echo "$as_me:$LINENO: result: none needed" >&5
++echo "${ECHO_T}none needed" >&6 ;;
++ *)
++ echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5
++echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6
++ CC="$CC $ac_cv_prog_cc_stdc" ;;
++esac
++
++# Some people use a C++ compiler to compile C. Since we use `exit',
++# in C++ we need to declare it. In case someone uses the same compiler
++# for both compiling C and C++ we need to have the C++ compiler decide
++# the declaration of exit, since it's the most demanding environment.
++cat >conftest.$ac_ext <<_ACEOF
++@%:@ifndef __cplusplus
++ choke me
++@%:@endif
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++ (eval $ac_compile) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -s conftest.$ac_objext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ for ac_declaration in \
++ '' \
++ 'extern "C" void std::exit (int) throw (); using std::exit;' \
++ 'extern "C" void std::exit (int); using std::exit;' \
++ 'extern "C" void exit (int) throw ();' \
++ 'extern "C" void exit (int);' \
++ 'void exit (int);'
++do
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++$ac_declaration
++@%:@include <stdlib.h>
++int
++main ()
++{
++exit (42);
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++ (eval $ac_compile) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -s conftest.$ac_objext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ :
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++continue
++fi
++rm -f conftest.$ac_objext conftest.$ac_ext
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++$ac_declaration
++int
++main ()
++{
++exit (42);
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++ (eval $ac_compile) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -s conftest.$ac_objext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ break
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++fi
++rm -f conftest.$ac_objext conftest.$ac_ext
++done
++rm -f conftest*
++if test -n "$ac_declaration"; then
++ echo '#ifdef __cplusplus' >>confdefs.h
++ echo $ac_declaration >>confdefs.h
++ echo '#endif' >>confdefs.h
++fi
++
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++fi
++rm -f conftest.$ac_objext conftest.$ac_ext
++ac_ext=c
++ac_cpp='$CPP $CPPFLAGS'
++ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
++ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
++ac_compiler_gnu=$ac_cv_c_compiler_gnu
++
++if test $host != $build; then
++ for ac_prog in gcc cc
++do
++ # Extract the first word of "$ac_prog", so it can be a program name with args.
++set dummy $ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_BUILD_CC+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$BUILD_CC"; then
++ ac_cv_prog_BUILD_CC="$BUILD_CC" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_BUILD_CC="$ac_prog"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++fi
++fi
++BUILD_CC=$ac_cv_prog_BUILD_CC
++if test -n "$BUILD_CC"; then
++ echo "$as_me:$LINENO: result: $BUILD_CC" >&5
++echo "${ECHO_T}$BUILD_CC" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++ test -n "$BUILD_CC" && break
++done
++
++fi
++
++ac_ext=c
++ac_cpp='$CPP $CPPFLAGS'
++ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
++ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
++ac_compiler_gnu=$ac_cv_c_compiler_gnu
++echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5
++echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6
++# On Suns, sometimes $CPP names a directory.
++if test -n "$CPP" && test -d "$CPP"; then
++ CPP=
++fi
++if test -z "$CPP"; then
++ if test "${ac_cv_prog_CPP+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ # Double quotes because CPP needs to be expanded
++ for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
++ do
++ ac_preproc_ok=false
++for ac_c_preproc_warn_flag in '' yes
++do
++ # Use a header file that comes with gcc, so configuring glibc
++ # with a fresh cross-compiler works.
++ # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
++ # <limits.h> exists even on freestanding compilers.
++ # On the NeXT, cc -E runs the code through the compiler's parser,
++ # not just through cpp. "Syntax error" is here to catch this case.
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++@%:@ifdef __STDC__
++@%:@ include <limits.h>
++@%:@else
++@%:@ include <assert.h>
++@%:@endif
++ Syntax error
++_ACEOF
++if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
++ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
++ ac_status=$?
++ grep -v '^ *+' conftest.er1 >conftest.err
++ rm -f conftest.er1
++ cat conftest.err >&5
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } >/dev/null; then
++ if test -s conftest.err; then
++ ac_cpp_err=$ac_c_preproc_warn_flag
++ else
++ ac_cpp_err=
++ fi
++else
++ ac_cpp_err=yes
++fi
++if test -z "$ac_cpp_err"; then
++ :
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ # Broken: fails on valid input.
++continue
++fi
++rm -f conftest.err conftest.$ac_ext
++
++ # OK, works on sane cases. Now check whether non-existent headers
++ # can be detected and how.
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++@%:@include <ac_nonexistent.h>
++_ACEOF
++if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
++ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
++ ac_status=$?
++ grep -v '^ *+' conftest.er1 >conftest.err
++ rm -f conftest.er1
++ cat conftest.err >&5
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } >/dev/null; then
++ if test -s conftest.err; then
++ ac_cpp_err=$ac_c_preproc_warn_flag
++ else
++ ac_cpp_err=
++ fi
++else
++ ac_cpp_err=yes
++fi
++if test -z "$ac_cpp_err"; then
++ # Broken: success on invalid input.
++continue
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ # Passes both tests.
++ac_preproc_ok=:
++break
++fi
++rm -f conftest.err conftest.$ac_ext
++
++done
++# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
++rm -f conftest.err conftest.$ac_ext
++if $ac_preproc_ok; then
++ break
++fi
++
++ done
++ ac_cv_prog_CPP=$CPP
++
++fi
++ CPP=$ac_cv_prog_CPP
++else
++ ac_cv_prog_CPP=$CPP
++fi
++echo "$as_me:$LINENO: result: $CPP" >&5
++echo "${ECHO_T}$CPP" >&6
++ac_preproc_ok=false
++for ac_c_preproc_warn_flag in '' yes
++do
++ # Use a header file that comes with gcc, so configuring glibc
++ # with a fresh cross-compiler works.
++ # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
++ # <limits.h> exists even on freestanding compilers.
++ # On the NeXT, cc -E runs the code through the compiler's parser,
++ # not just through cpp. "Syntax error" is here to catch this case.
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++@%:@ifdef __STDC__
++@%:@ include <limits.h>
++@%:@else
++@%:@ include <assert.h>
++@%:@endif
++ Syntax error
++_ACEOF
++if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
++ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
++ ac_status=$?
++ grep -v '^ *+' conftest.er1 >conftest.err
++ rm -f conftest.er1
++ cat conftest.err >&5
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } >/dev/null; then
++ if test -s conftest.err; then
++ ac_cpp_err=$ac_c_preproc_warn_flag
++ else
++ ac_cpp_err=
++ fi
++else
++ ac_cpp_err=yes
++fi
++if test -z "$ac_cpp_err"; then
++ :
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ # Broken: fails on valid input.
++continue
++fi
++rm -f conftest.err conftest.$ac_ext
++
++ # OK, works on sane cases. Now check whether non-existent headers
++ # can be detected and how.
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++@%:@include <ac_nonexistent.h>
++_ACEOF
++if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
++ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
++ ac_status=$?
++ grep -v '^ *+' conftest.er1 >conftest.err
++ rm -f conftest.er1
++ cat conftest.err >&5
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } >/dev/null; then
++ if test -s conftest.err; then
++ ac_cpp_err=$ac_c_preproc_warn_flag
++ else
++ ac_cpp_err=
++ fi
++else
++ ac_cpp_err=yes
++fi
++if test -z "$ac_cpp_err"; then
++ # Broken: success on invalid input.
++continue
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ # Passes both tests.
++ac_preproc_ok=:
++break
++fi
++rm -f conftest.err conftest.$ac_ext
++
++done
++# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
++rm -f conftest.err conftest.$ac_ext
++if $ac_preproc_ok; then
++ :
++else
++ { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check
++See \`config.log' for more details." >&5
++echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check
++See \`config.log' for more details." >&2;}
++ { (exit 1); exit 1; }; }
++fi
++
++ac_ext=c
++ac_cpp='$CPP $CPPFLAGS'
++ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
++ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
++ac_compiler_gnu=$ac_cv_c_compiler_gnu
++
++# We need the C++ compiler only for testing.
++ac_ext=cc
++ac_cpp='$CXXCPP $CPPFLAGS'
++ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
++ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
++ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
++if test -n "$ac_tool_prefix"; then
++ for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC
++ do
++ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
++set dummy $ac_tool_prefix$ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_CXX+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$CXX"; then
++ ac_cv_prog_CXX="$CXX" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++fi
++fi
++CXX=$ac_cv_prog_CXX
++if test -n "$CXX"; then
++ echo "$as_me:$LINENO: result: $CXX" >&5
++echo "${ECHO_T}$CXX" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++ test -n "$CXX" && break
++ done
++fi
++if test -z "$CXX"; then
++ ac_ct_CXX=$CXX
++ for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC
++do
++ # Extract the first word of "$ac_prog", so it can be a program name with args.
++set dummy $ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$ac_ct_CXX"; then
++ ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_ac_ct_CXX="$ac_prog"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++fi
++fi
++ac_ct_CXX=$ac_cv_prog_ac_ct_CXX
++if test -n "$ac_ct_CXX"; then
++ echo "$as_me:$LINENO: result: $ac_ct_CXX" >&5
++echo "${ECHO_T}$ac_ct_CXX" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++ test -n "$ac_ct_CXX" && break
++done
++test -n "$ac_ct_CXX" || ac_ct_CXX="g++"
++
++ CXX=$ac_ct_CXX
++fi
++
++
++# Provide some information about the compiler.
++echo "$as_me:$LINENO:" \
++ "checking for C++ compiler version" >&5
++ac_compiler=`set X $ac_compile; echo $2`
++{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
++ (eval $ac_compiler --version </dev/null >&5) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }
++{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5
++ (eval $ac_compiler -v </dev/null >&5) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }
++{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5
++ (eval $ac_compiler -V </dev/null >&5) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }
++
++echo "$as_me:$LINENO: checking whether we are using the GNU C++ compiler" >&5
++echo $ECHO_N "checking whether we are using the GNU C++ compiler... $ECHO_C" >&6
++if test "${ac_cv_cxx_compiler_gnu+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++
++int
++main ()
++{
++#ifndef __GNUC__
++ choke me
++#endif
++
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++ (eval $ac_compile) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -s conftest.$ac_objext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ ac_compiler_gnu=yes
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_compiler_gnu=no
++fi
++rm -f conftest.$ac_objext conftest.$ac_ext
++ac_cv_cxx_compiler_gnu=$ac_compiler_gnu
++
++fi
++echo "$as_me:$LINENO: result: $ac_cv_cxx_compiler_gnu" >&5
++echo "${ECHO_T}$ac_cv_cxx_compiler_gnu" >&6
++GXX=`test $ac_compiler_gnu = yes && echo yes`
++ac_test_CXXFLAGS=${CXXFLAGS+set}
++ac_save_CXXFLAGS=$CXXFLAGS
++CXXFLAGS="-g"
++echo "$as_me:$LINENO: checking whether $CXX accepts -g" >&5
++echo $ECHO_N "checking whether $CXX accepts -g... $ECHO_C" >&6
++if test "${ac_cv_prog_cxx_g+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++
++int
++main ()
++{
++
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++ (eval $ac_compile) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -s conftest.$ac_objext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ ac_cv_prog_cxx_g=yes
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_cv_prog_cxx_g=no
++fi
++rm -f conftest.$ac_objext conftest.$ac_ext
++fi
++echo "$as_me:$LINENO: result: $ac_cv_prog_cxx_g" >&5
++echo "${ECHO_T}$ac_cv_prog_cxx_g" >&6
++if test "$ac_test_CXXFLAGS" = set; then
++ CXXFLAGS=$ac_save_CXXFLAGS
++elif test $ac_cv_prog_cxx_g = yes; then
++ if test "$GXX" = yes; then
++ CXXFLAGS="-g -O2"
++ else
++ CXXFLAGS="-g"
++ fi
++else
++ if test "$GXX" = yes; then
++ CXXFLAGS="-O2"
++ else
++ CXXFLAGS=
++ fi
++fi
++for ac_declaration in \
++ '' \
++ 'extern "C" void std::exit (int) throw (); using std::exit;' \
++ 'extern "C" void std::exit (int); using std::exit;' \
++ 'extern "C" void exit (int) throw ();' \
++ 'extern "C" void exit (int);' \
++ 'void exit (int);'
++do
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++$ac_declaration
++@%:@include <stdlib.h>
++int
++main ()
++{
++exit (42);
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++ (eval $ac_compile) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -s conftest.$ac_objext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ :
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++continue
++fi
++rm -f conftest.$ac_objext conftest.$ac_ext
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++$ac_declaration
++int
++main ()
++{
++exit (42);
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++ (eval $ac_compile) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -s conftest.$ac_objext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ break
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++fi
++rm -f conftest.$ac_objext conftest.$ac_ext
++done
++rm -f conftest*
++if test -n "$ac_declaration"; then
++ echo '#ifdef __cplusplus' >>confdefs.h
++ echo $ac_declaration >>confdefs.h
++ echo '#endif' >>confdefs.h
++fi
++
++ac_ext=c
++ac_cpp='$CPP $CPPFLAGS'
++ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
++ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
++ac_compiler_gnu=$ac_cv_c_compiler_gnu
++
++# Was a --with-binutils option given?
++if test -n "$path_binutils"; then
++ # Make absolute; ensure a single trailing slash.
++ path_binutils=`(cd $path_binutils; pwd) | sed 's%/*$%/%'`
++ CC="$CC -B$path_binutils"
++fi
++AS=`$CC -print-prog-name=as`
++LD=`$CC -print-prog-name=ld`
++AR=`$CC -print-prog-name=ar`
++
++OBJDUMP=`$CC -print-prog-name=objdump`
++
++
++# ranlib has to be treated a bit differently since it might not exist at all.
++ac_ranlib=`$CC -print-prog-name=ranlib`
++if test "x$ac_ranlib" = xranlib; then
++# This extra check has to happen since gcc simply echos the parameter in
++# case it cannot find the value in its own directories.
++if test -n "$ac_tool_prefix"; then
++ # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
++set dummy ${ac_tool_prefix}ranlib; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_RANLIB+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$RANLIB"; then
++ ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++fi
++fi
++RANLIB=$ac_cv_prog_RANLIB
++if test -n "$RANLIB"; then
++ echo "$as_me:$LINENO: result: $RANLIB" >&5
++echo "${ECHO_T}$RANLIB" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++fi
++if test -z "$ac_cv_prog_RANLIB"; then
++ ac_ct_RANLIB=$RANLIB
++ # Extract the first word of "ranlib", so it can be a program name with args.
++set dummy ranlib; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$ac_ct_RANLIB"; then
++ ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_ac_ct_RANLIB="ranlib"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++ test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":"
++fi
++fi
++ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
++if test -n "$ac_ct_RANLIB"; then
++ echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5
++echo "${ECHO_T}$ac_ct_RANLIB" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++ RANLIB=$ac_ct_RANLIB
++else
++ RANLIB="$ac_cv_prog_RANLIB"
++fi
++
++else
++ RANLIB=$ac_ranlib
++fi
++
++
++# Determine whether we are using GNU binutils.
++echo "$as_me:$LINENO: checking whether $AS is GNU as" >&5
++echo $ECHO_N "checking whether $AS is GNU as... $ECHO_C" >&6
++if test "${libc_cv_prog_as_gnu+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ # 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 $AS -o conftest -v </dev/null 2>&1 | grep GNU > /dev/null 2>&1; then
++ libc_cv_prog_as_gnu=yes
++else
++ libc_cv_prog_as_gnu=no
++fi
++rm -fr contest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_prog_as_gnu" >&5
++echo "${ECHO_T}$libc_cv_prog_as_gnu" >&6
++rm -f a.out
++gnu_as=$libc_cv_prog_as_gnu
++
++echo "$as_me:$LINENO: checking whether $LD is GNU ld" >&5
++echo $ECHO_N "checking whether $LD is GNU ld... $ECHO_C" >&6
++if test "${libc_cv_prog_ld_gnu+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ # 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 $LD -o conftest -v </dev/null 2>&1 | grep GNU > /dev/null 2>&1; then
++ libc_cv_prog_ld_gnu=yes
++else
++ libc_cv_prog_ld_gnu=no
++fi
++rm -fr contest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_prog_ld_gnu" >&5
++echo "${ECHO_T}$libc_cv_prog_ld_gnu" >&6
++gnu_ld=$libc_cv_prog_ld_gnu
++
++
++# Accept binutils 2.13 or newer.
++for ac_prog in $AS
++do
++ # Extract the first word of "$ac_prog", so it can be a program name with args.
++set dummy $ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_AS+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$AS"; then
++ ac_cv_prog_AS="$AS" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_AS="$ac_prog"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++fi
++fi
++AS=$ac_cv_prog_AS
++if test -n "$AS"; then
++ echo "$as_me:$LINENO: result: $AS" >&5
++echo "${ECHO_T}$AS" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++ test -n "$AS" && break
++done
++
++if test -z "$AS"; then
++ ac_verc_fail=yes
++else
++ # Found it, now check the version.
++ echo "$as_me:$LINENO: checking version of $AS" >&5
++echo $ECHO_N "checking version of $AS... $ECHO_C" >&6
++ ac_prog_version=`$AS --version 2>&1 | sed -n 's/^.*GNU assembler.* \([0-9]*\.[0-9.]*\).*$/\1/p'`
++ case $ac_prog_version in
++ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
++ 2.1[3-9]*)
++ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
++ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
++
++ esac
++ echo "$as_me:$LINENO: result: $ac_prog_version" >&5
++echo "${ECHO_T}$ac_prog_version" >&6
++fi
++if test $ac_verc_fail = yes; then
++ AS=: critic_missing="$critic_missing as"
++fi
++
++for ac_prog in $LD
++do
++ # Extract the first word of "$ac_prog", so it can be a program name with args.
++set dummy $ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_LD+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$LD"; then
++ ac_cv_prog_LD="$LD" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_LD="$ac_prog"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++fi
++fi
++LD=$ac_cv_prog_LD
++if test -n "$LD"; then
++ echo "$as_me:$LINENO: result: $LD" >&5
++echo "${ECHO_T}$LD" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++ test -n "$LD" && break
++done
++
++if test -z "$LD"; then
++ ac_verc_fail=yes
++else
++ # Found it, now check the version.
++ echo "$as_me:$LINENO: checking version of $LD" >&5
++echo $ECHO_N "checking version of $LD... $ECHO_C" >&6
++ ac_prog_version=`$LD --version 2>&1 | sed -n 's/^.*GNU ld.* \([0-9][0-9]*\.[0-9.]*\).*$/\1/p'`
++ case $ac_prog_version in
++ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
++ 2.1[3-9]*)
++ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
++ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
++
++ esac
++ echo "$as_me:$LINENO: result: $ac_prog_version" >&5
++echo "${ECHO_T}$ac_prog_version" >&6
++fi
++if test $ac_verc_fail = yes; then
++ LD=: critic_missing="$critic_missing ld"
++fi
++
++
++# We need the physical current working directory. We cannot use the
++# "pwd -P" shell builtin since that's not portable. Instead we try to
++# find a pwd binary. Note that assigning to the PWD environment
++# variable might have some interesting side effects, so we don't do
++# that.
++# Extract the first word of "pwd", so it can be a program name with args.
++set dummy pwd; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_path_PWD_P+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ case $PWD_P in
++ [\\/]* | ?:[\\/]*)
++ ac_cv_path_PWD_P="$PWD_P" # Let the user override the test with a path.
++ ;;
++ *)
++ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_path_PWD_P="$as_dir/$ac_word$ac_exec_ext"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++ test -z "$ac_cv_path_PWD_P" && ac_cv_path_PWD_P="no"
++ ;;
++esac
++fi
++PWD_P=$ac_cv_path_PWD_P
++
++if test -n "$PWD_P"; then
++ echo "$as_me:$LINENO: result: $PWD_P" >&5
++echo "${ECHO_T}$PWD_P" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++if test "$PWD_P" = no; then
++ { { echo "$as_me:$LINENO: error: *** A pwd binary could not be found." >&5
++echo "$as_me: error: *** A pwd binary could not be found." >&2;}
++ { (exit 1); exit 1; }; }
++fi
++
++# These programs are version sensitive.
++
++for ac_prog in ${ac_tool_prefix}gcc ${ac_tool_prefix}cc
++do
++ # Extract the first word of "$ac_prog", so it can be a program name with args.
++set dummy $ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_CC+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$CC"; then
++ ac_cv_prog_CC="$CC" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_CC="$ac_prog"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++fi
++fi
++CC=$ac_cv_prog_CC
++if test -n "$CC"; then
++ echo "$as_me:$LINENO: result: $CC" >&5
++echo "${ECHO_T}$CC" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++ test -n "$CC" && break
++done
++
++if test -z "$CC"; then
++ ac_verc_fail=yes
++else
++ # Found it, now check the version.
++ echo "$as_me:$LINENO: checking version of $CC" >&5
++echo $ECHO_N "checking version of $CC... $ECHO_C" >&6
++ ac_prog_version=`$CC -v 2>&1 | sed -n 's/^.*version \([egcygnustpi-]*[0-9.]*\).*$/\1/p'`
++ case $ac_prog_version in
++ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
++ 3.[2-9]*)
++ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
++ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
++
++ esac
++ echo "$as_me:$LINENO: result: $ac_prog_version" >&5
++echo "${ECHO_T}$ac_prog_version" >&6
++fi
++if test $ac_verc_fail = yes; then
++ critic_missing="$critic_missing gcc"
++fi
++
++for ac_prog in gnumake gmake make
++do
++ # Extract the first word of "$ac_prog", so it can be a program name with args.
++set dummy $ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_MAKE+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$MAKE"; then
++ ac_cv_prog_MAKE="$MAKE" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_MAKE="$ac_prog"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++fi
++fi
++MAKE=$ac_cv_prog_MAKE
++if test -n "$MAKE"; then
++ echo "$as_me:$LINENO: result: $MAKE" >&5
++echo "${ECHO_T}$MAKE" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++ test -n "$MAKE" && break
++done
++
++if test -z "$MAKE"; then
++ ac_verc_fail=yes
++else
++ # Found it, now check the version.
++ echo "$as_me:$LINENO: checking version of $MAKE" >&5
++echo $ECHO_N "checking version of $MAKE... $ECHO_C" >&6
++ ac_prog_version=`$MAKE --version 2>&1 | sed -n 's/^.*GNU Make[^0-9]*\([0-9][0-9.]*\).*$/\1/p'`
++ case $ac_prog_version in
++ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
++ 3.79* | 3.[89]*)
++ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
++ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
++
++ esac
++ echo "$as_me:$LINENO: result: $ac_prog_version" >&5
++echo "${ECHO_T}$ac_prog_version" >&6
++fi
++if test $ac_verc_fail = yes; then
++ critic_missing="$critic_missing make"
++fi
++
++
++for ac_prog in gnumsgfmt gmsgfmt msgfmt
++do
++ # Extract the first word of "$ac_prog", so it can be a program name with args.
++set dummy $ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_MSGFMT+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$MSGFMT"; then
++ ac_cv_prog_MSGFMT="$MSGFMT" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_MSGFMT="$ac_prog"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++fi
++fi
++MSGFMT=$ac_cv_prog_MSGFMT
++if test -n "$MSGFMT"; then
++ echo "$as_me:$LINENO: result: $MSGFMT" >&5
++echo "${ECHO_T}$MSGFMT" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++ test -n "$MSGFMT" && break
++done
++
++if test -z "$MSGFMT"; then
++ ac_verc_fail=yes
++else
++ # Found it, now check the version.
++ echo "$as_me:$LINENO: checking version of $MSGFMT" >&5
++echo $ECHO_N "checking version of $MSGFMT... $ECHO_C" >&6
++ ac_prog_version=`$MSGFMT --version 2>&1 | sed -n 's/^.*GNU gettext.* \([0-9]*\.[0-9.]*\).*$/\1/p'`
++ case $ac_prog_version in
++ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
++ 0.10.3[6-9]* | 0.10.[4-9][0-9]* | 0.1[1-9]* | 0.[2-9][0-9]* | [1-9].*)
++ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
++ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
++
++ esac
++ echo "$as_me:$LINENO: result: $ac_prog_version" >&5
++echo "${ECHO_T}$ac_prog_version" >&6
++fi
++if test $ac_verc_fail = yes; then
++ MSGFMT=: aux_missing="$aux_missing msgfmt"
++fi
++
++for ac_prog in makeinfo
++do
++ # Extract the first word of "$ac_prog", so it can be a program name with args.
++set dummy $ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_MAKEINFO+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$MAKEINFO"; then
++ ac_cv_prog_MAKEINFO="$MAKEINFO" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_MAKEINFO="$ac_prog"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++fi
++fi
++MAKEINFO=$ac_cv_prog_MAKEINFO
++if test -n "$MAKEINFO"; then
++ echo "$as_me:$LINENO: result: $MAKEINFO" >&5
++echo "${ECHO_T}$MAKEINFO" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++ test -n "$MAKEINFO" && break
++done
++
++if test -z "$MAKEINFO"; then
++ ac_verc_fail=yes
++else
++ # Found it, now check the version.
++ echo "$as_me:$LINENO: checking version of $MAKEINFO" >&5
++echo $ECHO_N "checking version of $MAKEINFO... $ECHO_C" >&6
++ ac_prog_version=`$MAKEINFO --version 2>&1 | sed -n 's/^.*GNU texinfo.* \([0-9][0-9.]*\).*$/\1/p'`
++ case $ac_prog_version in
++ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
++ 4.*)
++ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
++ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
++
++ esac
++ echo "$as_me:$LINENO: result: $ac_prog_version" >&5
++echo "${ECHO_T}$ac_prog_version" >&6
++fi
++if test $ac_verc_fail = yes; then
++ MAKEINFO=: aux_missing="$aux_missing makeinfo"
++fi
++
++for ac_prog in sed
++do
++ # Extract the first word of "$ac_prog", so it can be a program name with args.
++set dummy $ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_SED+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$SED"; then
++ ac_cv_prog_SED="$SED" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_SED="$ac_prog"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++fi
++fi
++SED=$ac_cv_prog_SED
++if test -n "$SED"; then
++ echo "$as_me:$LINENO: result: $SED" >&5
++echo "${ECHO_T}$SED" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++ test -n "$SED" && break
++done
++
++if test -z "$SED"; then
++ ac_verc_fail=yes
++else
++ # Found it, now check the version.
++ echo "$as_me:$LINENO: checking version of $SED" >&5
++echo $ECHO_N "checking version of $SED... $ECHO_C" >&6
++ ac_prog_version=`$SED --version 2>&1 | sed -n 's/^.*GNU sed version \([0-9]*\.[0-9.]*\).*$/\1/p'`
++ case $ac_prog_version in
++ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
++ 3.0[2-9]*|3.[1-9]*|[4-9]*)
++ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
++ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
++
++ esac
++ echo "$as_me:$LINENO: result: $ac_prog_version" >&5
++echo "${ECHO_T}$ac_prog_version" >&6
++fi
++if test $ac_verc_fail = yes; then
++ SED=: aux_missing="$aux_missing sed"
++fi
++
++
++for ac_prog in autoconf
++do
++ # Extract the first word of "$ac_prog", so it can be a program name with args.
++set dummy $ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_AUTOCONF+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$AUTOCONF"; then
++ ac_cv_prog_AUTOCONF="$AUTOCONF" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_AUTOCONF="$ac_prog"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++fi
++fi
++AUTOCONF=$ac_cv_prog_AUTOCONF
++if test -n "$AUTOCONF"; then
++ echo "$as_me:$LINENO: result: $AUTOCONF" >&5
++echo "${ECHO_T}$AUTOCONF" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++ test -n "$AUTOCONF" && break
++done
++test -n "$AUTOCONF" || AUTOCONF="no"
++
++case "x$AUTOCONF" in
++xno|x|x:) AUTOCONF=no ;;
++*)
++ echo "$as_me:$LINENO: checking whether $AUTOCONF${ACFLAGS:+ }$ACFLAGS works" >&5
++echo $ECHO_N "checking whether $AUTOCONF${ACFLAGS:+ }$ACFLAGS works... $ECHO_C" >&6
++if test "${libc_cv_autoconf_works+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if (cd $srcdir; $AUTOCONF $ACFLAGS configure.in > /dev/null 2>&1); then
++ libc_cv_autoconf_works=yes
++ else
++ libc_cv_autoconf_works=no
++ fi
++fi
++echo "$as_me:$LINENO: result: $libc_cv_autoconf_works" >&5
++echo "${ECHO_T}$libc_cv_autoconf_works" >&6
++ test $libc_cv_autoconf_works = yes || AUTOCONF=no
++ ;;
++esac
++if test "x$with_cvs" = xyes && test "x$AUTOCONF" = xno; then
++ # If --without-cvs they probably won't change configure.in, so no complaints.
++ aux_missing="$aux_missing autoconf"
++fi
++
++test -n "$critic_missing" && { { echo "$as_me:$LINENO: error:
++*** These critical programs are missing or too old:$critic_missing
++*** Check the INSTALL file for required versions." >&5
++echo "$as_me: error:
++*** These critical programs are missing or too old:$critic_missing
++*** Check the INSTALL file for required versions." >&2;}
++ { (exit 1); exit 1; }; }
++
++test -n "$aux_missing" && { echo "$as_me:$LINENO: WARNING:
++*** These auxiliary programs are missing or incompatible versions:$aux_missing
++*** some features will be disabled.
++*** Check the INSTALL file for required versions." >&5
++echo "$as_me: WARNING:
++*** These auxiliary programs are missing or incompatible versions:$aux_missing
++*** some features will be disabled.
++*** Check the INSTALL file for required versions." >&2;}
++
++# glibcbug.in wants to know the compiler version.
++CCVERSION=`$CC -v 2>&1 | sed -n 's/gcc version //p'`
++
++
++# if using special system headers, find out the compiler's sekrit
++# header directory and add that to the list. NOTE: Only does the right
++# thing on a system that doesn't need fixincludes. (Not presently a problem.)
++if test -n "$sysheaders"; then
++ ccheaders=`$CC -print-file-name=include`
++ SYSINCLUDES="-nostdinc -isystem $ccheaders -isystem $sysheaders"
++fi
++
++
++# check if ranlib is necessary
++echo "$as_me:$LINENO: checking whether ranlib is necessary" >&5
++echo $ECHO_N "checking whether ranlib is necessary... $ECHO_C" >&6
++if test "${libc_cv_ranlib_necessary+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.c <<EOF
++int a;
++char b;
++void c(void) {}
++EOF
++$CC $CFLAGS $CPPFLAGS -c conftest.c
++$AR cr conftest.a conftest.o
++cp conftest.a conftest2.a
++$RANLIB conftest.a
++if cmp -s conftest.a conftest2.a; then
++ libc_cv_ranlib_necessary=no
++else
++ libc_cv_ranlib_necessary=yes
++fi
++rm -rf conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_ranlib_necessary" >&5
++echo "${ECHO_T}$libc_cv_ranlib_necessary" >&6
++if test "$libc_cv_ranlib_necessary" = no; then
++ RANLIB=:
++fi
++
++# Test if LD_LIBRARY_PATH contains the notation for the current directory
++# since this would lead to problems installing/building glibc.
++# LD_LIBRARY_PATH contains the current directory if one of the following
++# is true:
++# - one of the terminals (":" and ";") is the first or last sign
++# - two terminals occur directly after each other
++# - the path contains an element with a dot in it
++echo "$as_me:$LINENO: checking LD_LIBRARY_PATH variable" >&5
++echo $ECHO_N "checking LD_LIBRARY_PATH variable... $ECHO_C" >&6
++case ${LD_LIBRARY_PATH} in
++ [:\;]* | *[:\;] | *[:\;][:\;]* | *[:\;]. | .[:\;]*| . | *[:\;].[:\;]* )
++ ld_library_path_setting="contains current directory"
++ ;;
++ *)
++ ld_library_path_setting="ok"
++ ;;
++esac
++echo "$as_me:$LINENO: result: $ld_library_path_setting" >&5
++echo "${ECHO_T}$ld_library_path_setting" >&6
++if test "$ld_library_path_setting" != "ok"; then
++{ { echo "$as_me:$LINENO: error:
++*** LD_LIBRARY_PATH shouldn't contain the current directory when
++*** building glibc. Please change the environment variable
++*** and run configure again." >&5
++echo "$as_me: error:
++*** LD_LIBRARY_PATH shouldn't contain the current directory when
++*** building glibc. Please change the environment variable
++*** and run configure again." >&2;}
++ { (exit 1); exit 1; }; }
++fi
++
++echo "$as_me:$LINENO: checking whether GCC supports -static-libgcc" >&5
++echo $ECHO_N "checking whether GCC supports -static-libgcc... $ECHO_C" >&6
++if test "${libc_cv_gcc_static_libgcc+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if $CC -v -static-libgcc 2>&1 | grep -q 'unrecognized option.*static-libgcc'; then
++ libc_cv_gcc_static_libgcc=
++else
++ libc_cv_gcc_static_libgcc=-static-libgcc
++fi
++fi
++echo "$as_me:$LINENO: result: $libc_cv_gcc_static_libgcc" >&5
++echo "${ECHO_T}$libc_cv_gcc_static_libgcc" >&6
++
++
++# Extract the first word of "bash", so it can be a program name with args.
++set dummy bash; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_path_BASH+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ case $BASH in
++ [\\/]* | ?:[\\/]*)
++ ac_cv_path_BASH="$BASH" # Let the user override the test with a path.
++ ;;
++ *)
++ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_path_BASH="$as_dir/$ac_word$ac_exec_ext"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++ test -z "$ac_cv_path_BASH" && ac_cv_path_BASH="no"
++ ;;
++esac
++fi
++BASH=$ac_cv_path_BASH
++
++if test -n "$BASH"; then
++ echo "$as_me:$LINENO: result: $BASH" >&5
++echo "${ECHO_T}$BASH" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++if test "$BASH" != no &&
++ $BASH -c 'test "$BASH_VERSINFO" \
++ && test "$BASH_VERSINFO" -ge 2 >&/dev/null'; then
++ libc_cv_have_bash2=yes
++else
++ libc_cv_have_bash2=no
++fi
++
++
++if test "$BASH" = no; then
++ # Extract the first word of "ksh", so it can be a program name with args.
++set dummy ksh; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_path_KSH+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ case $KSH in
++ [\\/]* | ?:[\\/]*)
++ ac_cv_path_KSH="$KSH" # Let the user override the test with a path.
++ ;;
++ *)
++ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_path_KSH="$as_dir/$ac_word$ac_exec_ext"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++ test -z "$ac_cv_path_KSH" && ac_cv_path_KSH="no"
++ ;;
++esac
++fi
++KSH=$ac_cv_path_KSH
++
++if test -n "$KSH"; then
++ echo "$as_me:$LINENO: result: $KSH" >&5
++echo "${ECHO_T}$KSH" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++ if test "$KSH" = no; then
++ libc_cv_have_ksh=no
++ else
++ libc_cv_have_ksh=yes
++ fi
++else
++ KSH="$BASH"
++
++ libc_cv_have_ksh=yes
++fi
++
++
++for ac_prog in gawk mawk nawk awk
++do
++ # Extract the first word of "$ac_prog", so it can be a program name with args.
++set dummy $ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_AWK+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$AWK"; then
++ ac_cv_prog_AWK="$AWK" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_AWK="$ac_prog"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++fi
++fi
++AWK=$ac_cv_prog_AWK
++if test -n "$AWK"; then
++ echo "$as_me:$LINENO: result: $AWK" >&5
++echo "${ECHO_T}$AWK" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++ test -n "$AWK" && break
++done
++
++# Extract the first word of "perl", so it can be a program name with args.
++set dummy perl; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_path_PERL+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ case $PERL in
++ [\\/]* | ?:[\\/]*)
++ ac_cv_path_PERL="$PERL" # Let the user override the test with a path.
++ ;;
++ *)
++ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_path_PERL="$as_dir/$ac_word$ac_exec_ext"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++ test -z "$ac_cv_path_PERL" && ac_cv_path_PERL="no"
++ ;;
++esac
++fi
++PERL=$ac_cv_path_PERL
++
++if test -n "$PERL"; then
++ echo "$as_me:$LINENO: result: $PERL" >&5
++echo "${ECHO_T}$PERL" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++if test "$PERL" != no &&
++ (eval `$PERL -V:apiversion`; test `expr "$apiversion" \< 5` -ne 0); then
++ PERL=no
++fi
++# Extract the first word of "install-info", so it can be a program name with args.
++set dummy install-info; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_path_INSTALL_INFO+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ case $INSTALL_INFO in
++ [\\/]* | ?:[\\/]*)
++ ac_cv_path_INSTALL_INFO="$INSTALL_INFO" # Let the user override the test with a path.
++ ;;
++ *)
++ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++as_dummy="$PATH:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin"
++for as_dir in $as_dummy
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_path_INSTALL_INFO="$as_dir/$ac_word$ac_exec_ext"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++ test -z "$ac_cv_path_INSTALL_INFO" && ac_cv_path_INSTALL_INFO="no"
++ ;;
++esac
++fi
++INSTALL_INFO=$ac_cv_path_INSTALL_INFO
++
++if test -n "$INSTALL_INFO"; then
++ echo "$as_me:$LINENO: result: $INSTALL_INFO" >&5
++echo "${ECHO_T}$INSTALL_INFO" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++if test "$INSTALL_INFO" != "no"; then
++echo "$as_me:$LINENO: checking for old Debian install-info" >&5
++echo $ECHO_N "checking for old Debian install-info... $ECHO_C" >&6
++if test "${libc_cv_old_debian_install_info+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ mkdir conftest.d
++ # There is a hard ^_ on the next line. I am open to better ideas.
++ (echo ''
++ echo 'File: dir Node: Top This is the top of the INFO tree'
++ echo '* Menu:') >conftest.d/dir
++ (echo 'INFO-DIR-SECTION i-d-s works'
++ echo 'START-INFO-DIR-ENTRY'
++ echo '* Prog: (prog). Program.'
++ echo 'END-INFO-DIR-ENTRY') >conftest.d/prog.info
++ if $INSTALL_INFO --info-dir=conftest.d conftest.d/prog.info >&5 2>&1
++ then
++ if grep -s 'i-d-s works' conftest.d/dir >/dev/null
++ then libc_cv_old_debian_install_info=no
++ else libc_cv_old_debian_install_info=yes
++ fi
++ else libc_cv_old_debian_install_info=no testfailed=t
++ fi
++ rm -fr conftest.d
++fi
++echo "$as_me:$LINENO: result: $libc_cv_old_debian_install_info" >&5
++echo "${ECHO_T}$libc_cv_old_debian_install_info" >&6
++if test -n "$testfailed"
++then { echo "$as_me:$LINENO: WARNING: install-info errored out, check config.log" >&5
++echo "$as_me: WARNING: install-info errored out, check config.log" >&2;}
++fi
++OLD_DEBIAN_INSTALL_INFO=$libc_cv_old_debian_install_info
++fi
++
++
++# Extract the first word of "bison", so it can be a program name with args.
++set dummy bison; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_path_BISON+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ case $BISON in
++ [\\/]* | ?:[\\/]*)
++ ac_cv_path_BISON="$BISON" # Let the user override the test with a path.
++ ;;
++ *)
++ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++as_dummy="$PATH:/usr/local/bin:/usr/bin:/bin"
++for as_dir in $as_dummy
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_path_BISON="$as_dir/$ac_word$ac_exec_ext"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++ test -z "$ac_cv_path_BISON" && ac_cv_path_BISON="no"
++ ;;
++esac
++fi
++BISON=$ac_cv_path_BISON
++
++if test -n "$BISON"; then
++ echo "$as_me:$LINENO: result: $BISON" >&5
++echo "${ECHO_T}$BISON" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++
++echo "$as_me:$LINENO: checking for signed size_t type" >&5
++echo $ECHO_N "checking for signed size_t type... $ECHO_C" >&6
++if test "${libc_cv_signed_size_t+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ echo '#include <stddef.h>
++FOOBAR __SIZE_TYPE__ FOOBAR' > conftest.c
++if eval "$ac_cpp conftest.c 2>/dev/null" \
++| grep '^FOOBAR.*unsigned.*FOOBAR$' >/dev/null; then
++ libc_cv_signed_size_t=no
++else
++ libc_cv_signed_size_t=yes
++fi
++rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_signed_size_t" >&5
++echo "${ECHO_T}$libc_cv_signed_size_t" >&6
++if test $libc_cv_signed_size_t = yes; then
++ cat >> confdefs.h <<\EOF
++#undef __SIZE_TYPE__
++#define __SIZE_TYPE__ unsigned
++EOF
++fi
++
++
++echo "$as_me:$LINENO: checking for libc-friendly stddef.h" >&5
++echo $ECHO_N "checking for libc-friendly stddef.h... $ECHO_C" >&6
++if test "${libc_cv_friendly_stddef+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++#define __need_size_t
++#define __need_wchar_t
++#include <stddef.h>
++#define __need_NULL
++#include <stddef.h>
++int
++main ()
++{
++size_t size; wchar_t wchar;
++#ifdef offsetof
++#error stddef.h ignored __need_*
++#endif
++if (&size == NULL || &wchar == NULL) abort ();
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++ (eval $ac_compile) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -s conftest.$ac_objext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ libc_cv_friendly_stddef=yes
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++libc_cv_friendly_stddef=no
++fi
++rm -f conftest.$ac_objext conftest.$ac_ext
++fi
++echo "$as_me:$LINENO: result: $libc_cv_friendly_stddef" >&5
++echo "${ECHO_T}$libc_cv_friendly_stddef" >&6
++if test $libc_cv_friendly_stddef = yes; then
++ config_vars="$config_vars
++override stddef.h = # The installed <stddef.h> seems to be libc-friendly."
++fi
++
++echo "$as_me:$LINENO: checking whether we need to use -P to assemble .S files" >&5
++echo $ECHO_N "checking whether we need to use -P to assemble .S files... $ECHO_C" >&6
++if test "${libc_cv_need_minus_P+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.S <<EOF
++#include "confdefs.h"
++/* Nothing whatsoever. */
++EOF
++if { ac_try='${CC-cc} $CPPFLAGS $ASFLAGS -c conftest.S 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ libc_cv_need_minus_P=no
++else
++ libc_cv_need_minus_P=yes
++fi
++rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_need_minus_P" >&5
++echo "${ECHO_T}$libc_cv_need_minus_P" >&6
++if test $libc_cv_need_minus_P = yes; then
++ config_vars="$config_vars
++asm-CPPFLAGS = -P # The assembler can't grok cpp's # line directives."
++fi
++
++echo "$as_me:$LINENO: checking whether .text pseudo-op must be used" >&5
++echo $ECHO_N "checking whether .text pseudo-op must be used... $ECHO_C" >&6
++if test "${libc_cv_dot_text+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.s <<EOF
++.text
++EOF
++libc_cv_dot_text=
++if { ac_try='${CC-cc} $ASFLAGS -c conftest.s 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ libc_cv_dot_text=.text
++fi
++rm -f conftest*
++fi
++
++if test -z "$libc_cv_dot_text"; then
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++else
++ echo "$as_me:$LINENO: result: yes" >&5
++echo "${ECHO_T}yes" >&6
++fi
++
++echo "$as_me:$LINENO: checking for assembler global-symbol directive" >&5
++echo $ECHO_N "checking for assembler global-symbol directive... $ECHO_C" >&6
++if test "${libc_cv_asm_global_directive+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ libc_cv_asm_global_directive=UNKNOWN
++for ac_globl in .globl .global .EXPORT; do
++ cat > conftest.s <<EOF
++ ${libc_cv_dot_text}
++ ${ac_globl} foo
++foo:
++EOF
++ if { ac_try='${CC-cc} $ASFLAGS -c conftest.s 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ libc_cv_asm_global_directive=${ac_globl}
++ fi
++ rm -f conftest*
++ test $libc_cv_asm_global_directive != UNKNOWN && break
++done
++fi
++echo "$as_me:$LINENO: result: $libc_cv_asm_global_directive" >&5
++echo "${ECHO_T}$libc_cv_asm_global_directive" >&6
++if test $libc_cv_asm_global_directive = UNKNOWN; then
++ { { echo "$as_me:$LINENO: error: cannot determine asm global directive" >&5
++echo "$as_me: error: cannot determine asm global directive" >&2;}
++ { (exit 1); exit 1; }; }
++else
++ cat >>confdefs.h <<_ACEOF
++@%:@define ASM_GLOBAL_DIRECTIVE ${libc_cv_asm_global_directive}
++_ACEOF
++
++fi
++
++echo "$as_me:$LINENO: checking for .set assembler directive" >&5
++echo $ECHO_N "checking for .set assembler directive... $ECHO_C" >&6
++if test "${libc_cv_asm_set_directive+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.s <<EOF
++${libc_cv_dot_text}
++foo:
++.set glibc_conftest_frobozz,foo
++$libc_cv_asm_global_directive glibc_conftest_frobozz
++EOF
++# The alpha-dec-osf1 assembler gives only a warning for `.set'
++# (but it doesn't work), so we must do a linking check to be sure.
++cat > conftest1.c <<\EOF
++extern int glibc_conftest_frobozz;
++void _start() { glibc_conftest_frobozz = 1; }
++EOF
++if ${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS \
++ -nostartfiles -nostdlib \
++ -o conftest conftest.s conftest1.c 1>&5 2>&5; then
++ libc_cv_asm_set_directive=yes
++else
++ libc_cv_asm_set_directive=no
++fi
++rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_asm_set_directive" >&5
++echo "${ECHO_T}$libc_cv_asm_set_directive" >&6
++if test $libc_cv_asm_set_directive = yes; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_ASM_SET_DIRECTIVE 1
++_ACEOF
++
++fi
++
++echo "$as_me:$LINENO: checking for assembler .type directive prefix" >&5
++echo $ECHO_N "checking for assembler .type directive prefix... $ECHO_C" >&6
++if test "${libc_cv_asm_type_prefix+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ libc_cv_asm_type_prefix=no
++for ac_try_prefix in '@' '%' '#'; do
++ cat > conftest.s <<EOF
++ ${libc_cv_dot_text}
++ ${libc_cv_asm_global_directive} foo
++ .type foo, ${ac_try_prefix}object
++ .size foo, 1
++foo:
++ .byte 1
++EOF
++ if { ac_try='${CC-cc} $ASFLAGS -c conftest.s 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ libc_cv_asm_type_prefix=${ac_try_prefix}
++ fi
++ rm -f conftest*
++ test "x$libc_cv_asm_type_prefix" != xno && break
++done
++fi
++echo "$as_me:$LINENO: result: $libc_cv_asm_type_prefix" >&5
++echo "${ECHO_T}$libc_cv_asm_type_prefix" >&6
++if test "x$libc_cv_asm_type_prefix" != xno; then
++ cat >>confdefs.h <<_ACEOF
++@%:@define ASM_TYPE_DIRECTIVE_PREFIX ${libc_cv_asm_type_prefix}
++_ACEOF
++
++fi
++
++# The Aix ld uses global .symbol_names instead of symbol_names.
++# Unfortunately also used in the PPC64 ELF ABI.
++case "${os}${machine}" in
++aix4.3* | linux*powerpc/powerpc64*)
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_ASM_GLOBAL_DOT_NAME 1
++_ACEOF
++
++esac
++
++echo "$as_me:$LINENO: checking for .symver assembler directive" >&5
++echo $ECHO_N "checking for .symver assembler directive... $ECHO_C" >&6
++if test "${libc_cv_asm_symver_directive+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.s <<EOF
++${libc_cv_dot_text}
++_sym:
++.symver _sym,sym@VERS
++EOF
++if ${CC-cc} -c $ASFLAGS conftest.s 1>&5 2>&5; then
++ libc_cv_asm_symver_directive=yes
++else
++ libc_cv_asm_symver_directive=no
++fi
++rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_asm_symver_directive" >&5
++echo "${ECHO_T}$libc_cv_asm_symver_directive" >&6
++echo "$as_me:$LINENO: checking for ld --version-script" >&5
++echo $ECHO_N "checking for ld --version-script... $ECHO_C" >&6
++if test "${libc_cv_ld_version_script_option+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test $libc_cv_asm_symver_directive = yes; then
++ cat > conftest.s <<EOF
++${libc_cv_dot_text}
++_sym:
++.symver _sym,sym@VERS
++EOF
++ cat > conftest.map <<EOF
++VERS_1 {
++ global: sym;
++};
++
++VERS_2 {
++ global: sym;
++} VERS_1;
++EOF
++ if ${CC-cc} -c $ASFLAGS conftest.s 1>&5 2>&5; then
++ if { ac_try='${CC-cc} $CFLAGS $LDFLAGS -shared
++ -o conftest.so conftest.o
++ -nostartfiles -nostdlib
++ -Wl,--version-script,conftest.map
++ 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; };
++ then
++ libc_cv_ld_version_script_option=yes
++ else
++ libc_cv_ld_version_script_option=no
++ fi
++ else
++ libc_cv_ld_version_script_option=no
++ fi
++else
++ libc_cv_ld_version_script_option=no
++fi
++rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_ld_version_script_option" >&5
++echo "${ECHO_T}$libc_cv_ld_version_script_option" >&6
++if test $shared != no &&
++ test $libc_cv_asm_symver_directive = yes &&
++ test $libc_cv_ld_version_script_option = yes &&
++ test $enable_versioning = yes; then
++ VERSIONING=yes
++ cat >>confdefs.h <<\_ACEOF
++@%:@define DO_VERSIONING 1
++_ACEOF
++
++else
++ VERSIONING=no
++fi
++
++
++if test $elf = yes && test $shared != no && test $VERSIONING = no; then
++ echo "\
++*** WARNING: You should not compile GNU libc without versioning. Not using
++*** versioning will introduce incompatibilities so that old binaries
++*** will not run anymore.
++*** For versioning you need recent binutils (binutils-2.8.1.0.23 or newer)."
++fi
++if test $elf = yes; then
++ echo "$as_me:$LINENO: checking for .previous assembler directive" >&5
++echo $ECHO_N "checking for .previous assembler directive... $ECHO_C" >&6
++if test "${libc_cv_asm_previous_directive+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.s <<EOF
++.section foo_section
++.previous
++EOF
++ if { ac_try='${CC-cc} -c $ASFLAGS conftest.s 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ libc_cv_asm_previous_directive=yes
++ else
++ libc_cv_asm_previous_directive=no
++ fi
++ rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_asm_previous_directive" >&5
++echo "${ECHO_T}$libc_cv_asm_previous_directive" >&6
++ if test $libc_cv_asm_previous_directive = yes; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_ASM_PREVIOUS_DIRECTIVE 1
++_ACEOF
++
++ else
++ echo "$as_me:$LINENO: checking for .popsection assembler directive" >&5
++echo $ECHO_N "checking for .popsection assembler directive... $ECHO_C" >&6
++if test "${libc_cv_asm_popsection_directive+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.s <<EOF
++.pushsection foo_section
++.popsection
++EOF
++ if { ac_try='${CC-cc} -c $ASFLAGS conftest.s 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ libc_cv_asm_popsection_directive=yes
++ else
++ libc_cv_asm_popsection_directive=no
++ fi
++ rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_asm_popsection_directive" >&5
++echo "${ECHO_T}$libc_cv_asm_popsection_directive" >&6
++ if test $libc_cv_asm_popsection_directive = yes; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_ASM_POPSECTION_DIRECTIVE 1
++_ACEOF
++
++ fi
++ fi
++ echo "$as_me:$LINENO: checking for .protected and .hidden assembler directive" >&5
++echo $ECHO_N "checking for .protected and .hidden assembler directive... $ECHO_C" >&6
++if test "${libc_cv_asm_protected_directive+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.s <<EOF
++.protected foo
++foo:
++.hidden bar
++bar:
++EOF
++ if { ac_try='${CC-cc} -c $ASFLAGS conftest.s 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ libc_cv_asm_protected_directive=yes
++ else
++ libc_cv_asm_protected_directive=no
++ fi
++ rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_asm_protected_directive" >&5
++echo "${ECHO_T}$libc_cv_asm_protected_directive" >&6
++
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_PROTECTED 1
++_ACEOF
++
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_HIDDEN 1
++_ACEOF
++
++
++ if test $libc_cv_asm_protected_directive = yes; then
++ echo "$as_me:$LINENO: checking whether __attribute__((visibility())) is supported" >&5
++echo $ECHO_N "checking whether __attribute__((visibility())) is supported... $ECHO_C" >&6
++if test "${libc_cv_visibility_attribute+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.c <<EOF
++ int foo __attribute__ ((visibility ("hidden"))) = 1;
++ int bar __attribute__ ((visibility ("protected"))) = 1;
++EOF
++ libc_cv_visibility_attribute=no
++ if { ac_try='${CC-cc} -Werror -S conftest.c -o conftest.s 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ if grep '\.hidden.*foo' conftest.s >/dev/null; then
++ if grep '\.protected.*bar' conftest.s >/dev/null; then
++ libc_cv_visibility_attribute=yes
++ fi
++ fi
++ fi
++ rm -f conftest.cs
++
++fi
++echo "$as_me:$LINENO: result: $libc_cv_visibility_attribute" >&5
++echo "${ECHO_T}$libc_cv_visibility_attribute" >&6
++ if test $libc_cv_visibility_attribute = yes; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_VISIBILITY_ATTRIBUTE 1
++_ACEOF
++
++ fi
++ fi
++
++ if test $libc_cv_visibility_attribute = yes; then
++ echo "$as_me:$LINENO: checking for broken __attribute__((visibility()))" >&5
++echo $ECHO_N "checking for broken __attribute__((visibility()))... $ECHO_C" >&6
++if test "${libc_cv_broken_visibility_attribute+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.c <<EOF
++ int foo (int x);
++ int bar (int x) __asm__ ("foo") __attribute__ ((visibility ("hidden")));
++ int bar (int x) { return x; }
++EOF
++ libc_cv_broken_visibility_attribute=yes
++ if { ac_try='${CC-cc} -Werror -S conftest.c -o conftest.s1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ if grep '\.hidden[ _]foo' conftest.s >/dev/null; then
++ libc_cv_broken_visibility_attribute=no
++ fi
++ fi
++ rm -f conftest.c conftest.s
++
++fi
++echo "$as_me:$LINENO: result: $libc_cv_broken_visibility_attribute" >&5
++echo "${ECHO_T}$libc_cv_broken_visibility_attribute" >&6
++ if test $libc_cv_broken_visibility_attribute = yes; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_BROKEN_VISIBILITY_ATTRIBUTE 1
++_ACEOF
++
++ fi
++ fi
++
++ echo "$as_me:$LINENO: checking for broken __attribute__((alias()))" >&5
++echo $ECHO_N "checking for broken __attribute__((alias()))... $ECHO_C" >&6
++if test "${libc_cv_broken_alias_attribute+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.c <<EOF
++ extern int foo (int x) __asm ("xyzzy");
++ int bar (int x) { return x; }
++ extern __typeof (bar) foo __attribute ((weak, alias ("bar")));
++ extern int dfoo;
++ extern __typeof (dfoo) dfoo __asm ("abccb");
++ int dfoo = 1;
++EOF
++ libc_cv_broken_alias_attribute=yes
++ if { ac_try='${CC-cc} -Werror -S conftest.c -o conftest.s 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ if grep 'xyzzy' conftest.s >/dev/null &&
++ grep 'abccb' conftest.s >/dev/null; then
++ libc_cv_broken_alias_attribute=no
++ fi
++ fi
++ rm -f conftest.c conftest.s
++
++fi
++echo "$as_me:$LINENO: result: $libc_cv_broken_alias_attribute" >&5
++echo "${ECHO_T}$libc_cv_broken_alias_attribute" >&6
++ if test $libc_cv_broken_alias_attribute = yes; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_BROKEN_ALIAS_ATTRIBUTE 1
++_ACEOF
++
++ fi
++
++ if test $libc_cv_visibility_attribute = yes -a $gnu_ld = yes; then
++ echo "$as_me:$LINENO: checking whether to put _rtld_local into .sdata section" >&5
++echo $ECHO_N "checking whether to put _rtld_local into .sdata section... $ECHO_C" >&6
++if test "${libc_cv_have_sdata_section+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ echo "int i;" > conftest.c
++ libc_cv_have_sdata_section=no
++ if ${CC-cc} $LDFLAGS -shared -Wl,--verbose conftest.c -o conftest.so 2>&1 \
++ | grep '\.sdata' >/dev/null; then
++ libc_cv_have_sdata_section=yes
++ fi
++ rm -f conftest.c conftest.so
++
++fi
++echo "$as_me:$LINENO: result: $libc_cv_have_sdata_section" >&5
++echo "${ECHO_T}$libc_cv_have_sdata_section" >&6
++ if test $libc_cv_have_sdata_section = yes; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_SDATA_SECTION 1
++_ACEOF
++
++ fi
++ fi
++
++ echo "$as_me:$LINENO: checking for .preinit_array/.init_array/.fini_array support" >&5
++echo $ECHO_N "checking for .preinit_array/.init_array/.fini_array support... $ECHO_C" >&6
++if test "${libc_cv_initfinit_array+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.c <<EOF
++int _start (void) { return 0; }
++int __start (void) { return 0; }
++int foo (void) { return 1; }
++int (*fp) (void) __attribute__ ((section (".init_array"))) = foo;
++EOF
++ if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -o conftest conftest.c
++ -static -nostartfiles -nostdlib 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }
++ then
++ if readelf -S conftest | fgrep INIT_ARRAY > /dev/null; then
++ libc_cv_initfinit_array=yes
++ else
++ libc_cv_initfinit_array=no
++ fi
++ else
++ libc_cv_initfinit_array=no
++ fi
++ rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_initfinit_array" >&5
++echo "${ECHO_T}$libc_cv_initfinit_array" >&6
++
++ if test $libc_cv_initfinit_array = yes; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_INITFINI_ARRAY 1
++_ACEOF
++
++ fi
++
++ echo "$as_me:$LINENO: checking for -z nodelete option" >&5
++echo $ECHO_N "checking for -z nodelete option... $ECHO_C" >&6
++if test "${libc_cv_z_nodelete+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.c <<EOF
++int _start (void) { return 42; }
++EOF
++ if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
++ -shared -o conftest.so conftest.c
++ -nostartfiles -nostdlib
++ -Wl,--enable-new-dtags,-z,nodelete 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }
++ then
++ libc_cv_z_nodelete=yes
++ else
++ libc_cv_z_nodelete=no
++ fi
++ rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_z_nodelete" >&5
++echo "${ECHO_T}$libc_cv_z_nodelete" >&6
++
++
++ echo "$as_me:$LINENO: checking for -z nodlopen option" >&5
++echo $ECHO_N "checking for -z nodlopen option... $ECHO_C" >&6
++if test "${libc_cv_z_nodlopen+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.c <<EOF
++int _start (void) { return 42; }
++EOF
++ if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
++ -shared -o conftest.so conftest.c
++ -nostartfiles -nostdlib
++ -Wl,--enable-new-dtags,-z,nodlopen 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }
++ then
++ libc_cv_z_nodlopen=yes
++ else
++ libc_cv_z_nodlopen=no
++ fi
++ rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_z_nodlopen" >&5
++echo "${ECHO_T}$libc_cv_z_nodlopen" >&6
++
++
++ echo "$as_me:$LINENO: checking for -z initfirst option" >&5
++echo $ECHO_N "checking for -z initfirst option... $ECHO_C" >&6
++if test "${libc_cv_z_initfirst+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.c <<EOF
++int _start (void) { return 42; }
++EOF
++ if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
++ -shared -o conftest.so conftest.c
++ -nostartfiles -nostdlib
++ -Wl,--enable-new-dtags,-z,initfirst 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }
++ then
++ libc_cv_z_initfirst=yes
++ else
++ libc_cv_z_initfirst=no
++ fi
++ rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_z_initfirst" >&5
++echo "${ECHO_T}$libc_cv_z_initfirst" >&6
++
++
++ echo "$as_me:$LINENO: checking for -Bgroup option" >&5
++echo $ECHO_N "checking for -Bgroup option... $ECHO_C" >&6
++if test "${libc_cv_Bgroup+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.c <<EOF
++int _start (void) { return 42; }
++EOF
++ if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
++ -shared -o conftest.so conftest.c
++ -Wl,-Bgroup -nostdlib 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }
++ then
++ libc_cv_Bgroup=yes
++ else
++ libc_cv_Bgroup=no
++ fi
++ rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_Bgroup" >&5
++echo "${ECHO_T}$libc_cv_Bgroup" >&6
++
++
++ ASFLAGS_config=
++ echo "$as_me:$LINENO: checking whether --noexecstack is desirable for .S files" >&5
++echo $ECHO_N "checking whether --noexecstack is desirable for .S files... $ECHO_C" >&6
++if test "${libc_cv_as_noexecstack+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.c <<EOF
++void foo (void) { }
++EOF
++ if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS
++ -S -o conftest.s conftest.c 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; } \
++ && grep -q .note.GNU-stack conftest.s \
++ && { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -Wa,--noexecstack
++ -c -o conftest.o conftest.s 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }
++ then
++ libc_cv_as_noexecstack=yes
++ else
++ libc_cv_as_noexecstack=no
++ fi
++ rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_as_noexecstack" >&5
++echo "${ECHO_T}$libc_cv_as_noexecstack" >&6
++ if test $libc_cv_as_noexecstack = yes; then
++ ASFLAGS_config="$ASFLAGS_config -Wa,--noexecstack"
++ fi
++
++ echo "$as_me:$LINENO: checking for -z combreloc" >&5
++echo $ECHO_N "checking for -z combreloc... $ECHO_C" >&6
++if test "${libc_cv_z_combreloc+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.c <<EOF
++extern int bar (int);
++extern int mumble;
++int foo (void) { return bar (mumble); }
++EOF
++ if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
++ -shared -o conftest.so conftest.c
++ -nostdlib -nostartfiles
++ -Wl,-z,combreloc 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }
++ then
++ if readelf -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then
++ libc_cv_z_combreloc=yes
++ else
++ libc_cv_z_combreloc=no
++ fi
++ else
++ libc_cv_z_combreloc=no
++ fi
++ rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_z_combreloc" >&5
++echo "${ECHO_T}$libc_cv_z_combreloc" >&6
++ if test "$libc_cv_z_combreloc" = yes; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_Z_COMBRELOC 1
++_ACEOF
++
++ fi
++fi
++
++
++if test $elf != yes; then
++ echo "$as_me:$LINENO: checking for .init and .fini sections" >&5
++echo $ECHO_N "checking for .init and .fini sections... $ECHO_C" >&6
++if test "${libc_cv_have_initfini+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++
++int
++main ()
++{
++asm (".section .init");
++ asm (".section .fini");
++ asm ("${libc_cv_dot_text}");
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++ (eval $ac_compile) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -s conftest.$ac_objext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ libc_cv_have_initfini=yes
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++libc_cv_have_initfini=no
++fi
++rm -f conftest.$ac_objext conftest.$ac_ext
++fi
++echo "$as_me:$LINENO: result: $libc_cv_have_initfini" >&5
++echo "${ECHO_T}$libc_cv_have_initfini" >&6
++ if test $libc_cv_have_initfini = yes; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_INITFINI 1
++_ACEOF
++
++ fi
++fi
++
++if test $elf = yes -a $gnu_ld = yes; then
++ echo "$as_me:$LINENO: checking whether cc puts quotes around section names" >&5
++echo $ECHO_N "checking whether cc puts quotes around section names... $ECHO_C" >&6
++if test "${libc_cv_have_section_quotes+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.c <<EOF
++ static const int foo
++ __attribute__ ((section ("bar"))) = 1;
++EOF
++ if ${CC-cc} -S conftest.c -o conftest.s; then
++ if grep '\.section.*"bar"' conftest.s >/dev/null; then
++ libc_cv_have_section_quotes=yes
++ else
++ libc_cv_have_section_quotes=no
++ fi
++ else
++ libc_cv_have_section_quotes=unknown
++ fi
++ rm -f conftest.cs
++
++fi
++echo "$as_me:$LINENO: result: $libc_cv_have_section_quotes" >&5
++echo "${ECHO_T}$libc_cv_have_section_quotes" >&6
++ if test $libc_cv_have_section_quotes = yes; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_SECTION_QUOTES 1
++_ACEOF
++
++ fi
++fi
++
++
++
++if test $elf = yes; then
++ libc_cv_asm_underscores=no
++else
++ if test $ac_cv_prog_cc_works = yes; then
++ echo "$as_me:$LINENO: checking for _ prefix on C symbol names" >&5
++echo $ECHO_N "checking for _ prefix on C symbol names... $ECHO_C" >&6
++if test "${libc_cv_asm_underscores+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++asm ("_glibc_foobar:");
++int
++main ()
++{
++glibc_foobar ();
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext conftest$ac_exeext
++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
++ (eval $ac_link) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -s conftest$ac_exeext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ libc_cv_asm_underscores=yes
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++libc_cv_asm_underscores=no
++fi
++rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
++fi
++echo "$as_me:$LINENO: result: $libc_cv_asm_underscores" >&5
++echo "${ECHO_T}$libc_cv_asm_underscores" >&6
++ else
++ echo "$as_me:$LINENO: checking for _ prefix on C symbol names" >&5
++echo $ECHO_N "checking for _ prefix on C symbol names... $ECHO_C" >&6
++if test "${libc_cv_asm_underscores+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.$ac_ext <<EOF
++#line $LINENO "configure"
++#include "confdefs.h"
++void underscore_test(void) {
++return; }
++EOF
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++ (eval $ac_compile) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; then
++ if grep _underscore_test conftest* >/dev/null; then
++ rm -f conftest*
++ libc_cv_asm_underscores=yes
++ else
++ rm -f conftest*
++ libc_cv_asm_underscores=no
++ fi
++else
++ echo "configure: failed program was:" >&5
++ cat conftest.$ac_ext >&5
++ rm -f conftest*
++ libc_cv_asm_underscores=no
++fi
++rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_asm_underscores" >&5
++echo "${ECHO_T}$libc_cv_asm_underscores" >&6
++ fi
++fi
++if test $libc_cv_asm_underscores = no; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define NO_UNDERSCORES 1
++_ACEOF
++
++fi
++
++if test $elf = yes; then
++ libc_cv_weak_symbols=yes
++fi
++
++echo "$as_me:$LINENO: checking for assembler .weak directive" >&5
++echo $ECHO_N "checking for assembler .weak directive... $ECHO_C" >&6
++if test "${libc_cv_asm_weak_directive+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.s <<EOF
++${libc_cv_dot_text}
++${libc_cv_asm_global_directive} foo
++foo:
++.weak foo
++.weak bar; bar = foo
++EOF
++if { ac_try='${CC-cc} $ASFLAGS -c conftest.s 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ libc_cv_asm_weak_directive=yes
++else
++ libc_cv_asm_weak_directive=no
++fi
++rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_asm_weak_directive" >&5
++echo "${ECHO_T}$libc_cv_asm_weak_directive" >&6
++
++if test $libc_cv_asm_weak_directive = no; then
++ echo "$as_me:$LINENO: checking for assembler .weakext directive" >&5
++echo $ECHO_N "checking for assembler .weakext directive... $ECHO_C" >&6
++if test "${libc_cv_asm_weakext_directive+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.s <<EOF
++${libc_cv_dot_text}
++${libc_cv_asm_global_directive} foo
++foo:
++.weakext bar foo
++.weakext baz
++${libc_cv_asm_global_directive} baz
++baz:
++EOF
++ if { ac_try='${CC-cc} $ASFLAGS -c conftest.s 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ libc_cv_asm_weakext_directive=yes
++ else
++ libc_cv_asm_weakext_directive=no
++ fi
++ rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_asm_weakext_directive" >&5
++echo "${ECHO_T}$libc_cv_asm_weakext_directive" >&6
++
++fi # no .weak
++
++if test $libc_cv_asm_weak_directive = yes; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_ASM_WEAK_DIRECTIVE 1
++_ACEOF
++
++elif test $libc_cv_asm_weakext_directive = yes; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_ASM_WEAKEXT_DIRECTIVE 1
++_ACEOF
++
++fi
++
++case "${host_cpu}-${host_os}" in
++ cris*)
++ libc_cv_asm_line_sep='@'
++ cat >>confdefs.h <<_ACEOF
++@%:@define ASM_LINE_SEP $libc_cv_asm_line_sep
++_ACEOF
++
++ ;;
++ hppa*linux*)
++ echo "$as_me:$LINENO: checking for assembler line separator" >&5
++echo $ECHO_N "checking for assembler line separator... $ECHO_C" >&6
++if test "${libc_cv_asm_line_sep+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.s <<EOF
++ nop ; is_old_puffin
++EOF
++ if { ac_try='${CC-cc} -c $ASFLAGS conftest.s 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ libc_cv_asm_line_sep='!'
++ else
++ if test -z "$enable_hacker_mode"; then
++ echo "*** You need a newer assembler to compile glibc"
++ rm -f conftest*
++ exit 1
++ fi
++ libc_cv_asm_line_sep=';'
++ fi
++ rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_asm_line_sep" >&5
++echo "${ECHO_T}$libc_cv_asm_line_sep" >&6
++ cat >>confdefs.h <<_ACEOF
++@%:@define ASM_LINE_SEP $libc_cv_asm_line_sep
++_ACEOF
++
++ ;;
++esac
++
++echo "$as_me:$LINENO: checking whether CFI directives are supported" >&5
++echo $ECHO_N "checking whether CFI directives are supported... $ECHO_C" >&6
++if test "${libc_cv_asm_cfi_directives+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.s <<EOF
++ .text
++ .type func,@function
++func:
++ .cfi_startproc
++ .cfi_remember_state
++ .cfi_rel_offset 1, 0
++ .cfi_endproc
++EOF
++if { ac_try='${CC-cc} $ASFLAGS -c conftest.s 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ libc_cv_asm_cfi_directives=yes
++else
++ libc_cv_asm_cfi_directives=no
++fi
++rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_asm_cfi_directives" >&5
++echo "${ECHO_T}$libc_cv_asm_cfi_directives" >&6
++if test $libc_cv_asm_cfi_directives = yes; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_ASM_CFI_DIRECTIVES 1
++_ACEOF
++
++fi
++
++echo "$as_me:$LINENO: checking if -g produces usable source locations for assembler-with-cpp" >&5
++echo $ECHO_N "checking if -g produces usable source locations for assembler-with-cpp... $ECHO_C" >&6
++if test "${libc_cv_cpp_asm_debuginfo+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.S <<EOF
++#include "confdefs.h"
++
++/* comment on
++ two lines */
++ ${libc_cv_dot_text}
++ ${libc_cv_asm_global_directive} foo
++foo:
++ /* Unfortunately this test only works for a real instruction,
++ not for any of the machine-independent pseudo-ops.
++ So we just have to assume everybody has a "nop". */
++ nop
++ /* comment */
++ nop
++ /* comment */
++ nop
++EOF
++if { ac_try='${CC-cc} $CPPFLAGS $ASFLAGS -g -c conftest.S 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; } &&
++ ac_pattern='conftest\.S'
++ { ac_try='readelf --debug-dump=line conftest.o |
++ grep $ac_pattern 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ libc_cv_cpp_asm_debuginfo=yes
++else
++ libc_cv_cpp_asm_debuginfo=no
++fi
++rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_cpp_asm_debuginfo" >&5
++echo "${ECHO_T}$libc_cv_cpp_asm_debuginfo" >&6
++if test $libc_cv_cpp_asm_debuginfo = yes; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_CPP_ASM_DEBUGINFO 1
++_ACEOF
++
++fi
++
++echo "$as_me:$LINENO: checking for ld --no-whole-archive" >&5
++echo $ECHO_N "checking for ld --no-whole-archive... $ECHO_C" >&6
++if test "${libc_cv_ld_no_whole_archive+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.c <<\EOF
++_start () {}
++int __eh_pc;
++__throw () {}
++EOF
++if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
++ -nostdlib -nostartfiles -Wl,--no-whole-archive
++ -o conftest conftest.c 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ libc_cv_ld_no_whole_archive=yes
++else
++ libc_cv_ld_no_whole_archive=no
++fi
++rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_ld_no_whole_archive" >&5
++echo "${ECHO_T}$libc_cv_ld_no_whole_archive" >&6
++if test $libc_cv_ld_no_whole_archive = yes; then
++ no_whole_archive=-Wl,--no-whole-archive
++fi
++
++echo "$as_me:$LINENO: checking for gcc -fexceptions" >&5
++echo $ECHO_N "checking for gcc -fexceptions... $ECHO_C" >&6
++if test "${libc_cv_gcc_exceptions+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.c <<\EOF
++_start () {}
++int __eh_pc;
++__throw () {}
++EOF
++if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
++ -nostdlib -nostartfiles -fexceptions
++ -o conftest conftest.c 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ libc_cv_gcc_exceptions=yes
++else
++ libc_cv_gcc_exceptions=no
++fi
++rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_gcc_exceptions" >&5
++echo "${ECHO_T}$libc_cv_gcc_exceptions" >&6
++if test $libc_cv_gcc_exceptions = yes; then
++ exceptions=-fexceptions
++fi
++
++if test "$host_cpu" = powerpc ; then
++# Check for a bug present in at least versions 2.8.x of GCC
++# and versions 1.0.x of EGCS.
++echo "$as_me:$LINENO: checking whether clobbering cr0 causes problems" >&5
++echo $ECHO_N "checking whether clobbering cr0 causes problems... $ECHO_C" >&6
++if test "${libc_cv_c_asmcr0_bug+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++int tester(int x) { asm ("" : : : "cc"); return x & 123; }
++int
++main ()
++{
++
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++ (eval $ac_compile) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -s conftest.$ac_objext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ libc_cv_c_asmcr0_bug='no'
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++libc_cv_c_asmcr0_bug='yes'
++fi
++rm -f conftest.$ac_objext conftest.$ac_ext
++fi
++echo "$as_me:$LINENO: result: $libc_cv_c_asmcr0_bug" >&5
++echo "${ECHO_T}$libc_cv_c_asmcr0_bug" >&6
++if test "$libc_cv_c_asmcr0_bug" != 'no'; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define BROKEN_PPC_ASM_CR0 1
++_ACEOF
++
++fi
++fi
++
++echo "$as_me:$LINENO: checking for DWARF2 unwind info support" >&5
++echo $ECHO_N "checking for DWARF2 unwind info support... $ECHO_C" >&6
++if test "${libc_cv_gcc_dwarf2_unwind_info+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.c <<EOF
++#line $LINENO "configure"
++static char *__EH_FRAME_BEGIN__;
++_start ()
++{
++#ifdef CHECK__register_frame
++ __register_frame (__EH_FRAME_BEGIN__);
++ __deregister_frame (__EH_FRAME_BEGIN__);
++#endif
++#ifdef CHECK__register_frame_info
++ __register_frame_info (__EH_FRAME_BEGIN__);
++ __deregister_frame_info (__EH_FRAME_BEGIN__);
++#endif
++}
++int __eh_pc;
++__throw () {}
++/* FIXME: this is fragile. */
++malloc () {}
++strcmp () {}
++strlen () {}
++memcpy () {}
++memset () {}
++free () {}
++abort () {}
++__bzero () {}
++dl_iterate_phdr () {}
++EOF
++libc_unwind_check="${CC-cc} $CFLAGS $CPPFLAGS -DCHECK__register_frame_info \
++ $LDFLAGS \
++ -nostdlib -nostartfiles -o conftest conftest.c \
++ -lgcc"
++# Some platforms' specs put -lgcc first. The second one doesn't hurt.
++if { ac_try='$libc_unwind_check >&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; } ||
++ { ac_try='$libc_unwind_check -lgcc_eh -lgcc >&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }
++then
++ if $libc_unwind_check -v 2>&1 >/dev/null \
++ | grep -q -- --eh-frame-hdr; then
++ libc_cv_gcc_dwarf2_unwind_info=no_registry_needed
++ else
++ libc_cv_gcc_dwarf2_unwind_info=static
++ fi
++else
++ libc_cv_gcc_dwarf2_unwind_info=no
++fi
++if test $libc_cv_gcc_dwarf2_unwind_info = no; then
++ if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -DCHECK__register_frame
++ $LDFLAGS -nostdlib -nostartfiles
++ -o conftest conftest.c -lgcc >&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ libc_cv_gcc_dwarf2_unwind_info=yes
++ else
++ libc_cv_gcc_dwarf2_unwind_info=no
++ fi
++fi
++rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_gcc_dwarf2_unwind_info" >&5
++echo "${ECHO_T}$libc_cv_gcc_dwarf2_unwind_info" >&6
++case $libc_cv_gcc_dwarf2_unwind_info in
++yes)
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_DWARF2_UNWIND_INFO 1
++_ACEOF
++
++ ;;
++static)
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_DWARF2_UNWIND_INFO 1
++_ACEOF
++
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_DWARF2_UNWIND_INFO_STATIC 1
++_ACEOF
++
++ ;;
++esac
++
++echo "$as_me:$LINENO: checking for __builtin_expect" >&5
++echo $ECHO_N "checking for __builtin_expect... $ECHO_C" >&6
++if test "${libc_cv_gcc_builtin_expect+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.c <<EOF
++#line $LINENO "configure"
++int foo (int a)
++{
++ a = __builtin_expect (a, 10);
++ return a == 10 ? 0 : 1;
++}
++EOF
++if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -nostdlib -nostartfiles
++ -o conftest conftest.c -lgcc >&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ libc_cv_gcc_builtin_expect=yes
++else
++ libc_cv_gcc_builtin_expect=no
++fi
++rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_gcc_builtin_expect" >&5
++echo "${ECHO_T}$libc_cv_gcc_builtin_expect" >&6
++if test "$libc_cv_gcc_builtin_expect" = yes; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_BUILTIN_EXPECT 1
++_ACEOF
++
++fi
++
++echo "$as_me:$LINENO: checking for __builtin_memset" >&5
++echo $ECHO_N "checking for __builtin_memset... $ECHO_C" >&6
++if test "${libc_cv_gcc_builtin_memset+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.c <<\EOF
++void zero (void *x)
++{
++ __builtin_memset (x, 0, 1000);
++}
++EOF
++if { ac_try='${CC-cc} -O3 -S conftest.c -o - | fgrep "memset" > /dev/null'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; };
++then
++ libc_cv_gcc_builtin_memset=no
++else
++ libc_cv_gcc_builtin_memset=yes
++fi
++rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_gcc_builtin_memset" >&5
++echo "${ECHO_T}$libc_cv_gcc_builtin_memset" >&6
++if test "$libc_cv_gcc_builtin_memset" = yes ; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_BUILTIN_MEMSET 1
++_ACEOF
++
++fi
++
++echo "$as_me:$LINENO: checking for redirection of built-in functions" >&5
++echo $ECHO_N "checking for redirection of built-in functions... $ECHO_C" >&6
++if test "${libc_cv_gcc_builtin_redirection+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.c <<\EOF
++extern char *strstr (const char *, const char *) __asm ("my_strstr");
++char *foo (const char *a, const char *b)
++{
++ return __builtin_strstr (a, b);
++}
++EOF
++if { ac_try='${CC-cc} -O3 -S conftest.c -o - | fgrep "my_strstr" > /dev/null'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; };
++then
++ libc_cv_gcc_builtin_redirection=yes
++else
++ libc_cv_gcc_builtin_redirection=no
++fi
++rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_gcc_builtin_redirection" >&5
++echo "${ECHO_T}$libc_cv_gcc_builtin_redirection" >&6
++if test "$libc_cv_gcc_builtin_redirection" = yes ; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_BUILTIN_REDIRECTION 1
++_ACEOF
++
++fi
++
++echo "$as_me:$LINENO: checking for local label subtraction" >&5
++echo $ECHO_N "checking for local label subtraction... $ECHO_C" >&6
++if test "${libc_cv_gcc_subtract_local_labels+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.c <<EOF
++#line $LINENO "configure"
++int foo (int a)
++{
++ static const int ar[] = { &&l1 - &&l1, &&l2 - &&l1 };
++ void *p = &&l1 + ar[a];
++ goto *p;
++ l1:
++ return 1;
++ l2:
++ return 2;
++}
++EOF
++if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -nostdlib -nostartfiles
++ -o conftest conftest.c -lgcc >&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ libc_cv_gcc_subtract_local_labels=yes
++else
++ libc_cv_gcc_subtract_local_labels=no
++fi
++rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_gcc_subtract_local_labels" >&5
++echo "${ECHO_T}$libc_cv_gcc_subtract_local_labels" >&6
++if test "$libc_cv_gcc_subtract_local_labels" = yes; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_SUBTRACT_LOCAL_LABELS 1
++_ACEOF
++
++fi
++
++if test "x$use__thread" != xno; then
++ echo "$as_me:$LINENO: checking for __thread" >&5
++echo $ECHO_N "checking for __thread... $ECHO_C" >&6
++if test "${libc_cv_gcc___thread+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.c <<\EOF
++__thread int a = 42;
++EOF
++ if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -c conftest.c >&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ libc_cv_gcc___thread=yes
++ else
++ libc_cv_gcc___thread=no
++ fi
++ rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_gcc___thread" >&5
++echo "${ECHO_T}$libc_cv_gcc___thread" >&6
++ if test "$libc_cv_gcc___thread" = yes; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE___THREAD 1
++_ACEOF
++
++ fi
++else
++ libc_cv_gcc___thread=no
++fi
++
++if test "$libc_cv_gcc___thread" = yes; then
++ echo "$as_me:$LINENO: checking for tls_model attribute" >&5
++echo $ECHO_N "checking for tls_model attribute... $ECHO_C" >&6
++if test "${libc_cv_gcc_tls_model_attr+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.c <<\EOF
++extern __thread int a __attribute__((tls_model ("initial-exec")));
++EOF
++ if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -S -Werror conftest.c >&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ libc_cv_gcc_tls_model_attr=yes
++ else
++ libc_cv_gcc_tls_model_attr=no
++ fi
++ rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_gcc_tls_model_attr" >&5
++echo "${ECHO_T}$libc_cv_gcc_tls_model_attr" >&6
++ if test "$libc_cv_gcc_tls_model_attr" = yes; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_TLS_MODEL_ATTRIBUTE 1
++_ACEOF
++
++ fi
++fi
++
++echo "$as_me:$LINENO: checking for libgd" >&5
++echo $ECHO_N "checking for libgd... $ECHO_C" >&6
++if test "$with_gd" != "no"; then
++ old_CFLAGS="$CFLAGS"
++ CFLAGS="$CFLAGS $libgd_include"
++ old_LDFLAGS="$LDFLAGS"
++ LDFLAGS="$LDFLAGS $libgd_ldflags"
++ old_LIBS="$LIBS"
++ LIBS="$LIBS -lgd -lpng -lz -lm"
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++#include <gd.h>
++int
++main ()
++{
++gdImagePng (0, 0)
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext conftest$ac_exeext
++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
++ (eval $ac_link) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -s conftest$ac_exeext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ LIBGD=yes
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++LIBGD=no
++fi
++rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
++ CFLAGS="$old_CFLAGS"
++ LDFLAGS="$old_LDFLAGS"
++ LIBS="$old_LIBS"
++else
++ LIBGD=no
++fi
++echo "$as_me:$LINENO: result: $LIBGD" >&5
++echo "${ECHO_T}$LIBGD" >&6
++
++
++
++echo "$as_me:$LINENO: checking for egrep" >&5
++echo $ECHO_N "checking for egrep... $ECHO_C" >&6
++if test "${ac_cv_prog_egrep+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if echo a | (grep -E '(a|b)') >/dev/null 2>&1
++ then ac_cv_prog_egrep='grep -E'
++ else ac_cv_prog_egrep='egrep'
++ fi
++fi
++echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5
++echo "${ECHO_T}$ac_cv_prog_egrep" >&6
++ EGREP=$ac_cv_prog_egrep
++
++
++echo "$as_me:$LINENO: checking for ANSI C header files" >&5
++echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6
++if test "${ac_cv_header_stdc+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++#include <stdlib.h>
++#include <stdarg.h>
++#include <string.h>
++#include <float.h>
++
++int
++main ()
++{
++
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++ (eval $ac_compile) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -s conftest.$ac_objext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ ac_cv_header_stdc=yes
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_cv_header_stdc=no
++fi
++rm -f conftest.$ac_objext conftest.$ac_ext
++
++if test $ac_cv_header_stdc = yes; then
++ # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++#include <string.h>
++
++_ACEOF
++if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
++ $EGREP "memchr" >/dev/null 2>&1; then
++ :
++else
++ ac_cv_header_stdc=no
++fi
++rm -f conftest*
++
++fi
++
++if test $ac_cv_header_stdc = yes; then
++ # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++#include <stdlib.h>
++
++_ACEOF
++if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
++ $EGREP "free" >/dev/null 2>&1; then
++ :
++else
++ ac_cv_header_stdc=no
++fi
++rm -f conftest*
++
++fi
++
++if test $ac_cv_header_stdc = yes; then
++ # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
++ if test "$cross_compiling" = yes; then
++ :
++else
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++#include <ctype.h>
++#if ((' ' & 0x0FF) == 0x020)
++# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
++# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
++#else
++# define ISLOWER(c) \
++ (('a' <= (c) && (c) <= 'i') \
++ || ('j' <= (c) && (c) <= 'r') \
++ || ('s' <= (c) && (c) <= 'z'))
++# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
++#endif
++
++#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
++int
++main ()
++{
++ int i;
++ for (i = 0; i < 256; i++)
++ if (XOR (islower (i), ISLOWER (i))
++ || toupper (i) != TOUPPER (i))
++ exit(2);
++ exit (0);
++}
++_ACEOF
++rm -f conftest$ac_exeext
++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
++ (eval $ac_link) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ :
++else
++ echo "$as_me: program exited with status $ac_status" >&5
++echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++( exit $ac_status )
++ac_cv_header_stdc=no
++fi
++rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
++fi
++fi
++fi
++echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5
++echo "${ECHO_T}$ac_cv_header_stdc" >&6
++if test $ac_cv_header_stdc = yes; then
++
++cat >>confdefs.h <<\_ACEOF
++@%:@define STDC_HEADERS 1
++_ACEOF
++
++fi
++
++# On IRIX 5.3, sys/types and inttypes.h are conflicting.
++
++
++
++
++
++
++
++
++
++for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
++ inttypes.h stdint.h unistd.h
++do
++as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
++echo "$as_me:$LINENO: checking for $ac_header" >&5
++echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
++if eval "test \"\${$as_ac_Header+set}\" = set"; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++$ac_includes_default
++
++@%:@include <$ac_header>
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++ (eval $ac_compile) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -s conftest.$ac_objext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ eval "$as_ac_Header=yes"
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++eval "$as_ac_Header=no"
++fi
++rm -f conftest.$ac_objext conftest.$ac_ext
++fi
++echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
++echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
++if test `eval echo '${'$as_ac_Header'}'` = yes; then
++ cat >>confdefs.h <<_ACEOF
++@%:@define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
++_ACEOF
++
++fi
++
++done
++
++
++echo "$as_me:$LINENO: checking for long double" >&5
++echo $ECHO_N "checking for long double... $ECHO_C" >&6
++if test "${ac_cv_type_long_double+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++$ac_includes_default
++int
++main ()
++{
++if ((long double *) 0)
++ return 0;
++if (sizeof (long double))
++ return 0;
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++ (eval $ac_compile) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -s conftest.$ac_objext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ ac_cv_type_long_double=yes
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_cv_type_long_double=no
++fi
++rm -f conftest.$ac_objext conftest.$ac_ext
++fi
++echo "$as_me:$LINENO: result: $ac_cv_type_long_double" >&5
++echo "${ECHO_T}$ac_cv_type_long_double" >&6
++
++echo "$as_me:$LINENO: checking size of long double" >&5
++echo $ECHO_N "checking size of long double... $ECHO_C" >&6
++if test "${ac_cv_sizeof_long_double+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test "$ac_cv_type_long_double" = yes; then
++ # The cast to unsigned long works around a bug in the HP C Compiler
++ # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
++ # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
++ # This bug is HP SR number 8606223364.
++ if test "$cross_compiling" = yes; then
++ # Depending upon the size, compute the lo and hi bounds.
++cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++$ac_includes_default
++int
++main ()
++{
++static int test_array @<:@1 - 2 * !(((long) (sizeof (long double))) >= 0)@:>@;
++test_array @<:@0@:>@ = 0
++
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++ (eval $ac_compile) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -s conftest.$ac_objext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ ac_lo=0 ac_mid=0
++ while :; do
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++$ac_includes_default
++int
++main ()
++{
++static int test_array @<:@1 - 2 * !(((long) (sizeof (long double))) <= $ac_mid)@:>@;
++test_array @<:@0@:>@ = 0
++
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++ (eval $ac_compile) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -s conftest.$ac_objext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ ac_hi=$ac_mid; break
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_lo=`expr $ac_mid + 1`
++ if test $ac_lo -le $ac_mid; then
++ ac_lo= ac_hi=
++ break
++ fi
++ ac_mid=`expr 2 '*' $ac_mid + 1`
++fi
++rm -f conftest.$ac_objext conftest.$ac_ext
++ done
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++$ac_includes_default
++int
++main ()
++{
++static int test_array @<:@1 - 2 * !(((long) (sizeof (long double))) < 0)@:>@;
++test_array @<:@0@:>@ = 0
++
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++ (eval $ac_compile) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -s conftest.$ac_objext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ ac_hi=-1 ac_mid=-1
++ while :; do
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++$ac_includes_default
++int
++main ()
++{
++static int test_array @<:@1 - 2 * !(((long) (sizeof (long double))) >= $ac_mid)@:>@;
++test_array @<:@0@:>@ = 0
++
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++ (eval $ac_compile) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -s conftest.$ac_objext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ ac_lo=$ac_mid; break
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_hi=`expr '(' $ac_mid ')' - 1`
++ if test $ac_mid -le $ac_hi; then
++ ac_lo= ac_hi=
++ break
++ fi
++ ac_mid=`expr 2 '*' $ac_mid`
++fi
++rm -f conftest.$ac_objext conftest.$ac_ext
++ done
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_lo= ac_hi=
++fi
++rm -f conftest.$ac_objext conftest.$ac_ext
++fi
++rm -f conftest.$ac_objext conftest.$ac_ext
++# Binary search between lo and hi bounds.
++while test "x$ac_lo" != "x$ac_hi"; do
++ ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo`
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++$ac_includes_default
++int
++main ()
++{
++static int test_array @<:@1 - 2 * !(((long) (sizeof (long double))) <= $ac_mid)@:>@;
++test_array @<:@0@:>@ = 0
++
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++ (eval $ac_compile) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -s conftest.$ac_objext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ ac_hi=$ac_mid
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_lo=`expr '(' $ac_mid ')' + 1`
++fi
++rm -f conftest.$ac_objext conftest.$ac_ext
++done
++case $ac_lo in
++?*) ac_cv_sizeof_long_double=$ac_lo;;
++'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (long double), 77
++See \`config.log' for more details." >&5
++echo "$as_me: error: cannot compute sizeof (long double), 77
++See \`config.log' for more details." >&2;}
++ { (exit 1); exit 1; }; } ;;
++esac
++else
++ if test "$cross_compiling" = yes; then
++ { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling
++See \`config.log' for more details." >&5
++echo "$as_me: error: cannot run test program while cross compiling
++See \`config.log' for more details." >&2;}
++ { (exit 1); exit 1; }; }
++else
++ cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++$ac_includes_default
++long longval () { return (long) (sizeof (long double)); }
++unsigned long ulongval () { return (long) (sizeof (long double)); }
++@%:@include <stdio.h>
++@%:@include <stdlib.h>
++int
++main ()
++{
++
++ FILE *f = fopen ("conftest.val", "w");
++ if (! f)
++ exit (1);
++ if (((long) (sizeof (long double))) < 0)
++ {
++ long i = longval ();
++ if (i != ((long) (sizeof (long double))))
++ exit (1);
++ fprintf (f, "%ld\n", i);
++ }
++ else
++ {
++ unsigned long i = ulongval ();
++ if (i != ((long) (sizeof (long double))))
++ exit (1);
++ fprintf (f, "%lu\n", i);
++ }
++ exit (ferror (f) || fclose (f) != 0);
++
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest$ac_exeext
++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
++ (eval $ac_link) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ ac_cv_sizeof_long_double=`cat conftest.val`
++else
++ echo "$as_me: program exited with status $ac_status" >&5
++echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++( exit $ac_status )
++{ { echo "$as_me:$LINENO: error: cannot compute sizeof (long double), 77
++See \`config.log' for more details." >&5
++echo "$as_me: error: cannot compute sizeof (long double), 77
++See \`config.log' for more details." >&2;}
++ { (exit 1); exit 1; }; }
++fi
++rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
++fi
++fi
++rm -f conftest.val
++else
++ ac_cv_sizeof_long_double=0
++fi
++fi
++echo "$as_me:$LINENO: result: $ac_cv_sizeof_long_double" >&5
++echo "${ECHO_T}$ac_cv_sizeof_long_double" >&6
++cat >>confdefs.h <<_ACEOF
++@%:@define SIZEOF_LONG_DOUBLE $ac_cv_sizeof_long_double
++_ACEOF
++
++
++sizeof_long_double=$ac_cv_sizeof_long_double
++
++
++### End of automated tests.
++### Now run sysdeps configure fragments.
++
++# They also can set these variables.
++use_ldconfig=no
++ldd_rewrite_script=no
++libc_cv_sysconfdir=$sysconfdir
++libc_cv_gcc_unwind_find_fde=no
++
++# Iterate over all the sysdep directories we will use, running their
++# configure fragments, and looking for a uname implementation.
++uname=
++for dir in $sysnames; do
++ case $dir in
++ /*) dest=$dir ;;
++ *) dest=$srcdir/$dir ;;
++ esac
++ if test -r $dest/configure; then
++ echo "$as_me:$LINENO: result: running configure fragment for $dir" >&5
++echo "${ECHO_T}running configure fragment for $dir" >&6
++ . $dest/configure
++ fi
++
++ if test -z "$uname"; then
++ if test -r $dest/uname.c ||
++ test -r $dest/uname.S ||
++ { test -r $dest/syscalls.list &&
++ grep '^uname[ ]' $dest/syscalls.list >/dev/null; }; then
++ uname=$dir
++ fi
++ fi
++done
++
++if test x$libc_cv_gcc_unwind_find_fde = xyes; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define EXPORT_UNWIND_FIND_FDE 1
++_ACEOF
++
++fi
++
++
++# If we will use the generic uname implementation, we must figure out what
++# it will say by examining the system, and write the results in config-name.h.
++if test "$uname" = "sysdeps/generic"; then
++
++ uname_sysname=`echo $config_os | sed 's/[0-9.]*$//'`
++ if test $uname_sysname != $config_os; then
++ config_release=`echo $config_os | sed s/$uname_sysname//`
++ fi
++
++ echo "$as_me:$LINENO: checking OS release for uname" >&5
++echo $ECHO_N "checking OS release for uname... $ECHO_C" >&6
++if test "${libc_cv_uname_release+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -r /vmunix; then
++ kernel_id=`strings /vmunix | grep UNIX`
++ elif test -r /dynix; then
++ kernel_id=`strings /dynix | grep DYNIX`
++ else
++ kernel_id=
++ fi
++
++ kernel_release=`echo "$kernel_id" | sed 's/^[^0-9.]*\([0-9.]*\).*$/\1/'`
++ if test x`echo "$config_release" | sed "s/^$kernel_release//"` \
++ != x$config_release; then
++ # The configuration release is a substring of the kernel release.
++ libc_cv_uname_release=$kernel_release
++ elif test x$config_release != x; then
++ libc_cv_uname_release=$config_release
++ elif test x$kernel_release != x; then
++ libc_cv_uname_release=$kernel_release
++ else
++ libc_cv_uname_release=unknown
++ fi
++fi
++echo "$as_me:$LINENO: result: $libc_cv_uname_release" >&5
++echo "${ECHO_T}$libc_cv_uname_release" >&6
++ uname_release="$libc_cv_uname_release"
++
++ echo "$as_me:$LINENO: checking OS version for uname" >&5
++echo $ECHO_N "checking OS version for uname... $ECHO_C" >&6
++if test "${libc_cv_uname_version+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -r /vmunix; then
++ kernel_id=`strings /vmunix | grep UNIX`
++ elif test -r /dynix; then
++ kernel_id=`strings /dynix | grep DYNIX`
++ else
++ kernel_id=
++ fi
++
++ kernel_version=`echo "$kernel_id" | sed 's/^[^#]*#\([0-9]*\).*$/\1/'`
++ if test -n "$kernel_version"; then
++ libc_cv_uname_version="$kernel_version"
++ else
++ libc_cv_uname_version=unknown
++ fi
++fi
++echo "$as_me:$LINENO: result: $libc_cv_uname_version" >&5
++echo "${ECHO_T}$libc_cv_uname_version" >&6
++ uname_version="$libc_cv_uname_version"
++
++ config_uname=config-name.h:config-name.in
++else
++ # For non-generic uname, we don't need to create config-name.h at all.
++ config_uname=
++fi
++
++cat >>confdefs.h <<\_ACEOF
++@%:@define USE_IN_LIBIO 1
++_ACEOF
++
++
++# Test for old glibc 2.0.x headers so that they can be removed properly
++# Search only in includedir.
++echo "$as_me:$LINENO: checking for old glibc 2.0.x headers" >&5
++echo $ECHO_N "checking for old glibc 2.0.x headers... $ECHO_C" >&6
++if eval test -f "${includedir}/elfclass.h" -a -f "${includedir}/fcntlbits.h"
++then
++ old_glibc_headers=yes
++else
++ old_glibc_headers=no
++fi
++echo "$as_me:$LINENO: result: $old_glibc_headers" >&5
++echo "${ECHO_T}$old_glibc_headers" >&6
++if test ${old_glibc_headers} = yes; then
++ { echo "$as_me:$LINENO: WARNING: *** During \"make install\" old headers from glibc 2.0.x will" >&5
++echo "$as_me: WARNING: *** During \"make install\" old headers from glibc 2.0.x will" >&2;}
++ { echo "$as_me:$LINENO: WARNING: *** be removed." >&5
++echo "$as_me: WARNING: *** be removed." >&2;}
++fi
++
++
++
++
++
++
++
++
++
++
++
++
++if test $gnu_ld = yes; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_GNU_LD 1
++_ACEOF
++
++fi
++if test $gnu_as = yes; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_GNU_AS 1
++_ACEOF
++
++fi
++if test $elf = yes; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_ELF 1
++_ACEOF
++
++fi
++if test $xcoff = yes; then
++ cat >>confdefs.h <<\_ACEOF
++@%:@define HAVE_XCOFF 1
++_ACEOF
++
++fi
++
++
++
++if test $shared = default; then
++ if test $gnu_ld = yes; then
++ shared=$elf
++ else
++ # For now we do not assume shared libs are available. In future more
++ # tests might become available.
++ shared=no
++ fi
++fi
++
++echo "$as_me:$LINENO: checking whether -fPIC is default" >&5
++echo $ECHO_N "checking whether -fPIC is default... $ECHO_C" >&6
++if test "${pic_default+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ pic_default=yes
++cat > conftest.c <<EOF
++#if defined __PIC__ || defined __pic__ || defined PIC || defined pic
++# error PIC is default.
++#endif
++EOF
++if eval "${CC-cc} -S conftest.c 2>&5 1>&5"; then
++ pic_default=no
++fi
++rm -f conftest.*
++fi
++echo "$as_me:$LINENO: result: $pic_default" >&5
++echo "${ECHO_T}$pic_default" >&6
++
++
++
++
++
++
++
++
++
++
++case "$add_ons" in
++ *door*) linux_doors=yes ;;
++ *) linux_doors=no ;;
++esac
++
++
++
++
++if test "`(cd $srcdir; pwd)`" = "`pwd`"; then
++ config_makefile=
++else
++ config_makefile=Makefile
++fi
++
++VERSION=`sed -n -e 's/^#define VERSION "\([^"]*\)"/\1/p' < $srcdir/version.h`
++RELEASE=`sed -n -e 's/^#define RELEASE "\([^"]*\)"/\1/p' < $srcdir/version.h`
++
++
++
++ ac_config_files="$ac_config_files config.make glibcbug ${config_makefile} ${config_uname}"
++
++ ac_config_commands="$ac_config_commands default"
++
++cat >confcache <<\_ACEOF
++# This file is a shell script that caches the results of configure
++# tests run on this system so they can be shared between configure
++# scripts and configure runs, see configure's option --config-cache.
++# It is not useful on other systems. If it contains results you don't
++# want to keep, you may remove or edit it.
++#
++# config.status only pays attention to the cache file if you give it
++# the --recheck option to rerun configure.
++#
++# `ac_cv_env_foo' variables (set or unset) will be overridden when
++# loading this file, other *unset* `ac_cv_foo' will be assigned the
++# following values.
++
++_ACEOF
++
++# The following way of writing the cache mishandles newlines in values,
++# but we know of no workaround that is simple, portable, and efficient.
++# So, don't put newlines in cache variables' values.
++# Ultrix sh set writes to stderr and can't be redirected directly,
++# and sets the high bit in the cache file unless we assign to the vars.
++{
++ (set) 2>&1 |
++ case `(ac_space=' '; set | grep ac_space) 2>&1` in
++ *ac_space=\ *)
++ # `set' does not quote correctly, so add quotes (double-quote
++ # substitution turns \\\\ into \\, and sed turns \\ into \).
++ sed -n \
++ "s/'/'\\\\''/g;
++ s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
++ ;;
++ *)
++ # `set' quotes correctly as required by POSIX, so do not add quotes.
++ sed -n \
++ "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
++ ;;
++ esac;
++} |
++ sed '
++ t clear
++ : clear
++ s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
++ t end
++ /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
++ : end' >>confcache
++if diff $cache_file confcache >/dev/null 2>&1; then :; else
++ if test -w $cache_file; then
++ test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file"
++ cat confcache >$cache_file
++ else
++ echo "not updating unwritable cache $cache_file"
++ fi
++fi
++rm -f confcache
++
++test "x$prefix" = xNONE && prefix=$ac_default_prefix
++# Let make expand exec_prefix.
++test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
++
++# VPATH may cause trouble with some makes, so we remove $(srcdir),
++# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
++# trailing colons and then remove the whole line if VPATH becomes empty
++# (actually we leave an empty line to preserve line numbers).
++if test "x$srcdir" = x.; then
++ ac_vpsub='/^[ ]*VPATH[ ]*=/{
++s/:*\$(srcdir):*/:/;
++s/:*\${srcdir}:*/:/;
++s/:*@srcdir@:*/:/;
++s/^\([^=]*=[ ]*\):*/\1/;
++s/:*$//;
++s/^[^=]*=[ ]*$//;
++}'
++fi
++
++DEFS=-DHAVE_CONFIG_H
++
++ac_libobjs=
++ac_ltlibobjs=
++for ac_i in : $LIB@&t@OBJS; do test "x$ac_i" = x: && continue
++ # 1. Remove the extension, and $U if already installed.
++ ac_i=`echo "$ac_i" |
++ sed 's/\$U\././;s/\.o$//;s/\.obj$//'`
++ # 2. Add them.
++ ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext"
++ ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo'
++done
++LIB@&t@OBJS=$ac_libobjs
++
++LTLIBOBJS=$ac_ltlibobjs
++
++
++
++: ${CONFIG_STATUS=./config.status}
++ac_clean_files_save=$ac_clean_files
++ac_clean_files="$ac_clean_files $CONFIG_STATUS"
++{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
++echo "$as_me: creating $CONFIG_STATUS" >&6;}
++cat >$CONFIG_STATUS <<_ACEOF
++#! $SHELL
++# Generated by $as_me.
++# Run this file to recreate the current configuration.
++# Compiler output produced by configure, useful for debugging
++# configure, is in config.log if it exists.
++
++debug=false
++ac_cs_recheck=false
++ac_cs_silent=false
++SHELL=\${CONFIG_SHELL-$SHELL}
++_ACEOF
++
++cat >>$CONFIG_STATUS <<\_ACEOF
++## --------------------- ##
++## M4sh Initialization. ##
++## --------------------- ##
++
++# Be Bourne compatible
++if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
++ emulate sh
++ NULLCMD=:
++ # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
++ # is contrary to our usage. Disable this feature.
++ alias -g '${1+"$@"}'='"$@"'
++elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
++ set -o posix
++fi
++
++# Support unset when possible.
++if (FOO=FOO; unset FOO) >/dev/null 2>&1; then
++ as_unset=unset
++else
++ as_unset=false
++fi
++
++
++# Work around bugs in pre-3.0 UWIN ksh.
++$as_unset ENV MAIL MAILPATH
++PS1='$ '
++PS2='> '
++PS4='+ '
++
++# NLS nuisances.
++for as_var in \
++ LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
++ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
++ LC_TELEPHONE LC_TIME
++do
++ if (set +x; test -n "`(eval $as_var=C; export $as_var) 2>&1`"); then
++ eval $as_var=C; export $as_var
++ else
++ $as_unset $as_var
++ fi
++done
++
++# Required to use basename.
++if expr a : '\(a\)' >/dev/null 2>&1; then
++ as_expr=expr
++else
++ as_expr=false
++fi
++
++if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
++ as_basename=basename
++else
++ as_basename=false
++fi
++
++
++# Name of the executable.
++as_me=`$as_basename "$0" ||
++$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
++ X"$0" : 'X\(//\)$' \| \
++ X"$0" : 'X\(/\)$' \| \
++ . : '\(.\)' 2>/dev/null ||
++echo X/"$0" |
++ sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
++ /^X\/\(\/\/\)$/{ s//\1/; q; }
++ /^X\/\(\/\).*/{ s//\1/; q; }
++ s/.*/./; q'`
++
++
++# PATH needs CR, and LINENO needs CR and PATH.
++# Avoid depending upon Character Ranges.
++as_cr_letters='abcdefghijklmnopqrstuvwxyz'
++as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
++as_cr_Letters=$as_cr_letters$as_cr_LETTERS
++as_cr_digits='0123456789'
++as_cr_alnum=$as_cr_Letters$as_cr_digits
++
++# The user is always right.
++if test "${PATH_SEPARATOR+set}" != set; then
++ echo "#! /bin/sh" >conf$$.sh
++ echo "exit 0" >>conf$$.sh
++ chmod +x conf$$.sh
++ if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
++ PATH_SEPARATOR=';'
++ else
++ PATH_SEPARATOR=:
++ fi
++ rm -f conf$$.sh
++fi
++
++
++ as_lineno_1=$LINENO
++ as_lineno_2=$LINENO
++ as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
++ test "x$as_lineno_1" != "x$as_lineno_2" &&
++ test "x$as_lineno_3" = "x$as_lineno_2" || {
++ # Find who we are. Look in the path if we contain no path at all
++ # relative or not.
++ case $0 in
++ *[\\/]* ) as_myself=$0 ;;
++ *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
++done
++
++ ;;
++ esac
++ # We did not find ourselves, most probably we were run as `sh COMMAND'
++ # in which case we are not to be found in the path.
++ if test "x$as_myself" = x; then
++ as_myself=$0
++ fi
++ if test ! -f "$as_myself"; then
++ { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5
++echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;}
++ { (exit 1); exit 1; }; }
++ fi
++ case $CONFIG_SHELL in
++ '')
++ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for as_base in sh bash ksh sh5; do
++ case $as_dir in
++ /*)
++ if ("$as_dir/$as_base" -c '
++ as_lineno_1=$LINENO
++ as_lineno_2=$LINENO
++ as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
++ test "x$as_lineno_1" != "x$as_lineno_2" &&
++ test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then
++ $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; }
++ $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
++ CONFIG_SHELL=$as_dir/$as_base
++ export CONFIG_SHELL
++ exec "$CONFIG_SHELL" "$0" ${1+"$@"}
++ fi;;
++ esac
++ done
++done
++;;
++ esac
++
++ # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
++ # uniformly replaced by the line number. The first 'sed' inserts a
++ # line-number line before each line; the second 'sed' does the real
++ # work. The second script uses 'N' to pair each line-number line
++ # with the numbered line, and appends trailing '-' during
++ # substitution so that $LINENO is not a special case at line end.
++ # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
++ # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-)
++ sed '=' <$as_myself |
++ sed '
++ N
++ s,$,-,
++ : loop
++ s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
++ t loop
++ s,-$,,
++ s,^['$as_cr_digits']*\n,,
++ ' >$as_me.lineno &&
++ chmod +x $as_me.lineno ||
++ { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5
++echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;}
++ { (exit 1); exit 1; }; }
++
++ # Don't try to exec as it changes $[0], causing all sort of problems
++ # (the dirname of $[0] is not the place where we might find the
++ # original and so on. Autoconf is especially sensible to this).
++ . ./$as_me.lineno
++ # Exit status is that of the last command.
++ exit
++}
++
++
++case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
++ *c*,-n*) ECHO_N= ECHO_C='
++' ECHO_T=' ' ;;
++ *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;;
++ *) ECHO_N= ECHO_C='\c' ECHO_T= ;;
++esac
++
++if expr a : '\(a\)' >/dev/null 2>&1; then
++ as_expr=expr
++else
++ as_expr=false
++fi
++
++rm -f conf$$ conf$$.exe conf$$.file
++echo >conf$$.file
++if ln -s conf$$.file conf$$ 2>/dev/null; then
++ # We could just check for DJGPP; but this test a) works b) is more generic
++ # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
++ if test -f conf$$.exe; then
++ # Don't use ln at all; we don't have any links
++ as_ln_s='cp -p'
++ else
++ as_ln_s='ln -s'
++ fi
++elif ln conf$$.file conf$$ 2>/dev/null; then
++ as_ln_s=ln
++else
++ as_ln_s='cp -p'
++fi
++rm -f conf$$ conf$$.exe conf$$.file
++
++if mkdir -p . 2>/dev/null; then
++ as_mkdir_p=:
++else
++ as_mkdir_p=false
++fi
++
++as_executable_p="test -f"
++
++# Sed expression to map a string onto a valid CPP name.
++as_tr_cpp="sed y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g"
++
++# Sed expression to map a string onto a valid variable name.
++as_tr_sh="sed y%*+%pp%;s%[^_$as_cr_alnum]%_%g"
++
++
++# IFS
++# We need space, tab and new line, in precisely that order.
++as_nl='
++'
++IFS=" $as_nl"
++
++# CDPATH.
++$as_unset CDPATH
++
++exec 6>&1
++
++# Open the log real soon, to keep \$[0] and so on meaningful, and to
++# report actual input values of CONFIG_FILES etc. instead of their
++# values after options handling. Logging --version etc. is OK.
++exec 5>>config.log
++{
++ echo
++ sed 'h;s/./-/g;s/^.../@%:@@%:@ /;s/...$/ @%:@@%:@/;p;x;p;x' <<_ASBOX
++@%:@@%:@ Running $as_me. @%:@@%:@
++_ASBOX
++} >&5
++cat >&5 <<_CSEOF
++
++This file was extended by GNU C Library $as_me (see version.h), which was
++generated by GNU Autoconf 2.57. Invocation command line was
++
++ CONFIG_FILES = $CONFIG_FILES
++ CONFIG_HEADERS = $CONFIG_HEADERS
++ CONFIG_LINKS = $CONFIG_LINKS
++ CONFIG_COMMANDS = $CONFIG_COMMANDS
++ $ $0 $@
++
++_CSEOF
++echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5
++echo >&5
++_ACEOF
++
++# Files that config.status was made for.
++if test -n "$ac_config_files"; then
++ echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS
++fi
++
++if test -n "$ac_config_headers"; then
++ echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS
++fi
++
++if test -n "$ac_config_links"; then
++ echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS
++fi
++
++if test -n "$ac_config_commands"; then
++ echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS
++fi
++
++cat >>$CONFIG_STATUS <<\_ACEOF
++
++ac_cs_usage="\
++\`$as_me' instantiates files from templates according to the
++current configuration.
++
++Usage: $0 [OPTIONS] [FILE]...
++
++ -h, --help print this help, then exit
++ -V, --version print version number, then exit
++ -q, --quiet do not print progress messages