From 3e2f57835342074a90843077c1c63c88a42e6217 Mon Sep 17 00:00:00 2001
From: John Crispin <john@openwrt.org>
Date: Thu, 12 Mar 2015 19:50:57 +0000
Subject: toolchain: The glorious return of glibc, ver 2.21

It's the eglibc packaging with a bit of spit-polishing. And testing. :-)

[blogic: merged glibc and eglibc into 1 and made eglibc a glibc variant]

Signed-off-by: Jeff Waugh <jdub@bethesignal.org>
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 44701
---
 toolchain/glibc/config/Config.in | 903 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 903 insertions(+)
 create mode 100644 toolchain/glibc/config/Config.in

(limited to 'toolchain/glibc/config')

diff --git a/toolchain/glibc/config/Config.in b/toolchain/glibc/config/Config.in
new file mode 100644
index 0000000..6f02223
--- /dev/null
+++ b/toolchain/glibc/config/Config.in
@@ -0,0 +1,903 @@
+config EGLIBC_OPTION_EGLIBC_ADVANCED_INET6
+	bool "IPv6 Advanced Sockets API support (RFC3542)"
+	default y
+	select EGLIBC_OPTION_EGLIBC_INET
+	help
+	  This option group includes the functions specified by RFC 3542,
+	  "Advanced Sockets Application Program Interface (API) for
+	  IPv6".
+
+	  This option group includes the following functions:
+
+		inet6_opt_append
+		inet6_opt_find
+		inet6_opt_finish
+		inet6_opt_get_val
+		inet6_opt_init
+		inet6_option_alloc
+		inet6_option_append
+		inet6_option_find
+		inet6_option_init
+		inet6_option_next
+		inet6_option_space
+		inet6_opt_next
+		inet6_opt_set_val
+		inet6_rth_add
+		inet6_rth_getaddr
+		inet6_rth_init
+		inet6_rth_reverse
+		inet6_rth_segments
+		inet6_rth_space
+
+
+config EGLIBC_OPTION_EGLIBC_BACKTRACE
+	bool "Functions for producing backtraces"
+	default y
+	help
+	  This option group includes functions for producing a list of
+	  the function calls that are currently active in a thread, from
+	  within the thread itself.  These functions are often used
+	  within signal handlers, to produce diagnostic output.
+
+	  This option group includes the following functions:
+
+		backtrace
+		backtrace_symbols
+		backtrace_symbols_fd
+
+
+config EGLIBC_OPTION_EGLIBC_BIG_MACROS
+	bool "Use extensive inline code"
+	default y
+	help
+	  This option group specifies whether certain pieces of code
+	  should be inlined to achieve maximum speed.  If this option
+	  group is not selected, function calls will be used instead,
+	  hence reducing the library footprint.
+
+
+config EGLIBC_OPTION_EGLIBC_BSD
+	bool "BSD-specific functions, and their compatibility stubs"
+	default y
+	help
+	  This option group includes functions specific to BSD kernels.
+	  A number of these functions have stub versions that are also
+	  included in libraries built for non-BSD systems for
+	  compatibility.
+
+	  This option group includes the following functions:
+
+		chflags
+		fchflags
+		lchmod
+		revoke
+		setlogin
+
+
+config EGLIBC_OPTION_EGLIBC_CXX_TESTS
+	bool "Tests that link against the standard C++ library."
+	default y
+	select EGLIBC_OPTION_POSIX_WIDE_CHAR_DEVICE_IO
+	select EGLIBC_OPTION_EGLIBC_LIBM
+	help
+	  This option group does not include any C library functions;
+	  instead, it controls which EGLIBC tests an ordinary 'make
+	  tests' runs.  With this group disabled, tests that would
+	  normally link against the standard C++ library are not
+	  run.
+
+	  The standard C++ library depends on the math library 'libm' and
+	  the wide character I/O functions included in EGLIBC.  If those
+	  option groups are disabled, this test must also be disabled.
+
+
+config EGLIBC_OPTION_EGLIBC_CATGETS
+	bool "Functions for accessing message catalogs"
+	default y
+	select EGLIBC_OPTION_EGLIBC_LOCALE_CODE
+	help
+	  This option group includes functions for accessing message
+	  catalogs: catopen, catclose, and catgets.
+
+	  This option group depends on the EGLIBC_OPTION_EGLIBC_LOCALE_CODE
+	  option group; if you disable that, you must also disable this.
+
+
+config EGLIBC_OPTION_EGLIBC_CHARSETS
+	bool "iconv/gconv character set conversion libraries"
+	default y
+	help
+
+	  This option group includes support for character sets other
+	  than ASCII (ANSI_X3.4-1968) and Unicode and ISO-10646 in their
+	  various encodings.  This affects both the character sets
+	  supported by the wide and multibyte character functions, and
+	  those supported by the 'iconv' functions.
+
+	  With this option group disabled, EGLIBC supports only the
+	  following character sets:
+
+		ANSI_X3.4         - ASCII
+		ANSI_X3.4-1968
+		ANSI_X3.4-1986
+		ASCII
+		CP367
+		CSASCII
+		IBM367
+		ISO-IR-6
+		ISO646-US
+		ISO_646.IRV:1991
+		OSF00010020
+		US
+		US-ASCII
+
+		10646-1:1993      - ISO 10646, in big-endian UCS4 form
+		10646-1:1993/UCS4
+		CSUCS4
+		ISO-10646
+		ISO-10646/UCS4
+		OSF00010104
+		OSF00010105
+		OSF00010106
+		UCS-4
+		UCS-4BE
+		UCS4
+
+		UCS-4LE           - ISO 10646, in little-endian UCS4 form
+
+		ISO-10646/UTF-8   - ISO 10646, in UTF-8 form
+		ISO-10646/UTF8
+		ISO-IR-193
+		OSF05010001
+		UTF-8
+		UTF8
+
+		ISO-10646/UCS2    - ISO 10646, in target-endian UCS2 form
+		OSF00010100
+		OSF00010101
+		OSF00010102
+		UCS-2
+		UCS2
+
+		UCS-2BE           - ISO 10646, in big-endian UCS2 form
+		UNICODEBIG
+
+		UCS-2LE           - ISO 10646, in little-endian UCS2 form
+		UNICODELITTLE
+
+		WCHAR_T           - EGLIBC's internal form (target-endian,
+							32-bit ISO 10646)
+
+
+config EGLIBC_OPTION_EGLIBC_CRYPT
+	bool "Encryption library"
+	default y
+	help
+	  This option group includes the `libcrypt' library which
+	  provides functions for one-way encryption.  Supported
+	  encryption algorithms include MD5, SHA-256, SHA-512 and DES.
+
+
+config EGLIBC_OPTION_EGLIBC_CRYPT_UFC
+	bool "Ultra fast `crypt' implementation"
+	default y
+	select EGLIBC_OPTION_EGLIBC_CRYPT
+	help
+	  This option group provides ultra fast DES-based implementation of
+	  the `crypt' function.  When this option group is disabled,
+	  (a) the library will not provide the setkey[_r] and encrypt[_r]
+	  functions and (b) the crypt[_r] function will return NULL and set the
+	  errno to ENOSYS if /salt/ passed does not correspond to either MD5,
+	  SHA-256 or SHA-512 algorithm.
+
+
+config EGLIBC_OPTION_EGLIBC_DB_ALIASES
+	bool "Functions for accessing the mail aliases database"
+	default y
+	help
+	  This option group includes functions for looking up mail
+	  aliases in '/etc/aliases' or using nsswitch.  It includes the
+	  following functions:
+
+		endaliasent
+		getaliasbyname
+		getaliasbyname_r
+		getaliasent
+		getaliasent_r
+		setaliasent
+
+	  When this option group is disabled, the NSS service libraries
+	  also lack support for querying their mail alias tables.
+
+
+config EGLIBC_OPTION_EGLIBC_ENVZ
+	bool "Functions for handling envz-style environment vectors."
+	default y
+	help
+	  This option group contains functions for creating and operating
+	  on envz vectors.  An "envz vector" is a vector of strings in a
+	  contiguous block of memory, where each element is a name-value
+	  pair, and elements are separated from their neighbors by null
+	  characters.
+
+	  This option group includes the following functions:
+
+		envz_add        envz_merge 
+		envz_entry      envz_remove
+		envz_get        envz_strip 
+
+
+config EGLIBC_OPTION_EGLIBC_FCVT
+	bool "Functions for converting floating-point numbers to strings"
+	default y
+	help
+	  This option group includes functions for converting
+	  floating-point numbers to strings.
+
+	  This option group includes the following functions:
+
+		ecvt           qecvt
+		ecvt_r         qecvt_r
+		fcvt           qfcvt
+		fcvt_r         qfcvt_r
+		gcvt           qgcvt
+
+
+config EGLIBC_OPTION_EGLIBC_FMTMSG
+	bool "Functions for formatting messages"
+	default y
+	help
+	  This option group includes the following functions:
+
+		addseverity    fmtmsg
+
+
+config EGLIBC_OPTION_EGLIBC_FSTAB
+	bool "Access functions for 'fstab'"
+	default y
+	help
+	  This option group includes functions for reading the mount
+	  point specification table, '/etc/fstab'.  These functions are
+	  not included in the POSIX standard, which provides the
+	  'getmntent' family of functions instead.
+
+	  This option group includes the following functions:
+
+		endfsent       getfsspec
+		getfsent       setfsent
+		getfsfile
+
+
+config EGLIBC_OPTION_EGLIBC_FTRAVERSE
+	bool "Functions for traversing file hierarchies"
+	default y
+	help
+	  This option group includes functions for traversing file
+	  UNIX file hierachies.
+
+	  This option group includes the following functions:
+
+		fts_open       ftw
+		fts_read       nftw
+		fts_children   ftw64
+		fts_set        nftw64
+		fts_close
+
+
+config EGLIBC_OPTION_EGLIBC_GETLOGIN
+	bool "The getlogin function"
+	default y
+	select EGLIBC_OPTION_EGLIBC_UTMP
+	help
+	  This function group includes the 'getlogin' and 'getlogin_r'
+	  functions, which return the user name associated by the login
+	  activity with the current process's controlling terminal.
+
+	  With this option group disabled, the 'glob' function will not
+	  fall back on 'getlogin' to find the user's login name for tilde
+	  expansion when the 'HOME' environment variable is not set.
+
+
+config EGLIBC_OPTION_EGLIBC_IDN
+	bool "International domain names support"
+	default y
+	help
+	  This option group includes the `libcidn' library which
+	  provides support for international domain names.
+
+
+config EGLIBC_OPTION_EGLIBC_INET
+	bool "Networking support"
+	default y
+	help
+	  This option group includes networking-specific functions and
+	  data.  With EGLIBC_OPTION_EGLIBC_INET disabled, the EGLIBC
+	  installation and API changes as follows:
+
+	  - The following libraries are not installed:
+
+		libanl
+		libnsl
+		libnss_compat
+		libnss_dns
+		libnss_hesiod
+		libnss_nis
+		libnss_nisplus
+		libresolv
+		 
+	  - The following functions and variables are omitted from libc:
+
+		authdes_create           hstrerror              svc_fdset
+		authdes_getucred         htonl                  svc_getreq
+		authdes_pk_create        htons                  svc_getreq_common
+		authnone_create          if_freenameindex       svc_getreq_poll
+		authunix_create          if_indextoname         svc_getreqset
+		authunix_create_default  if_nameindex           svc_max_pollfd
+		bindresvport             if_nametoindex         svc_pollfd
+		callrpc                  in6addr_any            svcraw_create
+		cbc_crypt                in6addr_loopback       svc_register
+		clnt_broadcast           inet6_opt_append       svc_run
+		clnt_create              inet6_opt_find         svc_sendreply
+		clnt_pcreateerror        inet6_opt_finish       svctcp_create
+		clnt_perrno              inet6_opt_get_val      svcudp_bufcreate
+		clnt_perror              inet6_opt_init         svcudp_create
+		clntraw_create           inet6_option_alloc     svcudp_enablecache
+		clnt_spcreateerror       inet6_option_append    svcunix_create
+		clnt_sperrno             inet6_option_find      svcunixfd_create
+		clnt_sperror             inet6_option_init      svc_unregister
+		clnttcp_create           inet6_option_next      user2netname
+		clntudp_bufcreate        inet6_option_space     xdecrypt
+		clntudp_create           inet6_opt_next         xdr_accepted_reply
+		clntunix_create          inet6_opt_set_val      xdr_array
+		des_setparity            inet6_rth_add          xdr_authdes_cred
+		ecb_crypt                inet6_rth_getaddr      xdr_authdes_verf
+		endaliasent              inet6_rth_init         xdr_authunix_parms
+		endhostent               inet6_rth_reverse      xdr_bool
+		endnetent                inet6_rth_segments     xdr_bytes
+		endnetgrent              inet6_rth_space        xdr_callhdr
+		endprotoent              inet_addr              xdr_callmsg
+		endrpcent                inet_aton              xdr_char
+		endservent               inet_lnaof             xdr_cryptkeyarg
+		ether_aton               inet_makeaddr          xdr_cryptkeyarg2
+		ether_aton_r             inet_netof             xdr_cryptkeyres
+		ether_hostton            inet_network           xdr_des_block
+		ether_line               inet_nsap_addr         xdr_double
+		ether_ntoa               inet_nsap_ntoa         xdr_enum
+		ether_ntoa_r             inet_ntoa              xdr_float
+		ether_ntohost            inet_ntop              xdr_free
+		freeaddrinfo             inet_pton              xdr_getcredres
+		freeifaddrs              innetgr                xdr_hyper
+		gai_strerror             iruserok               xdr_int
+		getaddrinfo              iruserok_af            xdr_int16_t
+		getaliasbyname           key_decryptsession     xdr_int32_t
+		getaliasbyname_r         key_decryptsession_pk  xdr_int64_t
+		getaliasent              key_encryptsession     xdr_int8_t
+		getaliasent_r            key_encryptsession_pk  xdr_keybuf
+		gethostbyaddr            key_gendes             xdr_key_netstarg
+		gethostbyaddr_r          key_get_conv           xdr_key_netstres
+		gethostbyname            key_secretkey_is_set   xdr_keystatus
+		gethostbyname2           key_setnet             xdr_long
+		gethostbyname2_r         key_setsecret          xdr_longlong_t
+		gethostbyname_r          netname2host           xdrmem_create
+		gethostent               netname2user           xdr_netnamestr
+		gethostent_r             ntohl                  xdr_netobj
+		getifaddrs               ntohs                  xdr_opaque
+		getipv4sourcefilter      passwd2des             xdr_opaque_auth
+		get_myaddress            pmap_getmaps           xdr_pmap
+		getnameinfo              pmap_getport           xdr_pmaplist
+		getnetbyaddr             pmap_rmtcall           xdr_pointer
+		getnetbyaddr_r           pmap_set               xdr_quad_t
+		getnetbyname             pmap_unset             xdrrec_create
+		getnetbyname_r           rcmd                   xdrrec_endofrecord
+		getnetent                rcmd_af                xdrrec_eof
+		getnetent_r              registerrpc            xdrrec_skiprecord
+		getnetgrent              res_init               xdr_reference
+		getnetgrent_r            rexec                  xdr_rejected_reply
+		getnetname               rexec_af               xdr_replymsg
+		getprotobyname           rexecoptions           xdr_rmtcall_args
+		getprotobyname_r         rpc_createerr          xdr_rmtcallres
+		getprotobynumber         rresvport              xdr_short
+		getprotobynumber_r       rresvport_af           xdr_sizeof
+		getprotoent              rtime                  xdrstdio_create
+		getprotoent_r            ruserok                xdr_string
+		getpublickey             ruserok_af             xdr_u_char
+		getrpcbyname             ruserpass              xdr_u_hyper
+		getrpcbyname_r           setaliasent            xdr_u_int
+		getrpcbynumber           sethostent             xdr_uint16_t
+		getrpcbynumber_r         setipv4sourcefilter    xdr_uint32_t
+		getrpcent                setnetent              xdr_uint64_t
+		getrpcent_r              setnetgrent            xdr_uint8_t
+		getrpcport               setprotoent            xdr_u_long
+		getsecretkey             setrpcent              xdr_u_longlong_t
+		getservbyname            setservent             xdr_union
+		getservbyname_r          setsourcefilter        xdr_unixcred
+		getservbyport            svcauthdes_stats       xdr_u_quad_t
+		getservbyport_r          svcerr_auth            xdr_u_short
+		getservent               svcerr_decode          xdr_vector
+		getservent_r             svcerr_noproc          xdr_void
+		getsourcefilter          svcerr_noprog          xdr_wrapstring
+		h_errlist                svcerr_progvers        xencrypt
+		h_errno                  svcerr_systemerr       xprt_register
+		herror                   svcerr_weakauth        xprt_unregister
+		h_nerr                   svc_exit
+		host2netname             svcfd_create
+
+	  - The rpcgen, nscd, and rpcinfo commands are not installed.
+
+	  - The 'rpc' file (a text file listing RPC services) is not installed.
+
+	  Socket-related system calls do not fall in this option group,
+	  because many are also used for other inter-process
+	  communication mechanisms.  For example, the 'syslog' routines
+	  use Unix-domain sockets to communicate with the syslog daemon;
+	  syslog is valuable in non-networked contexts.
+
+
+config EGLIBC_OPTION_EGLIBC_INET_ANL
+	bool "Asynchronous name lookup"
+	default y
+	select EGLIBC_OPTION_EGLIBC_INET
+	help
+	  This option group includes the `libanl' library which
+	  provides support for asynchronous name lookup.
+
+
+config EGLIBC_OPTION_EGLIBC_LIBM
+	bool "libm (math library)"
+	default y
+	help
+	  This option group includes the 'libm' library, containing
+	  mathematical functions.  If this option group is omitted, then
+	  an EGLIBC installation does not include shared or unshared versions
+	  of the math library.
+
+	  Note that this does not remove all floating-point related
+	  functionality from EGLIBC; for example, 'printf' and 'scanf'
+	  can still print and read floating-point values with this option
+	  group disabled.
+
+	  Note that the ISO Standard C++ library 'libstdc++' depends on
+	  EGLIBC's math library 'libm'.  If you disable this option
+	  group, you will not be able to build 'libstdc++' against the
+	  resulting EGLIBC installation.
+
+
+config EGLIBC_OPTION_EGLIBC_LIBM_BIG
+	bool "Math library size"
+	default y
+	help
+	  This option group enables default configuration of the math library.
+	  Not selecting this option group removes most of the extended and
+	  double precision math functions and replaces them with wrappers
+	  to the single precision couterparts.
+	  Doing so greatly degrades quality of calculations carried
+	  out by the functions of the math library, but also significantly
+	  reduces the size of the libm.
+	  This option group is useful for systems that do not rely on precise
+	  floating point math.
+
+
+config EGLIBC_OPTION_EGLIBC_LOCALES
+	bool "Locale definitions"
+	default y
+	help
+	  This option group includes all locale definitions other than
+	  that for the "C" locale.  If this option group is omitted, then
+	  only the "C" locale is supported.
+
+
+config EGLIBC_OPTION_EGLIBC_LOCALE_CODE
+	bool "Locale functions"
+	default y
+	select EGLIBC_OPTION_POSIX_C_LANG_WIDE_CHAR
+	help
+	  This option group includes locale support functions, programs,
+	  and libraries.  With EGLIBC_OPTION_EGLIBC_LOCALE_CODE disabled,
+	  EGLIBC supports only the 'C' locale (also known as 'POSIX'),
+	  and ignores the settings of the 'LANG' and 'LC_*' environment
+	  variables.
+
+	  With EGLIBC_OPTION_EGLIBC_LOCALE_CODE disabled, the following
+	  functions are omitted from libc:
+
+		duplocale   localeconv  nl_langinfo    rpmatch  strfmon_l
+		freelocale  newlocale   nl_langinfo_l  strfmon  uselocale
+
+	  Furthermore, only the LC_CTYPE and LC_TIME categories of the
+	  standard "C" locale are available.
+
+	  The EGLIBC_OPTION_EGLIBC_CATGETS option group depends on this option
+	  group; if you disable EGLIBC_OPTION_EGLIBC_LOCALE_CODE, you must also
+	  disable EGLIBC_OPTION_EGLIBC_CATGETS.
+
+
+config EGLIBC_OPTION_EGLIBC_MEMUSAGE
+	bool "Memory profiling library"
+	default y
+	help
+	  This option group includes the `libmemusage' library and
+	  the `memusage' and `memusagestat' utilities.
+	  These components provide memory profiling functions.
+
+	  EGLIBC_OPTION_EGLIBC_MEMUSAGE_DEFAULT_BUFFER_SIZE
+
+	  Libmemusage library buffers the profiling data in memory
+	  before writing it out to disk.  By default, the library
+	  allocates 1.5M buffer, which can be substantial for some
+	  systems.  EGLIBC_OPTION_EGLIBC_MEMUSAGE_DEFAULT_BUFFER_SIZE option
+	  allows to change the default buffer size.  It specifies
+	  the number of entries the buffer should have.
+	  On most architectures one buffer entry amounts to 48 bytes,
+	  so setting this option to the value of 512 will reduce the size of
+	  the memory buffer to 24K.
+
+
+config EGLIBC_OPTION_EGLIBC_NIS
+	bool "Support for NIS, NIS+, and the special 'compat' services."
+	default n
+	select EGLIBC_OPTION_EGLIBC_INET
+	select EGLIBC_OPTION_EGLIBC_SUNRPC
+	help
+	  This option group includes the NIS, NIS+, and 'compat' Name
+	  Service Switch service libraries.  When it is disabled, those
+	  services libraries are not installed; you should remove any
+	  references to them from your 'nsswitch.conf' file.
+
+	  This option group depends on the EGLIBC_OPTION_EGLIBC_INET option
+	  group; you must enable that to enable this option group.
+
+
+config EGLIBC_OPTION_EGLIBC_NSSWITCH
+	bool "Name service switch (nsswitch) support"
+	default y
+	select EGLIBC_OPTION_EGLIBC_INET
+	help
+
+	  This option group includes support for the 'nsswitch' facility.
+	  With this option group enabled, all EGLIBC functions for
+	  accessing various system databases (passwords and groups;
+	  networking; aliases; public keys; and so on) consult the
+	  '/etc/nsswitch.conf' configuration file to decide how to handle
+	  queries.
+
+	  With this option group disabled, EGLIBC uses a fixed list of
+	  services to satisfy queries on each database, as requested by
+	  configuration files specified when EGLIBC is built.  Your
+	  'option-groups.config' file must set the following two
+	  variables:
+
+	  EGLIBC_OPTION_EGLIBC_NSSWITCH_FIXED_CONFIG
+
+		Set this to the name of a file whose contents observe the
+		same syntax as an ordinary '/etc/nsswitch.conf' file.  The
+		EGLIBC build process parses this file just as EGLIBC would
+		at run time if EGLIBC_NSSWITCH were enabled, and
+		produces a C library that uses the nsswitch service
+		libraries to search for database entries as this file
+		specifies, instead of consulting '/etc/nsswitch.conf' at run
+		time.
+
+		This should be an absolute filename.  The EGLIBC build
+		process may use it from several different working
+		directories.  It may include references to Makefile
+		variables like 'common-objpfx' (the top of the build tree,
+		with a trailing slash), or '..' (the top of the source tree,
+		with a trailing slash).
+
+		The EGLIBC source tree includes a sample configuration file
+		named 'nss/fixed-nsswitch.conf'; for simple configurations,
+		you will probably want to delete references to databases not
+		needed on your system.
+
+	  EGLIBC_OPTION_EGLIBC_NSSWITCH_FIXED_FUNCTIONS
+
+		The EGLIBC build process uses this file to decide which
+		functions to make available from which service libraries.
+		The file 'nss/fixed-nsswitch.functions' serves as a sample
+		configuration file for this setting, and explains its syntax
+		and meaning in more detail.
+
+		This should be an absolute file name.  The EGLIBC build
+		process may use it from several different working
+		directories.  It may include references to Makefile
+		variables like 'common-objpfx' (the top of the build tree,
+		with a trailing slash), or '..' (the top of the source tree,
+		with a trailing slash).
+
+		Be sure to mention each function in each service you wish to
+		use.  If you do not mention a service's function here, the
+		EGLIBC database access functions will not find it, even if
+		it is listed in the EGLIBC_OPTION_EGLIBC_NSSWITCH_FIXED_CONFIG
+		file.
+
+	  In this arrangement, EGLIBC will not use the 'dlopen' and
+	  'dlsym' functions to find database access functions.  Instead,
+	  libc hard-codes references to the service libraries' database
+	  access functions.  You must explicitly link your program
+	  against the name service libraries (those whose names start
+	  with 'libnss_', in the sysroot's '/lib' directory) whose
+	  functions you intend to use.  This arrangement helps
+	  system-wide static analysis tools decide which functions a
+	  system actually uses.
+
+	  Note that some nsswitch service libraries require other option
+	  groups to be enabled; for example, the EGLIBC_OPTION_EGLIBC_INET
+	  option group must be enabled to use the 'libnss_dns.so.2'
+	  service library, which uses the Domain Name System network
+	  protocol to answer queries.
+
+
+config EGLIBC_OPTION_EGLIBC_RCMD
+	bool "Support for 'rcmd' and related library functions"
+	default y
+	select EGLIBC_OPTION_EGLIBC_INET
+	help
+	  This option group includes functions for running commands on
+	  remote machines via the 'rsh' protocol, and doing authentication
+	  related to those functions.  This also includes functions that
+	  use the 'rexec' protocol.
+
+	  This option group includes the following functions:
+
+		rcmd            ruserok
+		rcmd_af         ruserok_af
+		rexec           iruserok
+		rexec_af        iruserok_af
+		rresvport       ruserpass
+		rresvport_af
+
+
+config EGLIBC_OPTION_EGLIBC_RTLD_DEBUG
+	bool "Runtime linker debug print outs"
+	default y
+	help
+	  This option group enables debug output of the runtime linker
+	  which is activated via LD_DEBUG and LD_TRACE_PRELINKING
+	  environment variables.  Disabling this option group yields
+	  a smaller runtime linker binary.
+	  BEWARE: Disabling this option group is likely to break
+	  the `ldd' utility which may also be used by the prelinker.
+	  In particular, the `--unused' ldd option will not work correctly.
+
+
+config EGLIBC_OPTION_EGLIBC_SPAWN
+	bool "Support for POSIX posix_spawn functions"
+	default y
+	help
+	  This option group includes the POSIX functions for executing
+	  programs in child processes without using 'fork' or 'vfork'.
+
+	  This option group includes the following functions:
+
+		posix_spawn
+		posix_spawnattr_destroy
+		posix_spawnattr_getflags
+		posix_spawnattr_getpgroup
+		posix_spawnattr_getschedparam
+		posix_spawnattr_getschedpolicy
+		posix_spawnattr_getsigdefault
+		posix_spawnattr_getsigmask
+		posix_spawnattr_init
+		posix_spawnattr_setflags
+		posix_spawnattr_setpgroup
+		posix_spawnattr_setschedparam
+		posix_spawnattr_setschedpolicy
+		posix_spawnattr_setsigdefault
+		posix_spawnattr_setsigmask
+		posix_spawn_file_actions_addclose
+		posix_spawn_file_actions_adddup2
+		posix_spawn_file_actions_addopen
+		posix_spawn_file_actions_destroy
+		posix_spawn_file_actions_init
+		posix_spawnp
+
+	  This option group also provides the ability for the iconv,
+	  localedef, and locale programs to operate transparently on
+	  compressed charset definitions.  When this option group is
+	  disabled, those programs will only operate on uncompressed
+	  charmap files.
+
+
+config EGLIBC_OPTION_EGLIBC_STREAMS
+	bool "Support for accessing STREAMS."
+	default y
+	help
+	  This option group includes functions for reading and writing
+	  messages to and from STREAMS.  The STREAMS interface provides a
+	  uniform mechanism for implementing networking services and other
+	  character-based I/O.  (STREAMS are not to be confused with
+	  <stdio.h> FILE objects, also called 'streams'.)
+
+	  This option group includes the following functions:
+
+		getmsg          putpmsg
+		getpmsg         fattach
+		isastream       fdetach
+		putmsg
+
+
+config EGLIBC_OPTION_EGLIBC_SUNRPC
+	bool "Support for the Sun 'RPC' protocol."
+	default n
+	select EGLIBC_OPTION_EGLIBC_INET
+	help
+	  This option group includes support for the Sun RPC protocols,
+	  including the 'rpcgen' and 'rpcinfo' programs.
+
+
+config EGLIBC_OPTION_EGLIBC_UTMP
+	bool "Older access functions for 'utmp' login records"
+	default y
+	help
+	  This option group includes the older 'utent' family of
+	  functions for accessing user login records in the 'utmp' file.
+	  POSIX omits these functions in favor of the 'utxent' family,
+	  and they are obsolete on systems other than Linux.
+
+	  This option group includes the following functions:
+
+		endutent
+		getutent
+		getutent_r
+		getutid
+		getutid_r
+		getutline
+		getutline_r
+		logwtmp
+		pututline
+		setutent
+		updwtmp
+		utmpname
+
+	  This option group includes the following libraries:
+
+		libutil.so (and libutil.a)
+
+
+config EGLIBC_OPTION_EGLIBC_UTMPX
+	bool "POSIX access functions for 'utmp' login records"
+	default y
+	select EGLIBC_OPTION_EGLIBC_UTMP    
+	help
+	  This option group includes the POSIX functions for reading and
+	  writing user login records in the 'utmp' file (usually
+	  '/var/run/utmp').  The POSIX functions operate on 'struct
+	  utmpx' structures, as opposed to the family of older 'utent'
+	  functions, which operate on 'struct utmp' structures.
+
+	  This option group includes the following functions:
+
+		endutxent
+		getutmp
+		getutmpx
+		getutxent
+		getutxid
+		getutxline
+		pututxline
+		setutxent
+		updwtmpx
+		utmpxname
+
+
+config EGLIBC_OPTION_EGLIBC_WORDEXP
+	bool "Shell-style word expansion"
+	default y
+	help
+	  This option group includes the 'wordexp' function for
+	  performing word expansion in the manner of the shell, and the
+	  accompanying 'wordfree' function.
+
+
+config EGLIBC_OPTION_POSIX_C_LANG_WIDE_CHAR
+	bool "ISO C library wide character functions, excluding I/O"
+	default y
+	help
+	  This option group includes the functions defined by the ISO C
+	  standard for working with wide and multibyte characters in
+	  memory.  Functions for reading and writing wide and multibyte
+	  characters from and to files call in the
+	  EGLIBC_OPTION_POSIX_WIDE_CHAR_DEVICE_IO option group.
+
+	  This option group includes the following functions:
+
+		btowc         mbsinit       wcscspn       wcstoll
+		iswalnum      mbsrtowcs     wcsftime      wcstombs
+		iswalpha      mbstowcs      wcslen        wcstoul
+		iswblank      mbtowc        wcsncat       wcstoull
+		iswcntrl      swprintf      wcsncmp       wcstoumax
+		iswctype      swscanf       wcsncpy       wcsxfrm
+		iswdigit      towctrans     wcspbrk       wctob
+		iswgraph      towlower      wcsrchr       wctomb
+		iswlower      towupper      wcsrtombs     wctrans
+		iswprint      vswprintf     wcsspn        wctype
+		iswpunct      vswscanf      wcsstr        wmemchr
+		iswspace      wcrtomb       wcstod        wmemcmp
+		iswupper      wcscat        wcstof        wmemcpy
+		iswxdigit     wcschr        wcstoimax     wmemmove
+		mblen         wcscmp        wcstok        wmemset
+		mbrlen        wcscoll       wcstol
+		mbrtowc       wcscpy        wcstold
+
+
+config EGLIBC_OPTION_POSIX_REGEXP
+	bool "Regular expressions"
+	default y
+	help
+	  This option group includes the POSIX regular expression
+	  functions, and the associated non-POSIX extensions and
+	  compatibility functions.
+
+	  With EGLIBC_OPTION_POSIX_REGEXP disabled, the following functions are
+	  omitted from libc:
+
+		re_comp                 re_max_failures         regcomp
+		re_compile_fastmap      re_search               regerror
+		re_compile_pattern      re_search_2             regexec
+		re_exec                 re_set_registers        regfree
+		re_match                re_set_syntax           rpmatch
+		re_match_2              re_syntax_options
+
+	  Furthermore, the compatibility regexp interface defined in the
+	  <regexp.h> header file, 'compile', 'step', and 'advance', is
+	  omitted.
+
+
+config EGLIBC_OPTION_POSIX_REGEXP_GLIBC
+	bool "Regular expressions from GLIBC"
+	default y
+	select EGLIBC_OPTION_POSIX_REGEXP
+	help
+	  This option group specifies which regular expression
+	  library to use.  The choice is between regex
+	  implementation from GLIBC and regex implementation from
+	  libiberty.  The GLIBC variant is fully POSIX conformant and
+	  optimized for speed; regex from libiberty is more than twice
+	  as small while still is enough for most practical purposes.
+
+
+config EGLIBC_OPTION_POSIX_WIDE_CHAR_DEVICE_IO
+	bool "Input and output functions for wide characters"
+	default y
+	select EGLIBC_OPTION_POSIX_C_LANG_WIDE_CHAR
+	help
+	  This option group includes functions for reading and writing
+	  wide characters to and from <stdio.h> streams.
+
+	  This option group includes the following functions:
+
+		fgetwc        fwprintf      putwchar      vwscanf
+		fgetws        fwscanf       ungetwc       wprintf
+		fputwc        getwc         vfwprintf     wscanf
+		fputws        getwchar      vfwscanf
+		fwide         putwc         vwprintf
+
+	  This option group further includes the following unlocked
+	  variants of the above functions:
+
+		fgetwc_unlocked           getwc_unlocked
+		fgetws_unlocked           getwchar_unlocked
+		fputwc_unlocked           putwc_unlocked
+		fputws_unlocked           putwchar_unlocked
+					
+	  Note that the GNU standard C++ library, 'libstdc++.so', uses
+	  some of these functions; you will not be able to link or run
+	  C++ programs if you disable this option group.
+
+	  This option group also affects the behavior of the following
+	  functions:
+
+		fdopen
+		fopen
+		fopen64
+		freopen
+		freopen64
+
+	  These functions all take an OPENTYPE parameter which may
+	  contain a string of the form ",ccs=CHARSET", indicating that
+	  the underlying file uses the character set named CHARSET.
+	  This produces a wide-oriented stream, which is only useful
+	  when the functions included in this option group are present.
+	  If the user attempts to open a file specifying a character set
+	  in the OPENTYPE parameter, and EGLIBC was built with this
+	  option group disabled, the function returns NULL, and sets
+	  errno to EINVAL.
-- 
cgit v1.1