a1e2eb60c3f83cf6dc994e02f902f31568e4daa1
[openwrt.git] / toolchain / eglibc / config / Config.in
1 config EGLIBC_OPTION_EGLIBC_ADVANCED_INET6
2         bool "IPv6 Advanced Sockets API support (RFC3542)"
3         default y
4         select EGLIBC_OPTION_EGLIBC_INET
5         help
6           This option group includes the functions specified by RFC 3542,
7           "Advanced Sockets Application Program Interface (API) for
8           IPv6".
9
10           This option group includes the following functions:
11
12                 inet6_opt_append
13                 inet6_opt_find
14                 inet6_opt_finish
15                 inet6_opt_get_val
16                 inet6_opt_init
17                 inet6_option_alloc
18                 inet6_option_append
19                 inet6_option_find
20                 inet6_option_init
21                 inet6_option_next
22                 inet6_option_space
23                 inet6_opt_next
24                 inet6_opt_set_val
25                 inet6_rth_add
26                 inet6_rth_getaddr
27                 inet6_rth_init
28                 inet6_rth_reverse
29                 inet6_rth_segments
30                 inet6_rth_space
31
32
33 config EGLIBC_OPTION_EGLIBC_BACKTRACE
34         bool "Functions for producing backtraces"
35         default y
36         help
37           This option group includes functions for producing a list of
38           the function calls that are currently active in a thread, from
39           within the thread itself.  These functions are often used
40           within signal handlers, to produce diagnostic output.
41
42           This option group includes the following functions:
43
44                 backtrace
45                 backtrace_symbols
46                 backtrace_symbols_fd
47
48
49 config EGLIBC_OPTION_EGLIBC_BIG_MACROS
50         bool "Use extensive inline code"
51         default y
52         help
53           This option group specifies whether certain pieces of code
54           should be inlined to achieve maximum speed.  If this option
55           group is not selected, function calls will be used instead,
56           hence reducing the library footprint.
57
58
59 config EGLIBC_OPTION_EGLIBC_BSD
60         bool "BSD-specific functions, and their compatibility stubs"
61         default y
62         help
63           This option group includes functions specific to BSD kernels.
64           A number of these functions have stub versions that are also
65           included in libraries built for non-BSD systems for
66           compatibility.
67
68           This option group includes the following functions:
69
70                 chflags
71                 fchflags
72                 lchmod
73                 revoke
74                 setlogin
75
76
77 config EGLIBC_OPTION_EGLIBC_CXX_TESTS
78         bool "Tests that link against the standard C++ library."
79         default y
80         select EGLIBC_OPTION_POSIX_WIDE_CHAR_DEVICE_IO
81         select EGLIBC_OPTION_EGLIBC_LIBM
82         help
83           This option group does not include any C library functions;
84           instead, it controls which EGLIBC tests an ordinary 'make
85           tests' runs.  With this group disabled, tests that would
86           normally link against the standard C++ library are not
87           run.
88
89           The standard C++ library depends on the math library 'libm' and
90           the wide character I/O functions included in EGLIBC.  If those
91           option groups are disabled, this test must also be disabled.
92
93
94 config EGLIBC_OPTION_EGLIBC_CATGETS
95         bool "Functions for accessing message catalogs"
96         default y
97         select EGLIBC_OPTION_EGLIBC_LOCALE_CODE
98         help
99           This option group includes functions for accessing message
100           catalogs: catopen, catclose, and catgets.
101
102           This option group depends on the EGLIBC_OPTION_EGLIBC_LOCALE_CODE
103           option group; if you disable that, you must also disable this.
104
105
106 config EGLIBC_OPTION_EGLIBC_CHARSETS
107         bool "iconv/gconv character set conversion libraries"
108         default y
109         help
110
111           This option group includes support for character sets other
112           than ASCII (ANSI_X3.4-1968) and Unicode and ISO-10646 in their
113           various encodings.  This affects both the character sets
114           supported by the wide and multibyte character functions, and
115           those supported by the 'iconv' functions.
116
117           With this option group disabled, EGLIBC supports only the
118           following character sets:
119
120                 ANSI_X3.4         - ASCII
121                 ANSI_X3.4-1968
122                 ANSI_X3.4-1986
123                 ASCII
124                 CP367
125                 CSASCII
126                 IBM367
127                 ISO-IR-6
128                 ISO646-US
129                 ISO_646.IRV:1991
130                 OSF00010020
131                 US
132                 US-ASCII
133
134                 10646-1:1993      - ISO 10646, in big-endian UCS4 form
135                 10646-1:1993/UCS4
136                 CSUCS4
137                 ISO-10646
138                 ISO-10646/UCS4
139                 OSF00010104
140                 OSF00010105
141                 OSF00010106
142                 UCS-4
143                 UCS-4BE
144                 UCS4
145
146                 UCS-4LE           - ISO 10646, in little-endian UCS4 form
147
148                 ISO-10646/UTF-8   - ISO 10646, in UTF-8 form
149                 ISO-10646/UTF8
150                 ISO-IR-193
151                 OSF05010001
152                 UTF-8
153                 UTF8
154
155                 ISO-10646/UCS2    - ISO 10646, in target-endian UCS2 form
156                 OSF00010100
157                 OSF00010101
158                 OSF00010102
159                 UCS-2
160                 UCS2
161
162                 UCS-2BE           - ISO 10646, in big-endian UCS2 form
163                 UNICODEBIG
164
165                 UCS-2LE           - ISO 10646, in little-endian UCS2 form
166                 UNICODELITTLE
167
168                 WCHAR_T           - EGLIBC's internal form (target-endian,
169                                                         32-bit ISO 10646)
170
171
172 config EGLIBC_OPTION_EGLIBC_CRYPT
173         bool "Encryption library"
174         default y
175         help
176           This option group includes the `libcrypt' library which
177           provides functions for one-way encryption.  Supported
178           encryption algorithms include MD5, SHA-256, SHA-512 and DES.
179
180
181 config EGLIBC_OPTION_EGLIBC_CRYPT_UFC
182         bool "Ultra fast `crypt' implementation"
183         default y
184         select EGLIBC_OPTION_EGLIBC_CRYPT
185         help
186           This option group provides ultra fast DES-based implementation of
187           the `crypt' function.  When this option group is disabled,
188           (a) the library will not provide the setkey[_r] and encrypt[_r]
189           functions and (b) the crypt[_r] function will return NULL and set the
190           errno to ENOSYS if /salt/ passed does not correspond to either MD5,
191           SHA-256 or SHA-512 algorithm.
192
193
194 config EGLIBC_OPTION_EGLIBC_DB_ALIASES
195         bool "Functions for accessing the mail aliases database"
196         default y
197         help
198           This option group includes functions for looking up mail
199           aliases in '/etc/aliases' or using nsswitch.  It includes the
200           following functions:
201
202                 endaliasent
203                 getaliasbyname
204                 getaliasbyname_r
205                 getaliasent
206                 getaliasent_r
207                 setaliasent
208
209           When this option group is disabled, the NSS service libraries
210           also lack support for querying their mail alias tables.
211
212
213 config EGLIBC_OPTION_EGLIBC_ENVZ
214         bool "Functions for handling envz-style environment vectors."
215         default y
216         help
217           This option group contains functions for creating and operating
218           on envz vectors.  An "envz vector" is a vector of strings in a
219           contiguous block of memory, where each element is a name-value
220           pair, and elements are separated from their neighbors by null
221           characters.
222
223           This option group includes the following functions:
224
225                 envz_add        envz_merge 
226                 envz_entry      envz_remove
227                 envz_get        envz_strip 
228
229
230 config EGLIBC_OPTION_EGLIBC_FCVT
231         bool "Functions for converting floating-point numbers to strings"
232         default y
233         help
234           This option group includes functions for converting
235           floating-point numbers to strings.
236
237           This option group includes the following functions:
238
239                 ecvt           qecvt
240                 ecvt_r         qecvt_r
241                 fcvt           qfcvt
242                 fcvt_r         qfcvt_r
243                 gcvt           qgcvt
244
245
246 config EGLIBC_OPTION_EGLIBC_FMTMSG
247         bool "Functions for formatting messages"
248         default y
249         help
250           This option group includes the following functions:
251
252                 addseverity    fmtmsg
253
254
255 config EGLIBC_OPTION_EGLIBC_FSTAB
256         bool "Access functions for 'fstab'"
257         default y
258         help
259           This option group includes functions for reading the mount
260           point specification table, '/etc/fstab'.  These functions are
261           not included in the POSIX standard, which provides the
262           'getmntent' family of functions instead.
263
264           This option group includes the following functions:
265
266                 endfsent       getfsspec
267                 getfsent       setfsent
268                 getfsfile
269
270
271 config EGLIBC_OPTION_EGLIBC_FTRAVERSE
272         bool "Functions for traversing file hierarchies"
273         default y
274         help
275           This option group includes functions for traversing file
276           UNIX file hierachies.
277
278           This option group includes the following functions:
279
280                 fts_open       ftw
281                 fts_read       nftw
282                 fts_children   ftw64
283                 fts_set        nftw64
284                 fts_close
285
286
287 config EGLIBC_OPTION_EGLIBC_GETLOGIN
288         bool "The getlogin function"
289         default y
290         select EGLIBC_OPTION_EGLIBC_UTMP
291         help
292           This function group includes the 'getlogin' and 'getlogin_r'
293           functions, which return the user name associated by the login
294           activity with the current process's controlling terminal.
295
296           With this option group disabled, the 'glob' function will not
297           fall back on 'getlogin' to find the user's login name for tilde
298           expansion when the 'HOME' environment variable is not set.
299
300
301 config EGLIBC_OPTION_EGLIBC_IDN
302         bool "International domain names support"
303         default y
304         help
305           This option group includes the `libcidn' library which
306           provides support for international domain names.
307
308
309 config EGLIBC_OPTION_EGLIBC_INET
310         bool "Networking support"
311         default y
312         help
313           This option group includes networking-specific functions and
314           data.  With EGLIBC_OPTION_EGLIBC_INET disabled, the EGLIBC
315           installation and API changes as follows:
316
317           - The following libraries are not installed:
318
319                 libanl
320                 libnsl
321                 libnss_compat
322                 libnss_dns
323                 libnss_hesiod
324                 libnss_nis
325                 libnss_nisplus
326                 libresolv
327                  
328           - The following functions and variables are omitted from libc:
329
330                 authdes_create           hstrerror              svc_fdset
331                 authdes_getucred         htonl                  svc_getreq
332                 authdes_pk_create        htons                  svc_getreq_common
333                 authnone_create          if_freenameindex       svc_getreq_poll
334                 authunix_create          if_indextoname         svc_getreqset
335                 authunix_create_default  if_nameindex           svc_max_pollfd
336                 bindresvport             if_nametoindex         svc_pollfd
337                 callrpc                  in6addr_any            svcraw_create
338                 cbc_crypt                in6addr_loopback       svc_register
339                 clnt_broadcast           inet6_opt_append       svc_run
340                 clnt_create              inet6_opt_find         svc_sendreply
341                 clnt_pcreateerror        inet6_opt_finish       svctcp_create
342                 clnt_perrno              inet6_opt_get_val      svcudp_bufcreate
343                 clnt_perror              inet6_opt_init         svcudp_create
344                 clntraw_create           inet6_option_alloc     svcudp_enablecache
345                 clnt_spcreateerror       inet6_option_append    svcunix_create
346                 clnt_sperrno             inet6_option_find      svcunixfd_create
347                 clnt_sperror             inet6_option_init      svc_unregister
348                 clnttcp_create           inet6_option_next      user2netname
349                 clntudp_bufcreate        inet6_option_space     xdecrypt
350                 clntudp_create           inet6_opt_next         xdr_accepted_reply
351                 clntunix_create          inet6_opt_set_val      xdr_array
352                 des_setparity            inet6_rth_add          xdr_authdes_cred
353                 ecb_crypt                inet6_rth_getaddr      xdr_authdes_verf
354                 endaliasent              inet6_rth_init         xdr_authunix_parms
355                 endhostent               inet6_rth_reverse      xdr_bool
356                 endnetent                inet6_rth_segments     xdr_bytes
357                 endnetgrent              inet6_rth_space        xdr_callhdr
358                 endprotoent              inet_addr              xdr_callmsg
359                 endrpcent                inet_aton              xdr_char
360                 endservent               inet_lnaof             xdr_cryptkeyarg
361                 ether_aton               inet_makeaddr          xdr_cryptkeyarg2
362                 ether_aton_r             inet_netof             xdr_cryptkeyres
363                 ether_hostton            inet_network           xdr_des_block
364                 ether_line               inet_nsap_addr         xdr_double
365                 ether_ntoa               inet_nsap_ntoa         xdr_enum
366                 ether_ntoa_r             inet_ntoa              xdr_float
367                 ether_ntohost            inet_ntop              xdr_free
368                 freeaddrinfo             inet_pton              xdr_getcredres
369                 freeifaddrs              innetgr                xdr_hyper
370                 gai_strerror             iruserok               xdr_int
371                 getaddrinfo              iruserok_af            xdr_int16_t
372                 getaliasbyname           key_decryptsession     xdr_int32_t
373                 getaliasbyname_r         key_decryptsession_pk  xdr_int64_t
374                 getaliasent              key_encryptsession     xdr_int8_t
375                 getaliasent_r            key_encryptsession_pk  xdr_keybuf
376                 gethostbyaddr            key_gendes             xdr_key_netstarg
377                 gethostbyaddr_r          key_get_conv           xdr_key_netstres
378                 gethostbyname            key_secretkey_is_set   xdr_keystatus
379                 gethostbyname2           key_setnet             xdr_long
380                 gethostbyname2_r         key_setsecret          xdr_longlong_t
381                 gethostbyname_r          netname2host           xdrmem_create
382                 gethostent               netname2user           xdr_netnamestr
383                 gethostent_r             ntohl                  xdr_netobj
384                 getifaddrs               ntohs                  xdr_opaque
385                 getipv4sourcefilter      passwd2des             xdr_opaque_auth
386                 get_myaddress            pmap_getmaps           xdr_pmap
387                 getnameinfo              pmap_getport           xdr_pmaplist
388                 getnetbyaddr             pmap_rmtcall           xdr_pointer
389                 getnetbyaddr_r           pmap_set               xdr_quad_t
390                 getnetbyname             pmap_unset             xdrrec_create
391                 getnetbyname_r           rcmd                   xdrrec_endofrecord
392                 getnetent                rcmd_af                xdrrec_eof
393                 getnetent_r              registerrpc            xdrrec_skiprecord
394                 getnetgrent              res_init               xdr_reference
395                 getnetgrent_r            rexec                  xdr_rejected_reply
396                 getnetname               rexec_af               xdr_replymsg
397                 getprotobyname           rexecoptions           xdr_rmtcall_args
398                 getprotobyname_r         rpc_createerr          xdr_rmtcallres
399                 getprotobynumber         rresvport              xdr_short
400                 getprotobynumber_r       rresvport_af           xdr_sizeof
401                 getprotoent              rtime                  xdrstdio_create
402                 getprotoent_r            ruserok                xdr_string
403                 getpublickey             ruserok_af             xdr_u_char
404                 getrpcbyname             ruserpass              xdr_u_hyper
405                 getrpcbyname_r           setaliasent            xdr_u_int
406                 getrpcbynumber           sethostent             xdr_uint16_t
407                 getrpcbynumber_r         setipv4sourcefilter    xdr_uint32_t
408                 getrpcent                setnetent              xdr_uint64_t
409                 getrpcent_r              setnetgrent            xdr_uint8_t
410                 getrpcport               setprotoent            xdr_u_long
411                 getsecretkey             setrpcent              xdr_u_longlong_t
412                 getservbyname            setservent             xdr_union
413                 getservbyname_r          setsourcefilter        xdr_unixcred
414                 getservbyport            svcauthdes_stats       xdr_u_quad_t
415                 getservbyport_r          svcerr_auth            xdr_u_short
416                 getservent               svcerr_decode          xdr_vector
417                 getservent_r             svcerr_noproc          xdr_void
418                 getsourcefilter          svcerr_noprog          xdr_wrapstring
419                 h_errlist                svcerr_progvers        xencrypt
420                 h_errno                  svcerr_systemerr       xprt_register
421                 herror                   svcerr_weakauth        xprt_unregister
422                 h_nerr                   svc_exit
423                 host2netname             svcfd_create
424
425           - The rpcgen, nscd, and rpcinfo commands are not installed.
426
427           - The 'rpc' file (a text file listing RPC services) is not installed.
428
429           Socket-related system calls do not fall in this option group,
430           because many are also used for other inter-process
431           communication mechanisms.  For example, the 'syslog' routines
432           use Unix-domain sockets to communicate with the syslog daemon;
433           syslog is valuable in non-networked contexts.
434
435
436 config EGLIBC_OPTION_EGLIBC_INET_ANL
437         bool "Asynchronous name lookup"
438         default y
439         select EGLIBC_OPTION_EGLIBC_INET
440         help
441           This option group includes the `libanl' library which
442           provides support for asynchronous name lookup.
443
444
445 config EGLIBC_OPTION_EGLIBC_LIBM
446         bool "libm (math library)"
447         default y
448         help
449           This option group includes the 'libm' library, containing
450           mathematical functions.  If this option group is omitted, then
451           an EGLIBC installation does not include shared or unshared versions
452           of the math library.
453
454           Note that this does not remove all floating-point related
455           functionality from EGLIBC; for example, 'printf' and 'scanf'
456           can still print and read floating-point values with this option
457           group disabled.
458
459           Note that the ISO Standard C++ library 'libstdc++' depends on
460           EGLIBC's math library 'libm'.  If you disable this option
461           group, you will not be able to build 'libstdc++' against the
462           resulting EGLIBC installation.
463
464
465 config EGLIBC_OPTION_EGLIBC_LIBM_BIG
466         bool "Math library size"
467         default y
468         help
469           This option group enables default configuration of the math library.
470           Not selecting this option group removes most of the extended and
471           double precision math functions and replaces them with wrappers
472           to the single precision couterparts.
473           Doing so greatly degrades quality of calculations carried
474           out by the functions of the math library, but also significantly
475           reduces the size of the libm.
476           This option group is useful for systems that do not rely on precise
477           floating point math.
478
479
480 config EGLIBC_OPTION_EGLIBC_LOCALES
481         bool "Locale definitions"
482         default y
483         help
484           This option group includes all locale definitions other than
485           that for the "C" locale.  If this option group is omitted, then
486           only the "C" locale is supported.
487
488
489 config EGLIBC_OPTION_EGLIBC_LOCALE_CODE
490         bool "Locale functions"
491         default y
492         select EGLIBC_OPTION_POSIX_C_LANG_WIDE_CHAR
493         help
494           This option group includes locale support functions, programs,
495           and libraries.  With EGLIBC_OPTION_EGLIBC_LOCALE_CODE disabled,
496           EGLIBC supports only the 'C' locale (also known as 'POSIX'),
497           and ignores the settings of the 'LANG' and 'LC_*' environment
498           variables.
499
500           With EGLIBC_OPTION_EGLIBC_LOCALE_CODE disabled, the following
501           functions are omitted from libc:
502
503                 duplocale   localeconv  nl_langinfo    rpmatch  strfmon_l
504                 freelocale  newlocale   nl_langinfo_l  strfmon  uselocale
505
506           Furthermore, only the LC_CTYPE and LC_TIME categories of the
507           standard "C" locale are available.
508
509           The EGLIBC_OPTION_EGLIBC_CATGETS option group depends on this option
510           group; if you disable EGLIBC_OPTION_EGLIBC_LOCALE_CODE, you must also
511           disable EGLIBC_OPTION_EGLIBC_CATGETS.
512
513
514 config EGLIBC_OPTION_EGLIBC_MEMUSAGE
515         bool "Memory profiling library"
516         default y
517         help
518           This option group includes the `libmemusage' library and
519           the `memusage' and `memusagestat' utilities.
520           These components provide memory profiling functions.
521
522           EGLIBC_OPTION_EGLIBC_MEMUSAGE_DEFAULT_BUFFER_SIZE
523
524           Libmemusage library buffers the profiling data in memory
525           before writing it out to disk.  By default, the library
526           allocates 1.5M buffer, which can be substantial for some
527           systems.  EGLIBC_OPTION_EGLIBC_MEMUSAGE_DEFAULT_BUFFER_SIZE option
528           allows to change the default buffer size.  It specifies
529           the number of entries the buffer should have.
530           On most architectures one buffer entry amounts to 48 bytes,
531           so setting this option to the value of 512 will reduce the size of
532           the memory buffer to 24K.
533
534
535 config EGLIBC_OPTION_EGLIBC_NIS
536         bool "Support for NIS, NIS+, and the special 'compat' services."
537         default y
538         select EGLIBC_OPTION_EGLIBC_INET
539         select EGLIBC_OPTION_EGLIBC_SUNRPC
540         help
541           This option group includes the NIS, NIS+, and 'compat' Name
542           Service Switch service libraries.  When it is disabled, those
543           services libraries are not installed; you should remove any
544           references to them from your 'nsswitch.conf' file.
545
546           This option group depends on the EGLIBC_OPTION_EGLIBC_INET option
547           group; you must enable that to enable this option group.
548
549
550 config EGLIBC_OPTION_EGLIBC_NSSWITCH
551         bool "Name service switch (nsswitch) support"
552         default y
553         select EGLIBC_OPTION_EGLIBC_INET
554         help
555
556           This option group includes support for the 'nsswitch' facility.
557           With this option group enabled, all EGLIBC functions for
558           accessing various system databases (passwords and groups;
559           networking; aliases; public keys; and so on) consult the
560           '/etc/nsswitch.conf' configuration file to decide how to handle
561           queries.
562
563           With this option group disabled, EGLIBC uses a fixed list of
564           services to satisfy queries on each database, as requested by
565           configuration files specified when EGLIBC is built.  Your
566           'option-groups.config' file must set the following two
567           variables:
568
569           EGLIBC_OPTION_EGLIBC_NSSWITCH_FIXED_CONFIG
570
571                 Set this to the name of a file whose contents observe the
572                 same syntax as an ordinary '/etc/nsswitch.conf' file.  The
573                 EGLIBC build process parses this file just as EGLIBC would
574                 at run time if EGLIBC_NSSWITCH were enabled, and
575                 produces a C library that uses the nsswitch service
576                 libraries to search for database entries as this file
577                 specifies, instead of consulting '/etc/nsswitch.conf' at run
578                 time.
579
580                 This should be an absolute filename.  The EGLIBC build
581                 process may use it from several different working
582                 directories.  It may include references to Makefile
583                 variables like 'common-objpfx' (the top of the build tree,
584                 with a trailing slash), or '..' (the top of the source tree,
585                 with a trailing slash).
586
587                 The EGLIBC source tree includes a sample configuration file
588                 named 'nss/fixed-nsswitch.conf'; for simple configurations,
589                 you will probably want to delete references to databases not
590                 needed on your system.
591
592           EGLIBC_OPTION_EGLIBC_NSSWITCH_FIXED_FUNCTIONS
593
594                 The EGLIBC build process uses this file to decide which
595                 functions to make available from which service libraries.
596                 The file 'nss/fixed-nsswitch.functions' serves as a sample
597                 configuration file for this setting, and explains its syntax
598                 and meaning in more detail.
599
600                 This should be an absolute file name.  The EGLIBC build
601                 process may use it from several different working
602                 directories.  It may include references to Makefile
603                 variables like 'common-objpfx' (the top of the build tree,
604                 with a trailing slash), or '..' (the top of the source tree,
605                 with a trailing slash).
606
607                 Be sure to mention each function in each service you wish to
608                 use.  If you do not mention a service's function here, the
609                 EGLIBC database access functions will not find it, even if
610                 it is listed in the EGLIBC_OPTION_EGLIBC_NSSWITCH_FIXED_CONFIG
611                 file.
612
613           In this arrangement, EGLIBC will not use the 'dlopen' and
614           'dlsym' functions to find database access functions.  Instead,
615           libc hard-codes references to the service libraries' database
616           access functions.  You must explicitly link your program
617           against the name service libraries (those whose names start
618           with 'libnss_', in the sysroot's '/lib' directory) whose
619           functions you intend to use.  This arrangement helps
620           system-wide static analysis tools decide which functions a
621           system actually uses.
622
623           Note that some nsswitch service libraries require other option
624           groups to be enabled; for example, the EGLIBC_OPTION_EGLIBC_INET
625           option group must be enabled to use the 'libnss_dns.so.2'
626           service library, which uses the Domain Name System network
627           protocol to answer queries.
628
629
630 config EGLIBC_OPTION_EGLIBC_RCMD
631         bool "Support for 'rcmd' and related library functions"
632         default y
633         select EGLIBC_OPTION_EGLIBC_INET
634         help
635           This option group includes functions for running commands on
636           remote machines via the 'rsh' protocol, and doing authentication
637           related to those functions.  This also includes functions that
638           use the 'rexec' protocol.
639
640           This option group includes the following functions:
641
642                 rcmd            ruserok
643                 rcmd_af         ruserok_af
644                 rexec           iruserok
645                 rexec_af        iruserok_af
646                 rresvport       ruserpass
647                 rresvport_af
648
649
650 config EGLIBC_OPTION_EGLIBC_RTLD_DEBUG
651         bool "Runtime linker debug print outs"
652         default y
653         help
654           This option group enables debug output of the runtime linker
655           which is activated via LD_DEBUG and LD_TRACE_PRELINKING
656           environment variables.  Disabling this option group yields
657           a smaller runtime linker binary.
658           BEWARE: Disabling this option group is likely to break
659           the `ldd' utility which may also be used by the prelinker.
660           In particular, the `--unused' ldd option will not work correctly.
661
662
663 config EGLIBC_OPTION_EGLIBC_SPAWN
664         bool "Support for POSIX posix_spawn functions"
665         default y
666         help
667           This option group includes the POSIX functions for executing
668           programs in child processes without using 'fork' or 'vfork'.
669
670           This option group includes the following functions:
671
672                 posix_spawn
673                 posix_spawnattr_destroy
674                 posix_spawnattr_getflags
675                 posix_spawnattr_getpgroup
676                 posix_spawnattr_getschedparam
677                 posix_spawnattr_getschedpolicy
678                 posix_spawnattr_getsigdefault
679                 posix_spawnattr_getsigmask
680                 posix_spawnattr_init
681                 posix_spawnattr_setflags
682                 posix_spawnattr_setpgroup
683                 posix_spawnattr_setschedparam
684                 posix_spawnattr_setschedpolicy
685                 posix_spawnattr_setsigdefault
686                 posix_spawnattr_setsigmask
687                 posix_spawn_file_actions_addclose
688                 posix_spawn_file_actions_adddup2
689                 posix_spawn_file_actions_addopen
690                 posix_spawn_file_actions_destroy
691                 posix_spawn_file_actions_init
692                 posix_spawnp
693
694           This option group also provides the ability for the iconv,
695           localedef, and locale programs to operate transparently on
696           compressed charset definitions.  When this option group is
697           disabled, those programs will only operate on uncompressed
698           charmap files.
699
700
701 config EGLIBC_OPTION_EGLIBC_STREAMS
702         bool "Support for accessing STREAMS."
703         default y
704         help
705           This option group includes functions for reading and writing
706           messages to and from STREAMS.  The STREAMS interface provides a
707           uniform mechanism for implementing networking services and other
708           character-based I/O.  (STREAMS are not to be confused with
709           <stdio.h> FILE objects, also called 'streams'.)
710
711           This option group includes the following functions:
712
713                 getmsg          putpmsg
714                 getpmsg         fattach
715                 isastream       fdetach
716                 putmsg
717
718
719 config EGLIBC_OPTION_EGLIBC_SUNRPC
720         bool "Support for the Sun 'RPC' protocol."
721         default y
722         select EGLIBC_OPTION_EGLIBC_INET
723         help
724           This option group includes support for the Sun RPC protocols,
725           including the 'rpcgen' and 'rpcinfo' programs.
726
727
728 config EGLIBC_OPTION_EGLIBC_UTMP
729         bool "Older access functions for 'utmp' login records"
730         default y
731         help
732           This option group includes the older 'utent' family of
733           functions for accessing user login records in the 'utmp' file.
734           POSIX omits these functions in favor of the 'utxent' family,
735           and they are obsolete on systems other than Linux.
736
737           This option group includes the following functions:
738
739                 endutent
740                 getutent
741                 getutent_r
742                 getutid
743                 getutid_r
744                 getutline
745                 getutline_r
746                 logwtmp
747                 pututline
748                 setutent
749                 updwtmp
750                 utmpname
751
752           This option group includes the following libraries:
753
754                 libutil.so (and libutil.a)
755
756
757 config EGLIBC_OPTION_EGLIBC_UTMPX
758         bool "POSIX access functions for 'utmp' login records"
759         default y
760         select EGLIBC_OPTION_EGLIBC_UTMP    
761         help
762           This option group includes the POSIX functions for reading and
763           writing user login records in the 'utmp' file (usually
764           '/var/run/utmp').  The POSIX functions operate on 'struct
765           utmpx' structures, as opposed to the family of older 'utent'
766           functions, which operate on 'struct utmp' structures.
767
768           This option group includes the following functions:
769
770                 endutxent
771                 getutmp
772                 getutmpx
773                 getutxent
774                 getutxid
775                 getutxline
776                 pututxline
777                 setutxent
778                 updwtmpx
779                 utmpxname
780
781
782 config EGLIBC_OPTION_EGLIBC_WORDEXP
783         bool "Shell-style word expansion"
784         default y
785         help
786           This option group includes the 'wordexp' function for
787           performing word expansion in the manner of the shell, and the
788           accompanying 'wordfree' function.
789
790
791 config EGLIBC_OPTION_POSIX_C_LANG_WIDE_CHAR
792         bool "ISO C library wide character functions, excluding I/O"
793         default y
794         help
795           This option group includes the functions defined by the ISO C
796           standard for working with wide and multibyte characters in
797           memory.  Functions for reading and writing wide and multibyte
798           characters from and to files call in the
799           EGLIBC_OPTION_POSIX_WIDE_CHAR_DEVICE_IO option group.
800
801           This option group includes the following functions:
802
803                 btowc         mbsinit       wcscspn       wcstoll
804                 iswalnum      mbsrtowcs     wcsftime      wcstombs
805                 iswalpha      mbstowcs      wcslen        wcstoul
806                 iswblank      mbtowc        wcsncat       wcstoull
807                 iswcntrl      swprintf      wcsncmp       wcstoumax
808                 iswctype      swscanf       wcsncpy       wcsxfrm
809                 iswdigit      towctrans     wcspbrk       wctob
810                 iswgraph      towlower      wcsrchr       wctomb
811                 iswlower      towupper      wcsrtombs     wctrans
812                 iswprint      vswprintf     wcsspn        wctype
813                 iswpunct      vswscanf      wcsstr        wmemchr
814                 iswspace      wcrtomb       wcstod        wmemcmp
815                 iswupper      wcscat        wcstof        wmemcpy
816                 iswxdigit     wcschr        wcstoimax     wmemmove
817                 mblen         wcscmp        wcstok        wmemset
818                 mbrlen        wcscoll       wcstol
819                 mbrtowc       wcscpy        wcstold
820
821
822 config EGLIBC_OPTION_POSIX_REGEXP
823         bool "Regular expressions"
824         default y
825         help
826           This option group includes the POSIX regular expression
827           functions, and the associated non-POSIX extensions and
828           compatibility functions.
829
830           With EGLIBC_OPTION_POSIX_REGEXP disabled, the following functions are
831           omitted from libc:
832
833                 re_comp                 re_max_failures         regcomp
834                 re_compile_fastmap      re_search               regerror
835                 re_compile_pattern      re_search_2             regexec
836                 re_exec                 re_set_registers        regfree
837                 re_match                re_set_syntax           rpmatch
838                 re_match_2              re_syntax_options
839
840           Furthermore, the compatibility regexp interface defined in the
841           <regexp.h> header file, 'compile', 'step', and 'advance', is
842           omitted.
843
844
845 config EGLIBC_OPTION_POSIX_REGEXP_GLIBC
846         bool "Regular expressions from GLIBC"
847         default y
848         select EGLIBC_OPTION_POSIX_REGEXP
849         help
850           This option group specifies which regular expression
851           library to use.  The choice is between regex
852           implementation from GLIBC and regex implementation from
853           libiberty.  The GLIBC variant is fully POSIX conformant and
854           optimized for speed; regex from libiberty is more than twice
855           as small while still is enough for most practical purposes.
856
857
858 config EGLIBC_OPTION_POSIX_WIDE_CHAR_DEVICE_IO
859         bool "Input and output functions for wide characters"
860         default y
861         select EGLIBC_OPTION_POSIX_C_LANG_WIDE_CHAR
862         help
863           This option group includes functions for reading and writing
864           wide characters to and from <stdio.h> streams.
865
866           This option group includes the following functions:
867
868                 fgetwc        fwprintf      putwchar      vwscanf
869                 fgetws        fwscanf       ungetwc       wprintf
870                 fputwc        getwc         vfwprintf     wscanf
871                 fputws        getwchar      vfwscanf
872                 fwide         putwc         vwprintf
873
874           This option group further includes the following unlocked
875           variants of the above functions:
876
877                 fgetwc_unlocked           getwc_unlocked
878                 fgetws_unlocked           getwchar_unlocked
879                 fputwc_unlocked           putwc_unlocked
880                 fputws_unlocked           putwchar_unlocked
881                                         
882           Note that the GNU standard C++ library, 'libstdc++.so', uses
883           some of these functions; you will not be able to link or run
884           C++ programs if you disable this option group.
885
886           This option group also affects the behavior of the following
887           functions:
888
889                 fdopen
890                 fopen
891                 fopen64
892                 freopen
893                 freopen64
894
895           These functions all take an OPENTYPE parameter which may
896           contain a string of the form ",ccs=CHARSET", indicating that
897           the underlying file uses the character set named CHARSET.
898           This produces a wide-oriented stream, which is only useful
899           when the functions included in this option group are present.
900           If the user attempts to open a file specifying a character set
901           in the OPENTYPE parameter, and EGLIBC was built with this
902           option group disabled, the function returns NULL, and sets
903           errno to EINVAL.