summaryrefslogtreecommitdiff
path: root/libc/posix
Commit message (Collapse)AuthorAgeFilesLines
* Merge changes between r7922 and r8107 from /fsf/trunk.joseph2009-03-159-33/+76
| | | | git-svn-id: svn://svn.eglibc.org/trunk@8108 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Add missing definitions and correct typos in last merge.joseph2009-02-132-1/+10
| | | | git-svn-id: svn://svn.eglibc.org/trunk@7924 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Merge changes between r7867 and r7922 from /fsf/trunk.joseph2009-02-136-36/+346
| | | | git-svn-id: svn://svn.eglibc.org/trunk@7923 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Cross-getconf.maxim2009-01-224-64/+193
| | | | | | | | | | | | | * posix/confstr.c (confstr): Move code for case _CS_V6_WIDTH_RESTRICTED_ENVS to ... * posix/confstr.inc: New file. * posix/cross-getconf.c: New utility to mimic getconf for the purposes of cross-compiling EGLIBC. * posix/Makefile: Build cross-getconf and use it when cross-building EGLIBC. git-svn-id: svn://svn.eglibc.org/trunk@7777 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Merge changes between r7510 and r7756 from /fsf/trunk.joseph2009-01-197-51/+97
| | | | git-svn-id: svn://svn.eglibc.org/trunk@7757 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* * posix/xregex.c: Handle absence of wide char support.maxim2008-12-241-3/+3
| | | | git-svn-id: svn://svn.eglibc.org/trunk@7600 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Merge changes between r7357 and r7510 from /fsf/trunk.joseph2008-12-102-8/+6
| | | | git-svn-id: svn://svn.eglibc.org/trunk@7511 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Support smaller regex implementation.maxim2008-12-095-30/+8292
| | | | | | | | | | | | | | | | * option-groups.def (OPTION_POSIX_REGEXP_GLIBC): New option group. * option-groups.defaults (OPTION_POSIX_REGEXP_GLIBC): Set default. * posix/regexec.c: Move a piece of code to ... * posix/regexec-compat.c: New file. * posix/Makefile (tests): Same for runptests, bug-regex11, bug-regex13, bug-regex16, tst-regex2, tst-rxspencer, tst-pcre, tst-boost, tst-regex, bug-regex17, bug-regex18, bug-regex19, bug-regex20, bug-regex22, bug-regex14-mem, tst-rxspence-mem, tst-pcre-mem and tst-boost-mem. * posix/xregex.c: New file ported from libiberty. git-svn-id: svn://svn.eglibc.org/trunk@7504 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Merge changes between r7165 and r7310 from /fsf/trunk.joseph2008-11-112-4/+4
| | | | git-svn-id: svn://svn.eglibc.org/trunk@7311 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* libc:joseph2008-09-261-3/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * aclocal.m4 (ACX_PKGVERSION, ACX_BUGURL): Define. * configure.in: Use ACX_PKGVERSION and ACX_BUGURL. * configure: Regenerate. * config.h.in (PKGVERSION, REPORT_BUGS_TO): Undefine. * config.make.in (PKGVERSION, REPORT_BUGS_TO): Define. * catgets/gencat.c (more_help): Use REPORT_BUGS_TO. (print_version): Use PKGVERSION. * csu/version.c (banner): Use PKGVERSION and REPORT_BUGS_TO. * debug/Makefile ($(objpfx)catchsegv, $(objpfx)xtrace): Also substitute PKGVERSION and REPORT_BUGS_TO. * debug/catchsegv.sh: Use PKGVERSION and REPORT_BUGS_TO. * debug/pcprofiledump.c (print_version, argp_program_version_hook): New. (more_help): Use REPORT_BUGS_TO. * debug/xtrace.sh: Use PKGVERSION and REPORT_BUGS_TO. * elf/Makefile (common-ldd-rewrite): Also substitute PKGVERSION and REPORT_BUGS_TO. * elf/dl-close.c (_dl_close_worker): Use REPORT_BUGS_TO. * elf/ldconfig.c (doc): Use REPORT_BUGS_TO. (print_version): Use PKGVERSION. * elf/ldd.bash.in: Use PKGVERSION and REPORT_BUGS_TO. * elf/sln.c (usage): New. (main): Support --help and --version. * elf/sprof.c (doc): Use REPORT_BUGS_TO. (print_version): Use PKGVERSION. * iconv/iconv_prog.c (more_help): Use REPORT_BUGS_TO. (print_version): Use PKGVERSION. * iconv/iconvconfig.c (more_help): Use REPORT_BUGS_TO. (print_version): Use PKGVERSION. * locale/programs/locale.c (doc): Use REPORT_BUGS_TO. (print_version): Use PKGVERSION. * locale/programs/localedef.c (more_help): Use REPORT_BUGS_TO. (print_version): Use PKGVERSION. * login/programs/pt_chown.c * malloc/Makefile ($(objpfx)mtrace, $(objpfx)memusage): Also substitute PKGVERSION and REPORT_BUGS_TO. * malloc/memusage.sh: Use PKGVERSION and REPORT_BUGS_TO. * malloc/memusagestat.c (print_version, argp_program_version_hook): New. (more_help): Use REPORT_BUGS_TO. * malloc/mtrace.pl: Use PKGVERSION and REPORT_BUGS_TO. * manual/Makefile (libc.dvi, libc.pdf, libc.info, libc/index.html): Depend on pkgvers.texi. (pkgvers.texi, stamp-pkgvers): New. * manual/install.texi: Adjust bug database description. Use REPORT_BUGS_TO. * manual/libc.texinfo: Include pkgvers.texi. Use PKGVERSION. * nscd/nscd.c (doc): Use REPORT_BUGS_TO. (print_version): Use PKGVERSION. * nss/getent.c (doc): Use REPORT_BUGS_TO. (print_version): Use PKGVERSION. * nss/makedb.c (more_help): Use REPORT_BUGS_TO. (print_version): Use PKGVERSION. * posix/getconf.c (main): Send --version output to stdout. Use PKGVERSION. Support --help. * sunrpc/proto.h (REPORT_BUGS_TO, PKGVERSION): Define for cross-rpcgen. * sunrpc/rpc_main.c (usage, options_usage): Take STREAM and STATUS arguments. All callers changed. Use REPORT_BUGS_TO (print_version): New. (parseargs): Support --help and --version. * sunrpc/rpcinfo.c (usage): Take STREAM argument. All callers changed. Use REPORT_BUGS_TO. (print_version): New. (main): Use getopt_long. Support --help and --version. * sysdeps/unix/sysv/linux/lddlibc4.c (main): Support --help and --version. * timezone/Makefile: Use -DCROSS_ZIC for cross-zic. ($(objpfx)tzselect): Also substitute PKGVERSION and REPORT_BUGS_TO. * timezone/tzselect.ksh: Support --help and --version. * timezone/zdump.c (usage): New. (main): Use it. Support --help. Print program name and PKGVERSION in --version output. * timezone/zic.c (usage): Take STREAM and STATUS arguments. All callers changed. Use REPORT_BUGS_TO. (main): Support --help. Print program name and PKGVERSION in --version output. localedef: * configure.ac: Support --with-pkgversion and --with-bugurl. * configure, config.h.in: Regenerate. git-svn-id: svn://svn.eglibc.org/trunk@7026 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Merge changes between r6509 and r6780 from /fsf/trunk.joseph2008-08-192-13/+59
| | | | git-svn-id: svn://svn.eglibc.org/trunk@6785 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Merge changes between r6403 and r6509 from /fsf/trunk.joseph2008-07-071-10/+10
| | | | git-svn-id: svn://svn.eglibc.org/trunk@6510 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Merge changes between r6192 and r6403 from /fsf/trunk.joseph2008-06-201-3/+2
| | | | git-svn-id: svn://svn.eglibc.org/trunk@6404 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* * posix/globtest.sh: Set HOME with env on test target system.joseph2008-05-151-2/+3
| | | | git-svn-id: svn://svn.eglibc.org/trunk@6179 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Merge changes between r6154 and r6177 from /fsf/trunk.joseph2008-05-155-31/+56
| | | | git-svn-id: svn://svn.eglibc.org/trunk@6178 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Merge changes between r5678 and r5759 from /fsf/trunk.joseph2008-04-021-19/+5
| | | | git-svn-id: svn://svn.eglibc.org/trunk@5760 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Merge changes between r5247 and r5678 from /fsf/trunk.joseph2008-03-272-34/+33
| | | | git-svn-id: svn://svn.eglibc.org/trunk@5679 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Merge changes between r4014 and r5247 from /fsf/trunk.joseph2008-02-209-78/+281
| | | | git-svn-id: svn://svn.eglibc.org/trunk@5248 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* 2007-12-13 Jim Blandy <jimb@codesourcery.com>sandra2007-12-131-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sandra Loosemore <sandra@codesourcery.com> Implement the OPTION_POSIX_C_LANG_WIDE_CHAR option group. * option-groups.def (OPTION_POSIX_C_LANG_WIDE_CHAR): New entry. (OPTION_EGLIBC_LOCALE_CODE, OPTION_POSIX_WIDE_CHAR_DEVICE_IO): Note dependence on OPTION_POSIX_C_LANG_WIDE_CHAR. (OPTION_POSIX_WIDE_CHAR_DEVICE_IO): Doc fix; note effect on support for 'ccs=CHARSET' strings in fopen and friends. * option-groups.mak (option-disabled): New function. * scripts/option-groups.awk: Generate preprocessor conditionals to protect gnu/option-groups.h from multiple #inclusion. * stdlib/Makefile (routines): Put in group: mblen mbstowcs mbtowc wcstombs wctomb wcstoimax wcstoumax. (tests): Put in group: testmb. * debug/Makefile (routines): Put in group: wctomb_chk wcscpy_chk wmemcpy_chk wmemmove_chk wmempcpy_chk wcpcpy_chk wcsncpy_chk wcscat_chk wcsncat_chk wmemset_chk wcpncpy_chk swprintf_chk vswprintf_chk wcrtomb_chk mbsnrtowcs_chk wcsnrtombs_chk mbsrtowcs_chk wcsrtombs_chk mbstowcs_chk wcstombs_chk. * debug/tst-chk1.c (do_test): Make wide character parts conditional on __OPTION_POSIX_WIDE_CHAR_DEVICE_IO. * wcsmbs/Makefile (routines): Put in group: wcscat wcschr wcscmp wcscpy wcscspn wcsdup wcslen wcsncat wcsncmp wcsncpy wcspbrk wcsrchr wcsspn wcstok wcsstr wmemchr wmemcmp wmemmove wcpcpy wcpncpy wmempcpy btowc wctob mbsinit mbrlen mbrtowc wcrtomb mbsrtowcs wcsrtombs mbsnrtowcs wcsnrtombs wcsnlen wcschrnul wcstol wcstoul wcstoll wcstoull wcstod wcstold wcstof wcstol_l wcstoul_l wcstoll_l wcstoull_l wcstod_l wcstold_l wcstof_l wcscoll wcsxfrm wcwidth wcswidth wcscoll_l wcsxfrm_l wcscasecmp wcsncase wcscasecmp_l wcsncase_l wcsmbsload mbsrtowcs_l isoc99_swscanf isoc99_vswscanf. (tests): Put in group: tst-wcstof wcsmbs-tst1 tst-wcsnlen tst-wcpncpy tst-mbsrtowcs wcsatcliff. * time/Makefile (routines): Put in group: wcsftime wcsftime_l * libio/Makefile (routines): When group is disabled, add wdummyfileops. Put in group: wfiledoalloc iowpadn swprintf vswprintf iovswscanf swscanf wgenops wstrops wfileops wmemstream. (tests): Put in group: tst_swprintf tst_swscanf tst-sscanf tst-wmemstream1 tst-wmemstream2. * libio/wdummyfileops.c: New file. Provide a dummy definition for the _IO_FILE functions that prints an error message and dies. * libio/libioP.h: #include <gnu/option-groups.h>. (_IO_is_wide): New macro. Used as necessary to excise references to wide character code. * libio/iosetbuffer.c (_IO_setbuffer): Don't call _IO_WSETBUF if wide characters are not supported. * libio/ioseekoff.c (_IO_seekoff_unlocked): Use _IO_is_wide. * libio/iofwide.c: #include <gnu/option-groups.h>. (_IO_fwide): When the group is disabled, provide a simplified definition that aborts if the caller attempts to make a stream wide-oriented. * libio/fileops.c (_IO_new_file_close_it): Use _IO_is_wide. (_IO_new_file_fopen): Conditionalize for __OPTION_POSIX_WIDE_CHAR_DEVICE_IO. * libio/ioseekpos.c (_IO_seekpos_unlocked): Use _IO_is_wide. * libio/__fpurge.c (__fpurge): Likewise. * wctype/Makefile (routines): Put in group: wcfuncs wctype iswctype wcfuncs_l wctype_l iswctype_l wctrans_l. (tests): Put in group: test_wctype test_wcfuncs. * posix/fnmatch_loop.c (FCT) (either internal_fnmatch or internal_fnwmatch): Handle character categories accessed via 'wctype' only if the group is enabled. * stdio-common/Makefile (routines): Put in group: vfwprintf vfwscanf printf-parsewc. (tests): Put in group: bug18a tst-swscanf tst-wc-printf. * stdio-common/printf_fp.c (__printf_fp): When the group is disabled, fix 'wide' at zero. * stdio-common/printf_fphex.c (__printf_fphex): Same. * stdio-common/printf_size.c (__printf_size): Same. * stdio-common/vfprintf.c (MULTIBYTE_SUPPORT): New macro. (process_string_arg): If the format contains wide characters or strings, assert that we have multibyte support. * stdio-common/vfscanf.c (MULTIBYTE_SUPPORT): New macro. (_IO_vfscanf_internal): If we see wide string or character format directives, assert that we have multibyte support. * stdio-common/scanf14.c (main): Make conditional on __OPTION_EGLIBC_LOCALE_CODE. * stdio-common/tst-sprintf.c (main): Make wide character test conditional on __OPTION_POSIX_C_LANG_WIDE_CHAR. * stdio-common/tstdiomisc.c (F): Likewise. git-svn-id: svn://svn.eglibc.org/trunk@4526 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Clean up test results with OPTION_EGLIBC_LOCALE_CODE disabled.jimb2007-12-118-91/+166
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * debug/tst-chk1.c: Omit locale tests when group is disabled. * intl/Makefile (tests): Put tst-translit, tst-gettext2, tst-codeset, and tst-gettext3 in the group. * libio/Makefile (tests): Put tst-fgetws, tst-fopenloc, tst-setvbuf1, tst-ungetwc1, tst-ungetwc2, bug-ftell, bug-ungetwc2, tst-widetext, and tst-fopenloc in the group; some were formerly in OPTION_POSIX_WIDE_CHAR_DEVICE_IO. * nptl/Makefile (tests): Put tst-locale1 in the group. * posix/Makefile (tests): Put bug-regex17, bug-regex18, bug-regex20, bug-regex23, and bug-regex26 in the group. (tst-rxspencer): Pass --utf8 only when the group is enabled. * posix/bug-regex6.c: Omit non-C locale tests when group is disabled. * stdio-common/Makefile (tests): Put bug14 and scanf13 in the group. * stdlib/Makefile (tests): Put tst-strtod4, tst-strtod5, and testmb2 in the group. * stdlib/tst-strtod.c: Omit locale tests when group is disabled. * string/tst-strxfrm.c, string/tst-strxfrm2.c: Same. * time/Makefile (tests): Put tst-ftime_l in the group. Fix code broken by OPTION_EGLIBC_LOCALE_CODE. * posix/regex_internal.h: #include <gnu/option-groups.h>. (string_mb_cur_max, dfa_mb_cur_max): New macros for accessing the 'mb_cur_max' fields of re_string_t and re_dfa_t, whose values can be constant when the group is disabled. Use them throughout. * posix/regex_internal.c: Use string_mb_cur_max and dfa_mb_cur_max as appropriate. * posix/regcomp.c: Same. (re_compile_fastmap_iter): Process COMPLEX_BRACKET nodes only when the group is enabled. (init_dfa): When the group is disabled, clear map_notascii. (parse_bracket_exp): Process MB_CHAR elements only when the group is enabled. Otherwise, fix 'nrules' at zero, for the compiler's benefit, and assume the collation sequence is the identity. (parse_bracket_element): Create MB_CHAR elements only when the group is enabled. (build_equiv_class): When the group is disabled, we know there will be no collation rules. (build_charclass): When the group is disabled, do not try to process references to wide character categories accessed via 'wctype'. * posix/regexec.c: Use string_mb_cur_max and dfa_mb_cur_max as appropriate. (find_collation_sequence_value): Define function only when the group is enabled. (check_node_accept_bytes): Check character against 'wctype' style classes only if group is enabled. When the group is disabled, Skip collation-rule-based matching. * posix/fnmatch.c: #include <gnu/option-groups.h>. Define HANDLE_MULTIBYTE only if when OPTION_EGLIBC_LOCALE_CODE is enabled. * posix/fnmatch_loop.c (FCT (internal_fnmatch or internal_fnwmatch)): If the group is disabled, assume that the collation sequence is the identity. * stdio-common/_i18n_number.h (_i18n_number_rewrite): Provide only a trivial definition when the group is disabled. * stdio-common/vfprintf.c: #include <gnu/option-groups.h>. (LOCALE_SUPPORT): Define. (vfprintf): Consult it as appropriate. * stdio-common/vfscanf.c: #include <gnu/option-groups.h>. (_IO_vfwscanf): If the group is disabled, don't try to consult the locale for decimal point and thousands separator characters, or for custom digits. * stdlib/strtod_l.c (__STRTOF_INTERNAL): Don't try to consult the locale's numeric settings. * string/strxfrm_l.c, string/strcoll_l.c: Don't try to consult the locale's collation settings. git-svn-id: svn://svn.eglibc.org/trunk@4501 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* * Makeconfig ($(common-objpfx)gnu/option-groups.h): New generatedjimb2007-10-303-10/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | header. * scripts/option-groups.awk: New script, to generate it. * debug/Makefile (CFLAGS-segfault.c): Don't define option group symbols here. * wcsmbs/Makefile (CFLAGS-wcsmbsload.c): Same. * time/Makefile (CFLAGS-strftime_l.c, CFLAGS-strptime_l.c): Same. * intl/Makefile (CFLAGS-dcigettext.c): Same. * sysdeps/unix/sysv/linux/Makefile (CFLAGS-gethostid.c) (CFLAGS-libc_fatal.c): Same. * misc/Makefile (CFLAGS-error.c, CFLAGS-err.c): Same. * nss/Makefile (CFLAGS-nsswitch.c, CFLAGS-getnssent_r.c) (CFLAGS-getent.c): Same. * string/Makefile (CFLAGS-strerror_l.c): Same. * iconv/Makefile (CFLAGS-gconv_db.c, CFLAGS-gconv_trans.c) (CFLAGS-iconv_prog.c): Same. * locale/Makefile (CFLAGS-C-ctype.c, CFLAGS-xlocale.c) (CFLAGS-ld-messages.c): Same. * argp/Makefile (CFLAGS-argp-help.c, CFLAGS-argp-fmtstream.c): Same. * nptl/Makefile (CFLAGS-pthread_create.c): Same. * posix/Makefile (CFLAGS-glob.c, CFLAGS-bug-regex1.c): Same. * stdio-common/Makefile (CFLAGS-printf_fp.c) (CFLAGS-printf_fphex.c, CFLAGS-fxprintf.c, CFLAGS-tst-popen.c): Same. * libidn/Makefile (CFLAGS-toutf8.c): Same. * debug/segfault.c, wcsmbs/wcsmbsload.c, time/strftime_l.c: * time/strptime_l.c, intl/dcigettext.c: * sysdeps/unix/sysv/linux/libc_fatal.c: * sysdeps/unix/sysv/linux/gethostid.c, misc/err.c, misc/error.c: * nss/getnssent_r.c, nss/nsswitch.c, nss/getent.c: * string/strerror_l.c, iconv/gconv_db.c, iconv/iconv_prog.c: * iconv/gconv_trans.c, locale/xlocale.c, locale/C-ctype.c: * locale/programs/ld-messages.c, argp/argp-help.c: * argp/argp-fmtstream.c, nptl/pthread_create.c, posix/glob.c: * posix/bug-regex1.c, stdio-common/printf_fp.c: * stdio-common/printf_fphex.c, stdio-common/tst-popen.c: * stdio-common/fxprintf.c, libidn/toutf8.c: #include <gnu/option-groups.h>, and test for the symbols that #defines, instead. git-svn-id: svn://svn.eglibc.org/trunk@4026 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* * nss/gen-fixed-nsswitch.c: Don't #include "nsswitch.h". Instead,jimb2007-10-291-0/+1
| | | | | | | | | | | | | | | | make our own copies of the datatype and enum definitions. Do #include "nss.h". (lookup_actions, service_library, known_function, service_user) (name_database_entry, name_database): Copy definitions from nsswitch.c. * grp/Makefile (LDLIBS-testgrp): Link against the libraries listed in nss/fixed-nsswitch-libs when OPTION_EGLIBC_NSSWITCH is disabled. * posix/Makefile (LDLIBS-globtest): Same. * option-groups.def (OPTION_EGLIBC_NSSWITCH): Doc fix. git-svn-id: svn://svn.eglibc.org/trunk@4013 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Implement the OPTION_EGLIBC_CXX_TESTS option group.jimb2007-10-162-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * option-groups.def (OPTION_EGLIBC_CXX_TESTS): New entry. * option-groups.defaults (OPTION_EGLIBC_CXX_TESTS): Initialize. * debug/Makefile (tests): Put tst-chk4, tst-chk5, tst-chk6, tst-lfschk4, tst-lfschk5, and tst-lfschk6 in the group. * dlfcn/Makefile: Include option-groups.mak. (tests): Put bug-atexit3 in the group. * nptl/Makefile (tests): Put tst-cancel24 in the group. Implement the OPTION_POSIX_WIDE_CHAR_DEVICE_IO option group. * option-groups.def (OPTION_POSIX_WIDE_CHAR_DEVICE_IO): New entry. * option-groups.defaults (OPTION_POSIX_WIDE_CHAR_DEVICE_IO): Initialize. * argp/Makefile (CFLAGS-argp-help.c, CFLAGS-argp-fmtstream.c): Define OPTION_POSIX_WIDE_CHAR_DEVICE_IO as appropriate. * argp/argp-help.c (__argp_failure): Support the wide character case only if OPTION_POSIX_WIDE_CHAR_DEVICE_IO is #defined. * argp/argp-fmtstream.c (__argp_fmtstream_update): Same. * debug/Makefile (routines): Put wprintf_chk, fwprintf_chk, vwprintf_chk, vfwprintf_chk, fgetws_chk, and fgetws_u_chk in the group. * libio/Makefile: Include ../option-groups.mak. (routines): Put in the group: fputwc, fputwc_u, getwc, getwc_u, getwchar, getwchar_u, iofgetws, iofgetws_u, iofputws, iofputws_u, iogetwline, ioungetwc, putwc, putwc_u, putwchar, putwchar_u, fwprintf, swprintf, vwprintf, wprintf, wscanf, fwscanf, vwscanf, and fwide. (tests): Put in the group: bug-ftell, bug-rewind, bug-rewind2, bug-ungetwc1, bug-ungetwc2, bug-wfflush, bug-wmemstream1, tst-fgetws, tst-fopenloc, tst-fopenloc2, tst-setvbuf1, tst-ungetwc1, tst-ungetwc2, tst-widetext, tst_getwc, tst_putwc, tst_wprintf, tst_wprintf2, tst_wscanf, and test-freopen. * localedata/Makefile (tests): Put tst-wctype in the group. * misc/Makefile (CFLAGS-error.c, CFLAGS-err.c): Define OPTION_POSIX_WIDE_CHAR_DEVICE_IO as appropriate. (tests): Put tst-error1 in the group. * misc/err.c (convert_and_print): Define only if OPTION_POSIX_WIDE_CHAR_DEVICE_IO is #defined. (vwarnx, vwarn): Support the wide character case only if OPTION_POSIX_WIDE_CHAR_DEVICE_IO is #defined. * misc/error.c (error_tail): Same. * posix/Makefile (CFLAGS-bug-regex1.c): Define OPTION_POSIX_WIDE_CHAR_DEVICE_IO as appropriate. * posix/bug-regex1.c (main): Call fwide only if the group is enabled. * stdio-common/Makefile: (routines): Put vfwprintf and vfwscanf in the group. (tests): Put tst-perror and bug19a in the group. (CFLAGS-fxprintf.c, CFLAGS-tst-popen.c): Define OPTION_POSIX_WIDE_CHAR_DEVICE_IO as appropriate. * stdio-common/fxprintf.c (__fxprintf): Support the wide character case only if OPTION_POSIX_WIDE_CHAR_DEVICE_IO is #defined. * stdio-common/tst-perror.c (main): Test wide character case only if group is enabled. * stdio-common/tst-popen.c (main): Check the stream's orientation only if the group is enabled. * time/Makefile (tests): Put tst_wcsftime in the group. * wcsmbs/Makefile (routines): Put isoc99_wscanf, isoc99_vwscanf, isoc99_fwscanf, isoc99_vfwscanf, isoc99_swscanf, and isoc99_vswscanf in the group. git-svn-id: svn://svn.eglibc.org/trunk@3830 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Merge changes between r3777 and r3809 from /fsf/trunk.jimb2007-10-156-24/+67
| | | | git-svn-id: svn://svn.eglibc.org/trunk@3819 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Merge changes between r3614 and r3746 from /fsf/trunk.joseph2007-10-083-47/+201
| | | | git-svn-id: svn://svn.eglibc.org/trunk@3747 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Merge changes between r3467 and r3614 from /fsf/trunk.joseph2007-09-252-3/+4
| | | | git-svn-id: svn://svn.eglibc.org/trunk@3615 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Merge changes between r2424 and r3467 from /fsf/trunk.joseph2007-09-1215-1036/+5380
| | | | git-svn-id: svn://svn.eglibc.org/trunk@3468 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Implement the OPTION_EGLIBC_BSD option group.jimb2007-08-241-1/+1
| | | | | | | | | | | | | * option-groups.def (OPTION_EGLIBC_BSD): New entry. * option-groups.defaults (OPTION_EGLIBC_BSD): Initialize. * misc/Makefile (routines): Put revoke, chflags, and fchflags in the group. * posix/Makefile (routines): Put setlogin in the group. * io/Makefile: include ../option-groups.mak. (routines) Put lchmod in the group. git-svn-id: svn://svn.eglibc.org/trunk@3252 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Implement the OPTION_EGLIBC_WORDEXP option group.jimb2007-08-211-3/+7
| | | | | | | | | | * option-groups.def (OPTION_EGLIBC_WORDEXP): New entry. * option-groups.defaults (OPTION_EGLIBC_WORDEXP): Initialize. * posixf/Makefile (routines): Put wordexp in the group. (tests): Put wordexp-test and wordexp-tst.out in the option group. git-svn-id: svn://svn.eglibc.org/trunk@3229 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Implement the OPTION_EGLIBC_UTMP, OPTION_EGLIBC_UTMPX, andjimb2007-08-182-10/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | OPTION_EGLIBC_GETLOGIN option groups. * option-groups.def (OPTION_EGLIBC_UTMP, OPTION_EGLIBC_UTMPX) (OPTION_EGLIBC_GETLOGIN): New entry. * option-groups.defaults (OPTION_EGLIBC_UTMP, OPTION_EGLIBC_UTMPX) (OPTION_EGLIBC_GETLOGIN): Initialize. * Makerules (sysdep_routines): Include value of sysdep_routines-y. * debug/Makefile: Include option-groups.mak. (routines): Put getlogin_r_chk in the OPTION_EGLIBC_GETLOGIN group. * sysdeps/gnu/Makefile (sysdep_routines): For the login subdirectory, put setutxent, getutxent, endutxent, getutxid, getutxline, pututxline, utmpxname, updwtmpx, getutmpx, and getutmp in the OPTION_EGLIBC_UTMPX group. * login/Makefile: Include option-groups.mak. (routines): Put getutent, getutent_r, getutid, getutline, getutid_r, getutline_r, utmp_file, utmpname, and updwtmp in the OPTION_EGLIBC_UTMP option group. (others): Put utmpdump in the OPTION_EGLIBC_UTMP group. (extra-libs): Put libutil in the OPTION_EGLIBC_UTMP group. (extra-libs-others): Initialize from $(extra-libs-y). * posix/glob.c (glob): If OPTION_EGLIBC_GETLOGIN is not defined, don't try to call getlogin to find the username to use for tilde expansion. * posix/Makefile (routines): Put getlogin and getlogin_r in the OPTION_EGLIBC_GETLOGIN group. (CFLAGS-glob.c): Define OPTION_EGLIBC_GETLOGIN as appropriate. git-svn-id: svn://svn.eglibc.org/trunk@3185 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Implement the OPTION_EGLIBC_SPAWN option group.jimb2007-08-181-7/+9
| | | | | | | | | | | | | | * option-groups.def (OPTION_EGLIBC_SPAWN): New entry. * option-groups.defaults (OPTION_EGLIBC_SPAWN): Initialize. * posix/Makefile (routines): Move spawn routines into group. (tests): Move tst-spawn into group. * iconv/Makefile (CPPFLAGS-charmap-dir.c): Pass NO_UNCOMPRESS if spawn is not available. * locale/Makefile (CFLAGS-charmap-dir.c): Same. * nptl/Makefile (tst-exec1): Put in group. git-svn-id: svn://svn.eglibc.org/trunk@3184 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Add the OPTION_POSIX_REGEXP option group.jimb2007-06-141-1/+2
| | | | | | | | | | | | | | | | | * option-groups.def (OPTION_POSIX_REGEXP): New entry. * option-groups.defaults (OPTION_POSIX_REGEXP): Initialize. * posix/Makefile: Include ../option-groups.mak. (routines): Move 'regex' into the group. * stdlib/Makefile: Put rpmatch in both the OPTION_POSIX_REGEXP and OPTION_EGLIBC_LOCALE_CODE groups. * misc/Makefile: Put regexp in the group. * locale/Makefile (CFLAGS-ld-messages.c): Define OPTION_POSIX_REGEXP as appropriate. * locale/programs/ld-messages.c: Don't check the syntax of 'yes' and 'no' regular expressions if the group isn't enabled. git-svn-id: svn://svn.eglibc.org/trunk@2508 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Add the OPTION_EGLIBC_LOCALE_CODE option group.jimb2007-05-291-6/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * option-groups.def (OPTION_EGLIBC_LOCALE_CODE): New entry. * option-groups.defaults (OPTION_EGLIBC_LOCALE_CODE): Initialize. * Makerules (test-srcs): Add in value of test-srcs-y. (static-only-routines): Add in value of static-only-routines-y. * stdlib/Makefile: Include ../option-groups.mak. (routines): Move rpmatch, strfmon, and strfmon_l into the group. (tests): Move tst-strtod3 into the group. * wcsmbs/Makefile: Include ../option-groups.mak. (tests): Move tst-btowc, tst-mbrtowc, tst-mbrtowc2, and tst-wcrtomb into the option group. (CFLAGS-wcsmbsload.c): Define OPTION_EGLIBC_LOCALE_CODE as appropriate. * wcsmbs/wcsmbsload.c (__wcsmbs_load_conv): If the group is not enabled, simply abort. * time/Makefile: Include ../option-groups.mak. (aux): Move alt_digit, era, and lc-time-cleanup into the group. (tests): Move tst-strptime into the group. (CFLAGS-strftime_l.c, CFLAGS-strptime_l.c): Define OPTION_EGLIBC_LOCALE_CODE as appropriate. * time/strftime_l.c, time/strptime_l.c: Support eras and custom digits only when the group is enabled. * libio/Makefile (tests): Move tst-swscanf into the group. * intl/Makefile (CFLAGS-dcigettext.c): Define OPTION_EGLIBC_LOCALE_CODE as appropriate. * intl/dcigettext.c (DCIGETTEXT): If the group is not enabled, assume the "C" locale. * string/Makefile: Include ../option-groups.mak. (tests): Move tst-strxfrm and bug-strcoll1 into the option group. (CFLAGS-strerror_l.c): Define OPTION_EGLIBC_LOCALE_CODE as appropriate. * string/strerror_l.c (translate): Don't translate unless the group is enabled. * iconv/Makefile: Include ../option-groups.mak. (CFLAGS-gconv_db.c, CFLAGS-iconv_prog.c): Define OPTION_EGLIBC_LOCALE_CODE as appropriate. * iconv/gconv_db.c (libc_freeres_fn): If group is disabled, no need to free locale memory first. * iconv/iconv_prog.c (main): If the group is disabled, the default codeset is always ASCII. * locale/Makefile: Include ../option-groups.mak. (distribute): Mention new dummy-setlocale.c. (routines): Include mb_cur_max and the new catnames unconditionally; put setlocale, findlocale, loadlocale, loadarchive, localeconv, nl_langinfo, nl_langinfo_l, newlocale, duplocale, freelocale, and uselocale in the group. If the group is disabled, use dummy-setlocale. (tests): Put tst-C-locale in the group. (aux): Move all C categories other than C-ctype and C-time into the group, along with all the load-locale routines, and localename. (others, install-bin, extra-objs): Put localedef and locale in the group. (extra-libs, extra-libs-other): Put libBrokenLocale in the group. (CFLAGS-xlocale.c): Define OPTION_EGLIBC_LOCALE_CODE as appropriate. * locale/xlocale.c: If the group is disabled, make the references here to the omitted category data weak. Furthermore, in the NL_CURRENT_INDIRECT case, define the _nl_current_##CATEGORY variables here. * locale/setlocale.c (_nl_category_names, _nl_category_name_idxs) (_nl_category_name_sizes): Move these from here... * locale/catnames.c: ... to here. New file. * locale/dummy-setlocale.c: New file. * intl/Makefile: Include ../option-groups.mak. (tests): Move tst-translit, tst-gettext2, tst-codeset, tst-gettext3, tst-gettext4, tst-gettext5, and mtrace-tst-gettext into the OPTION_EGLIBC_LOCALES option group. * localedata/Makefile (tests): Move all tests into the OPTION_EGLIBC_LOCALES group. * posix/Makefile (tests): Move tst-fnmatch, tst-regex, tst-regexloc, bug-regex1, bug-regex5, bug-regex19, bug-regex22, and bug-regex25 into the group. * stdio-common/Makefile: Include ../option-groups.mak. (tests): Move tst-sscanf, tst-swprintf, bug15, and test-vfprintf into the option group. (CFLAGS-printf_fp.c, CFLAGS-printf_fphex.c): Define OPTION_EGLIBC_LOCALE_CODE as appropriate. * stdio-common/printf_fp.c (__printf_fp): Hard-code values from the 'C' locale. * stdio-common/printf_fphex.c (__printf_fphex): Same. * libidn/Makefile: Include ../option-groups.mak. (CFLAGS-toutf8.c): Define OPTION_EGLIBC_LOCALE_CODE as appropriate. * libidn/toutf8.c (stringprep_locale_charset): If the group is disabled, assume ASCII. git-svn-id: svn://svn.eglibc.org/trunk@2333 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Merge changes between r2162 and r2243 from /fsf/trunk.joseph2007-05-161-1/+1
| | | | git-svn-id: svn://svn.eglibc.org/trunk@2244 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Add the OPTION_EGLIBC_INET option group.jimb2007-05-141-8/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * option-groups.def (OPTION_EGLIBC_INET): New entry. * option-groups.defaults (OPTION_EGLIBC_INET): Initialize. * option-groups.mak: Add initializer for aux-y. * Makerules (aux): Add in contents of aux-y. * extra-lib.mk (all-$(lib)-routines): Include $($(lib)-routines-y) in the list. (cpp-srcs-left): Refer $(all-$(lib)-routines) instead of spelling its value out. * nscd/Makefile: include option-groups.mak. (routines, aux, others, install-sbin, extra-objs): Place everything here in the option group. * pwd/Makefile: include option-groups.mak. (CFLAGS-getpwuid_r.c, CFLAGS-getpwnam_r.c): Define USE_NSCD only if OPTION_EGLIBC_INET is enabled. * misc/Makefile: include option-groups.mak. * sysdeps/unix/sysv/linux/gethostid.c [!OPTION_EGLIBC_INET]: Don't try to look up our IP address; just return a dummy value. * sysdeps/unix/sysv/linux/Makefile: #define OPTION_EGLIBC_INET appropriately when compiling gethostid.c. * inet/Makefile: include option-groups.mak. (routines, aux): Place all routines in the option group. * nss/Makefile: include option-groups.mak. (databases): Put proto, service, hosts, network, rpc, ethers, netgrp, key, and aliases database in option group. Move assignment to 'databases' above assignment to 'routines', since we generate some of the latter from the former. (routines): Put digits_dots in option group. (tests): Put test-netdb in option group. (xtests): Put bug-erange in option group. (CFLAGS-nsswitch.c, CFLAGS-getnssent_r.c, CFLAGS-getent.c): #define OPTION_EGLIBC_INET as appropriate. * nss/getnssent_r.c (__nss_setent, __nss_endent, __nss_getent_r): Don't try to initialize resolver state unless the option group is enabled. * nss/nssswitch.c (__nss_disable_nscd): Define this only if the option group is enabled. * nss/getent.c (print_aliases, aliases_keys, ethers_keys, print_hosts, hosts_keys, ahosts_keys_int, ahosts_keys, ahostsv4_keys, ahostsv6_keys, netgroup_keys, print_networks, networks_keys, print_protocols, protocols_keys, print_rpc, rpc_keys, print_services, services_keys): Define only #if OPTION_EGLIBC_INET. (DN): New macro. (databases): Make entries for ahosts, ahostsv4, ahostsv6, aliases, ethers, hosts, netgroup, networks, protocols, rpc, and services present only if option group is enabled. * hesiod/Makefile (extra-libs, extra-libs-others): Place all libraries in option group. * grp/Makefile: include option-groups.mak. (CFLAGS-getgruid_r.c, CFLAGS-getgrnam_r.c, CFLAGS-initgroups.c): Define USE_NSCD only if OPTION_EGLIBC_INET is enabled. * nptl/Makefile: include option-groups.mak. (libpthread-routines): Move 'herrno' and 'res' into the option group. (CFLAGS-pthread_create.c): Define OPTION_EGLIBC_INET as appropriate. * nptl/pthread_create.c (start_thread): Initialize and free __resp only when OPTION_EGLIBC_INET is #defined. * posix/Makefile: include option-groups.mak. (routines): Put getaddrinfo and gai_strerror in the option group. (tests, xtests): Move tst-getaddrinfo, bug-ga1, tst-getaddrinfo2, tst-rfc3484, tst-rfc3484-2, tst-getaddrinfo3, and bug-ga2 into the option group. (CFLAGS-getaddrinfo.c): #define USE_NSCD only if the option group is enabled. * resolv/Makefile: include option-groups.mak. (routines, tests, xtests, extra-libs, extra-libs-others): Move everything into the option group. (tests): Only add ga_test as a dependency if the option group is enabled. * sunrpc/Makefile: include option-groups.mak. (install-others, routines, others, install-bin, install-sbin) (extra-objs, tests, xtests, extra-libs, extra-libs-others): Move everything into the option group. * nis/Makefile: include option-groups.mak. (services, extra-libs, extra-libs-others): Move everything into the option group. * option-groups.mak (extra-libs-y, extra-libs-others-y): Add missing initializers. * nss/getnssent_r.c (__nss_getent_r): Pass h_errnop through to the getent function, not &h_errno. git-svn-id: svn://svn.eglibc.org/trunk@2230 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Merge changes between r1968 and r2007 from /fsf/trunk.joseph2007-04-171-2/+4
| | | | git-svn-id: svn://svn.eglibc.org/trunk@2008 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Merge changes between r1748 and r1968 from /fsf/trunk.joseph2007-04-139-42/+190
| | | | git-svn-id: svn://svn.eglibc.org/trunk@1969 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Merge changes between r1382 and r1748 from /fsf/trunk.joseph2007-03-187-139/+489
| | | | git-svn-id: svn://svn.eglibc.org/trunk@1749 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Add support for cross-testing.jimb2007-02-064-63/+82
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove Make conditionals that disable running tests or generating test input files when cross-compiling. * Rules: Disable conditionals. * stdlib/Makefile: Same. * libio/Makefile: Same. * intl/Makefile: Same. * iconvdata/Makefile: Same. * localedata/Makefile: Same. * catgets/Makefile: Same. * misc/Makefile: Same. * posix/Makefile: Same. * string/Makefile: Same. * stdio-common/Makefile: Same. * resolv/Makefile: Same. * iconv/Makefile: Same. * grp/Makefile: Same. * elf/Makefile: Same. * malloc/Makefile: Same. * io/Makefile: Same. Where tests run binaries, have them use cross-test-wrapper, if set. * Makeconfig (run-program-prefix): Split this into two pieces: (run-via-rtld-prefix): Prefix to run something via the dynamic linker. (run-program-prefix): Prefix to run something via the cross-testing wrapper and the dynamic linker. (built-program-command): Run the rule's second dependency, using the cross-test-wrapper and dynamic linker. (local-built-program-cmd): Like built-program-command, but don't use cross-test-wrapper. * intl/Makefile: Pass cross-test-wrapper to scripts. * intl/tst-codeset.sh, intl/tst-gettext.sh, intl/tst-gettext2.sh: * intl/tst-gettext3.sh, intl/tst-translit.sh: Expect and use wrapper. * iconvdata/Makefile: Pass cross-test-wrapper to scripts. * iconvdata/run-iconv-test.sh, iconvdata/tst-table.sh: * iconvdata/tst-tables.sh: Expect and use wrapper. * posix/Makefile: Pass cross-test-wrapper to scripts. Pass local-built-program-command to tests which run subprograms. * posix/tst-getconf.sh, posix/globtest.sh: * posix/workexp-tst.sh: Expect and use wrapper. * grp/Makefile: Pass cross-test-wrapper to scripts. * grp/tst-fgetgrent.sh: Expect and use wrapper. * elf/Makefile: Pass cross-test-wrapper to scripts. Use cross-test-wrapper to run binaries. Pass local-built-program-command to tests which run subprograms. * elf/tst-pathopt.sh: Expect and use wrapper. * malloc/Makefile: Pass cross-test-wrapper to scripts. * malloc/tst-mtrace.sh: Expect and use wrapper. * io/Makefile: Pass cross-test-wrapper to scripts. * io/ftwtest-sh: Expect and use wrapper. * nptl/Makefile: Pass cross-test-wrapper to scripts. Pass local-built-program-command to tests which run subprograms. * nptl/tst-tls6.sh: Expect and use wrapper. * rt/makefile (tst-mqueue7-ARGS): Pass local-built-program-command. Make sure cross-testing wrappers don't steal input from test script loops. * iconvdata/run-iconv-test.sh: Use non-stdin file descriptor for while loop input. * iconvdata/tst-tables.sh: Redirect loop body input from /dev/null. * localedata/tst-rpmatch.sh, localedata/tst-fmon.sh: Same. * localedata/tst-numeric.sh: Same. * posix/tst-getconf.sh: Same. * localedata/tst-wctype.sh: Take the command to run as an argument, as passed by the Makefile, not run_program_prefix. * io/Makefile ($(objpfx)/ftwtest.out): If cross-testing, use build tree for temporary directory. * localedata/Makefile ($(addprefix $(objpfx),$(CTYPE_FILES))): Use cross-localedef program, if specified. * scripts/cross-test-ssh.sh: New file: sample cross-test wrapper. git-svn-id: svn://svn.eglibc.org/trunk@1386 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Merge changes between r858 and r1147 /fsf/trunk.joseph2007-01-095-49/+302
| | | | git-svn-id: svn://svn.eglibc.org/trunk@1148 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Merge changes between r615 and r677 from /fsf/trunk.joseph2006-11-131-1/+1
| | | | git-svn-id: svn://svn.eglibc.org/trunk@678 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Merge changes between r291 and r312 from /fsf/trunk.joseph2006-10-041-2/+16
| | | | git-svn-id: svn://svn.eglibc.org/trunk@313 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Merge changes between r76 and r285 from /fsf/trunk.joseph2006-09-296-77/+216
| | | | git-svn-id: svn://svn.eglibc.org/trunk@286 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* * io/test-lfs.c (do_prepare): Give name_len type size_t.joseph2006-08-264-4/+4
| | | | | | | | | | | | | | | * io/tst-fcntl.c (do_prepare): Likewise. * posix/tst-exec.c (do_prepare): Likewise. * posix/tst-preadwrite.c (do_prepare): Likewise. * posix/tst-spawn.c (do_prepare): Likewise. * posix/tst-truncate.c (do_prepare): Likewise. * rt/tst-aio.c (do_prepare): Likewise. * rt/tst-aio64.c (do_prepare): Likewise. * stdlib/test-canon2.c (do_prepare): Give test_dir_len type size_t. git-svn-id: svn://svn.eglibc.org/trunk@101 7b3dc134-2b1b-0410-93df-9e9f96275f8d
* Import glibc-mainline for 2006-08-16gcc2006-08-17237-0/+47734
git-svn-id: svn://svn.eglibc.org/fsf/trunk@4 7b3dc134-2b1b-0410-93df-9e9f96275f8d