Config.in 32 KB

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