Changeset 3234

Show
Ignore:
Timestamp:
07/16/07 16:47:44 (5 years ago)
Author:
tg
Message:

part Ⅱ – simplify busybox config, ok wbx@
from now on, you can select a smaller and a fuller busybox, like mksh;
if you want fewer applets, hand-edit the config, we won't prevent you,
but shan't support it in the ADK any more; if you want more applets,
please talk to me and I'll see if they can be included in the list

we still have a problem regarding duplicate binaries (ip, free, tar, …)
which could be solved with dpkg diversions if ipkg supports them;
for now just consider busybox a non-upgradable package if you have any
of these installed

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/freewrt/mk/build.mk

    r3210 r3234  
    140140 
    141141# add patterns for config symbols to always restore from default here 
    142 RESTORE_PATTERNS := BUSYBOX CCACHE FWRT_RUNTIME 
     142RESTORE_PATTERNS := CCACHE FWRT_RUNTIME 
    143143.NOTPARALLEL: _mconfig 
    144144_mconfig: ${CONFIG}/conf _mconfig2 _config 
  • trunk/freewrt/package/6tunnel/Config.in

    r2519 r3234  
    55        default n 
    66        select FWRT_KPACKAGE_KMOD_IPV6 
    7         select BUSYBOX_CONFIG_FEATURE_IPV6 
    87        help 
    98          6tunnel allows you to use services provided by IPv6 hosts with IPv4-only  
  • trunk/freewrt/package/Config.in.network

    r3208 r3234  
    33        default n 
    44        select FWRT_KPACKAGE_KMOD_IPV6 
    5         select BUSYBOX_CONFIG_FEATURE_IPV6 
    6         select BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IPV6 
    75        help 
    86          Enable basic IPv6 support (kmod-ipv6) and 
  • trunk/freewrt/package/aiccu/Config.in

    r2519 r3234  
    66        select FWRT_KPACKAGE_KMOD_IPV6 
    77        select FWRT_PACKAGE_LIBPTHREAD 
    8         select BUSYBOX_CONFIG_FEATURE_IPV6 
    98        help 
    109          SixXS Automatic IPv6 Connectivity Client Utility 
  • trunk/freewrt/package/busybox/Config.in

    r3215 r3234  
    1212          Most people will answer Y. 
    1313 
    14 # if this is enabled, halt/poweroff/reboot aren't included in the .ipk 
    15 config BUSYBOX_CONFIG_FEATURE_FWCF_REBOOT 
    16         bool 
    17         default n 
    18  
    19 menu "Busybox Configuration" 
    20         depends FWRT_PACKAGE_BUSYBOX 
    21  
    22 
    23 # For a description of the syntax of this configuration file, 
    24 # see scripts/kbuild/config-language.txt. 
    25 
    26  
    27 #mainmenu "BusyBox Configuration" 
    28  
    29 config BUSYBOX_CONFIG_HAVE_DOT_CONFIG 
    30         bool 
    31         default y 
    32  
    33 menu "Busybox Settings" 
    34  
    35 menu "General Configuration" 
    36  
    37 config BUSYBOX_CONFIG_NITPICK 
    38         bool "See lots more (probably unnecessary) configuration options." 
    39         default n 
    40         help 
    41           Some BusyBox applets have more configuration options than anyone 
    42           will ever care about.  To avoid drowining people in complexity, most 
    43           of the applet features that can be set to a sane default value are 
    44           hidden, unless you hit the above switch. 
    45  
    46           This is better than to telling people to edit the busybox source 
    47           code, but not by much. 
    48  
    49           See http://en.wikipedia.org/wiki/Fibber_McGee_and_Molly#The_Closet 
    50  
    51           You have been warned. 
    52  
    53 config BUSYBOX_CONFIG_DESKTOP 
    54         bool "Enable options for full-blown desktop systems" 
    55         default n 
    56         help 
    57           Enable options and features which are not essential. 
    58           Select this only if you plan to use busybox on full-blown 
    59           desktop machine with common Linux distro, not on an embedded box. 
    60  
    61 choice 
    62         prompt "Buffer allocation policy" 
    63         default BUSYBOX_CONFIG_FEATURE_BUFFERS_USE_MALLOC 
    64         depends on BUSYBOX_CONFIG_NITPICK 
    65         help 
    66           There are 3 ways BusyBox can handle buffer allocations: 
    67           - Use malloc. This costs code size for the call to xmalloc. 
    68           - Put them on stack. For some very small machines with limited stack 
    69             space, this can be deadly.  For most folks, this works just fine. 
    70           - Put them in BSS. This works beautifully for computers with a real 
    71             MMU (and OS support), but wastes runtime RAM for uCLinux. This 
    72             behavior was the only one available for BusyBox versions 0.48 and 
    73             earlier. 
    74  
    75 config BUSYBOX_CONFIG_FEATURE_BUFFERS_USE_MALLOC 
    76         bool "Allocate with Malloc" 
    77  
    78 config BUSYBOX_CONFIG_FEATURE_BUFFERS_GO_ON_STACK 
    79         bool "Allocate on the Stack" 
    80  
    81 config BUSYBOX_CONFIG_FEATURE_BUFFERS_GO_IN_BSS 
    82         bool "Allocate in the .bss section" 
    83  
    84 endchoice 
    85  
    86 config BUSYBOX_CONFIG_SHOW_USAGE 
    87         bool "Show terse applet usage messages" 
     14config FWRT_PACKAGE_BUSYBOX_SMALL 
     15        bool "  Build an extra small busybox" 
     16        depends on FWRT_PACKAGE_BUSYBOX 
    8817        default y 
    8918        help 
    90           All BusyBox applets will show help messages when invoked with 
    91           wrong arguments. You can turn off printing these terse usage 
    92           messages if you say no here. 
    93           This will save you up to 7k. 
    94  
    95 config BUSYBOX_CONFIG_FEATURE_VERBOSE_USAGE 
    96         bool "Show verbose applet usage messages" 
    97         default y 
    98         select BUSYBOX_CONFIG_SHOW_USAGE 
    99         help 
    100           All BusyBox applets will show more verbose help messages when 
    101           busybox is invoked with --help.  This will add a lot of text to the 
    102           busybox binary.  In the default configuration, this will add about 
    103           13k, but it can add much more depending on your configuration. 
    104  
    105 config BUSYBOX_CONFIG_FEATURE_COMPRESS_USAGE 
    106         bool 
    107         default n 
    108  
    109 config BUSYBOX_CONFIG_FEATURE_INSTALLER 
    110         bool "Support --install [-s] to install applet links at runtime" 
    111         default n 
    112         help 
    113           Enable 'busybox --install [-s]' support.  This will allow you to use 
    114           busybox at runtime to create hard links or symlinks for all the 
    115           applets that are compiled into busybox.  This feature requires the 
    116           /proc filesystem. 
    117  
    118 config BUSYBOX_CONFIG_LOCALE_SUPPORT 
    119         bool "Enable locale support (system needs locale for this to work)" 
    120         default n 
    121         help 
    122           Enable this if your system has locale support and you would like 
    123           busybox to support locale settings. 
    124  
    125 config BUSYBOX_CONFIG_GETOPT_LONG 
    126         bool 
    127         default y 
    128 #       bool "Enable support for --long-options" 
    129 #       default y 
    130 #       help 
    131 #         Enable this if you want busybox applets to use the gnu --long-option 
    132 #         style, in addition to single character -a -b -c style options. 
    133  
    134 config BUSYBOX_CONFIG_FEATURE_DEVPTS 
    135         bool "Use the devpts filesystem for Unix98 PTYs" 
    136         default y 
    137         help 
    138           Enable if you want BusyBox to use Unix98 PTY support. If enabled, 
    139           busybox will use /dev/ptmx for the master side of the pseudoterminal 
    140           and /dev/pts/<number> for the slave side.  Otherwise, BSD style 
    141           /dev/ttyp<number> will be used. To use this option, you should have 
    142           devpts mounted. 
    143  
    144 config BUSYBOX_CONFIG_FEATURE_CLEAN_UP 
    145         bool "Clean up all memory before exiting (usually not needed)" 
    146         default n 
    147         depends on BUSYBOX_CONFIG_NITPICK 
    148         help 
    149           As a size optimization, busybox normally exits without explicitly 
    150           freeing dynamically allocated memory or closing files.  This saves 
    151           space since the OS will clean up for us, but it can confuse debuggers 
    152           like valgrind, which report tons of memory and resource leaks. 
    153  
    154           Don't enable this unless you have a really good reason to clean 
    155           things up manually. 
    156  
    157 config BUSYBOX_CONFIG_FEATURE_SUID 
    158         bool "Support for SUID/SGID handling" 
    159         default n 
    160         help 
    161           With this option you can install the busybox binary belonging 
    162           to root with the suid bit set, and it'll and it'll automatically drop 
    163           priviledges for applets that don't need root access. 
    164  
    165           If you're really paranoid and don't want to do this, build two 
    166           busybox binaries with different applets in them (and the appropriate 
    167           symlinks pointing to each binary), and only set the suid bit on the 
    168           one that needs it.  The applets currently marked to need the suid bit 
    169           are login, passwd, su, ping, traceroute, crontab, dnsd, ipcrm, ipcs, 
    170           and vlock. 
    171  
    172 config BUSYBOX_CONFIG_FEATURE_SYSLOG 
    173         bool "Support for syslog" 
    174         default n 
    175         help 
    176           This option is auto-selected when you select any applet which may 
    177           send its output to syslog. You do not need to select it manually. 
    178  
    179 config BUSYBOX_CONFIG_FEATURE_SUID_CONFIG 
    180         bool "Runtime SUID/SGID configuration via /etc/busybox.conf" 
    181         default n if BUSYBOX_CONFIG_FEATURE_SUID 
    182         depends on BUSYBOX_CONFIG_FEATURE_SUID 
    183         help 
    184           Allow the SUID / SGID state of an applet to be determined at runtime 
    185           by checking /etc/busybox.conf.  (This is sort of a poor man's sudo.) 
    186           The format of this file is as follows: 
    187  
    188           <applet> = [Ssx-][Ssx-][x-] (<username>|<uid>).(<groupname>|<gid>) 
    189  
    190           An example might help: 
    191  
    192           [SUID] 
    193           su = ssx root.0 # applet su can be run by anyone and runs with euid=0/egid=0 
    194           su = ssx        # exactly the same 
    195  
    196           mount = sx- root.disk # applet mount can be run by root and members of group disk 
    197                                 # and runs with euid=0 
    198  
    199           cp = --- # disable applet cp for everyone 
    200  
    201           The file has to be owned by user root, group root and has to be 
    202           writeable only by root: 
    203                 (chown 0.0 /etc/busybox.conf; chmod 600 /etc/busybox.conf) 
    204           The busybox executable has to be owned by user root, group 
    205           root and has to be setuid root for this to work: 
    206                 (chown 0.0 /bin/busybox; chmod 4755 /bin/busybox) 
    207  
    208           Robert 'sandman' Griebl has more information here: 
    209           <url: http://www.softforge.de/bb/suid.html >. 
    210  
    211 config BUSYBOX_CONFIG_FEATURE_SUID_CONFIG_QUIET 
    212         bool "Suppress warning message if /etc/busybox.conf is not readable" 
    213         default y 
    214         depends on BUSYBOX_CONFIG_FEATURE_SUID_CONFIG 
    215         help 
    216           /etc/busybox.conf should be readable by the user needing the SUID, check 
    217           this option to avoid users to be notified about missing permissions. 
    218  
    219 config BUSYBOX_CONFIG_FEATURE_HAVE_RPC 
    220         bool "RPC support" 
    221         default y 
    222         help 
    223           Select this if you have rpc support. 
    224           This automatically turns off all configuration options that rely 
    225           on RPC. 
    226  
    227 config BUSYBOX_CONFIG_SELINUX 
    228         bool "Support NSA Security Enhanced Linux" 
    229         default n 
    230         help 
    231           Enable support for SELinux in applets ls, ps, and id.  Also provide 
    232           the option of compiling in SELinux applets. 
    233  
    234           If you do not have a complete SELinux userland installed, this stuff 
    235           will not compile. Go visit 
    236                 http://www.nsa.gov/selinux/index.html 
    237           to download the necessary stuff to allow busybox to compile with 
    238           this option enabled. Specifially, libselinux 1.28 or better is 
    239           directly required by busybox. If the installation is located in a 
    240           non-standard directory, provide it by invoking make as follows: 
    241                 CFLAGS=-I<libselinux-include-path> \ 
    242                 LDFLAGS=-L<libselinux-lib-path> \ 
    243                 make 
    244  
    245           Most people will leave this set to 'N'. 
    246  
    247 config BUSYBOX_CONFIG_BUSYBOX_EXEC_PATH 
    248         string "Path to BusyBox executable" 
    249         default "/proc/self/exe" 
    250         help 
    251           When Busybox applets need to run other busybox applets, BusyBox 
    252           sometimes needs to exec() itself.  When the /proc filesystem is 
    253           mounted, /proc/self/exe always points to the currently running 
    254           executable.  If you haven't got /proc, set this to wherever you 
    255           want to run BusyBox from. 
    256  
    257 endmenu 
    258  
    259 menu 'Build Options' 
    260  
    261 config BUSYBOX_CONFIG_STATIC 
    262         bool "Build BusyBox as a static binary (no shared libs)" 
    263         default n 
    264         help 
    265           If you want to build a static BusyBox binary, which does not 
    266           use or require any shared libraries, then enable this option. 
    267           This can cause BusyBox to be considerably larger, so you should 
    268           leave this option false unless you have a good reason (i.e. 
    269           your target platform does not support shared libraries, or 
    270           you are building an initrd which doesn't need anything but 
    271           BusyBox, etc). 
    272  
    273           Most people will leave this set to 'N'. 
    274  
    275 config BUSYBOX_CONFIG_BUILD_LIBBUSYBOX 
    276         bool "Build shared libbusybox" 
    277         default n 
    278         help 
    279           Build a shared library libbusybox.so which contains all 
    280           libraries used inside busybox. 
    281  
    282           This is an experimental feature intended to support the upcoming 
    283           "make standalone" mode.  Enabling it against the one big busybox 
    284           binary serves no purpose (and increases the size).  You should 
    285           almost certainly say "no" to this right now. 
    286  
    287 config BUSYBOX_CONFIG_FEATURE_FULL_LIBBUSYBOX 
    288         bool "Feature-complete libbusybox" 
    289         default n if !BUSYBOX_CONFIG_FEATURE_SHARED_BUSYBOX 
    290         depends on BUSYBOX_CONFIG_BUILD_LIBBUSYBOX 
    291         help 
    292           Build a libbusybox with the complete feature-set, disregarding 
    293           the actually selected config. 
    294  
    295           Normally, libbusybox will only contain the features which are 
    296           used by busybox itself. If you plan to write a separate 
    297           standalone application which uses libbusybox say 'Y'. 
    298  
    299           Note: libbusybox is GPL, not LGPL, and exports no stable API that 
    300           might act as a copyright barrier.  We can and will modify the 
    301           exported function set between releases (even minor version number 
    302           changes), and happily break out-of-tree features. 
    303  
    304           Say 'N' if in doubt. 
    305  
    306 config BUSYBOX_CONFIG_FEATURE_SHARED_BUSYBOX 
    307         bool "Use shared libbusybox for busybox" 
    308         default y if BUSYBOX_CONFIG_BUILD_LIBBUSYBOX 
    309         depends on !BUSYBOX_CONFIG_STATIC && BUSYBOX_CONFIG_BUILD_LIBBUSYBOX 
    310         help 
    311           Use libbusybox.so also for busybox itself. 
    312           You need to have a working dynamic linker to use this variant. 
    313  
    314 config BUSYBOX_CONFIG_LFS 
    315         bool "Build with Large File Support (for accessing files > 2 GB)" 
    316         default y 
    317         select BUSYBOX_CONFIG_FDISK_SUPPORT_LARGE_DISKS 
    318         help 
    319           If you want to build BusyBox with large file support, then enable 
    320           this option.  This will have no effect if your kernel or your C 
    321           library lacks large file support for large files.  Some of the 
    322           programs that can benefit from large file support include dd, gzip, 
    323           cp, mount, tar, and many others.  If you want to access files larger 
    324           than 2 Gigabytes, enable this option.  Otherwise, leave it set to 'N'. 
    325  
    326 config BUSYBOX_CONFIG_BUILD_AT_ONCE 
    327         bool "Compile all sources at once" 
    328         default n 
    329         help 
    330           Normally each source-file is compiled with one invocation of 
    331           the compiler. 
    332           If you set this option, all sources are compiled at once. 
    333           This gives the compiler more opportunities to optimize which can 
    334           result in smaller and/or faster binaries. 
    335  
    336           Setting this option will consume alot of memory, e.g. if you 
    337           enable all applets with all features, gcc uses more than 300MB 
    338           RAM during compilation of busybox. 
    339  
    340           This option is most likely only beneficial for newer compilers 
    341           such as gcc-4.1 and above. 
    342  
    343           Say 'N' unless you know what you are doing. 
    344  
    345 endmenu 
    346  
    347 menu 'Debugging Options' 
    348  
    349 config BUSYBOX_CONFIG_DEBUG 
    350         bool "Build BusyBox with extra Debugging symbols" 
    351         default n 
    352         help 
    353           Say Y here if you wish to examine BusyBox internals while applets are 
    354           running.  This increases the size of the binary considerably, and 
    355           should only be used when doing development.  If you are doing 
    356           development and want to debug BusyBox, answer Y. 
    357  
    358           Most people should answer N. 
    359  
    360 config BUSYBOX_CONFIG_DEBUG_PESSIMIZE 
    361         bool "Disable compiler optimizations." 
    362         default n 
    363         depends on BUSYBOX_CONFIG_DEBUG 
    364         help 
    365           The compiler's optimization of source code can eliminate and reorder 
    366           code, resulting in an executable that's hard to understand when 
    367           stepping through it with a debugger.  This switches it off, resulting 
    368           in a much bigger executable that more closely matches the source 
    369           code. 
    370  
    371 choice 
    372         prompt "Additional debugging library" 
    373         default BUSYBOX_CONFIG_NO_DEBUG_LIB 
    374         depends on BUSYBOX_CONFIG_DEBUG 
    375         help 
    376           Using an additional debugging library will make BusyBox become 
    377           considerable larger and will cause it to run more slowly.  You 
    378           should always leave this option disabled for production use. 
    379  
    380           dmalloc support: 
    381           ---------------- 
    382           This enables compiling with dmalloc ( http://dmalloc.com/ ) 
    383           which is an excellent public domain mem leak and malloc problem 
    384           detector.  To enable dmalloc, before running busybox you will 
    385           want to properly set your environment, for example: 
    386             export DMALLOC_OPTIONS=debug=0x34f47d83,inter=100,log=logfile 
    387           The 'debug=' value is generated using the following command 
    388             dmalloc -p log-stats -p log-non-free -p log-bad-space -p log-elapsed-time \ 
    389                -p check-fence -p check-heap -p check-lists -p check-blank \ 
    390                -p check-funcs -p realloc-copy -p allow-free-null 
    391  
    392           Electric-fence support: 
    393           ----------------------- 
    394           This enables compiling with Electric-fence support.  Electric 
    395           fence is another very useful malloc debugging library which uses 
    396           your computer's virtual memory hardware to detect illegal memory 
    397           accesses.  This support will make BusyBox be considerable larger 
    398           and run slower, so you should leave this option disabled unless 
    399           you are hunting a hard to find memory problem. 
    400  
    401  
    402 config BUSYBOX_CONFIG_NO_DEBUG_LIB 
    403         bool "None" 
    404  
    405 config BUSYBOX_CONFIG_DMALLOC 
    406         bool "Dmalloc" 
    407  
    408 config BUSYBOX_CONFIG_EFENCE 
    409         bool "Electric-fence" 
    410  
    411 endchoice 
    412  
    413 config BUSYBOX_CONFIG_INCLUDE_SUSv2 
    414         bool "Enable obsolete features removed before SUSv3?" 
    415         default n 
    416         help 
    417           This option will enable backwards compatibility with SuSv2, 
    418           specifically, old-style numeric options ('command -1 <file>') 
    419           will be supported in head, tail, and fold.  (Note: should 
    420           affect renice too.) 
    421  
    422 endmenu 
    423  
    424 menu 'Installation Options' 
    425  
    426 config BUSYBOX_CONFIG_INSTALL_NO_USR 
    427         bool "Don't use /usr" 
    428         default n 
    429         help 
    430           Disable use of /usr. Don't activate this option if you don't know 
    431           that you really want this behaviour. 
    432  
    433 choice 
    434        prompt "Applets links" 
    435        default BUSYBOX_CONFIG_INSTALL_APPLET_SYMLINKS 
    436        help 
    437          Choose how you install applets links. 
    438  
    439 config BUSYBOX_CONFIG_INSTALL_APPLET_SYMLINKS 
    440        bool "as soft-links" 
    441        help 
    442          Install applets as soft-links to the busybox binary. This needs some 
    443          free inodes on the filesystem, but might help with filesystem 
    444          generators that can't cope with hard-links. 
    445  
    446 config BUSYBOX_CONFIG_INSTALL_APPLET_HARDLINKS 
    447        bool "as hard-links" 
    448        help 
    449          Install applets as hard-links to the busybox binary. This might count 
    450          on a filesystem with few inodes. 
    451  
    452 config BUSYBOX_CONFIG_INSTALL_APPLET_DONT 
    453        bool 
    454        prompt "not installed" 
    455        depends on BUSYBOX_CONFIG_FEATURE_INSTALLER || BUSYBOX_CONFIG_FEATURE_SH_STANDALONE_SHELL 
    456        help 
    457          Do not install applet links. Useful when using the -install feature 
    458          or a standalone shell for rescue pruposes. 
    459  
    460 endchoice 
    461  
    462 config BUSYBOX_CONFIG_PREFIX 
    463         string "BusyBox installation prefix" 
    464         default "./_install" 
    465         help 
    466           Define your directory to install BusyBox files/subdirs in. 
    467  
    468 endmenu 
    469  
    470 
    471 # For a description of the syntax of this configuration file, 
    472 # see scripts/kbuild/config-language.txt. 
    473 
    474  
    475 menu "Busybox Library Tuning" 
    476  
    477 config BUSYBOX_CONFIG_PASSWORD_MINLEN 
    478         int "Minimum password length" 
    479         default 6 
    480         range 5 32 
    481         help 
    482           Minimum allowable password length. 
    483  
    484 config BUSYBOX_CONFIG_MD5_SIZE_VS_SPEED 
    485         int " MD5: Trade Bytes for Speed" 
    486         default 2 
    487         range 0 3 
    488         help 
    489           Trade binary size versus speed for the md5sum algorithm. 
    490           Approximate values running uClibc and hashing 
    491           linux-2.4.4.tar.bz2 were: 
    492                             user times (sec)  text size (386) 
    493           0 (fastest)         1.1                6144 
    494           1                   1.4                5392 
    495           2                   3.0                5088 
    496           3 (smallest)        5.1                4912 
    497  
    498 endmenu 
    499  
    500 endmenu 
    501  
    502 comment "Applets" 
    503  
    504 
    505 # For a description of the syntax of this configuration file, 
    506 # see scripts/kbuild/config-language.txt. 
    507 
    508  
    509 menu "Archival Utilities" 
    510  
    511 config BUSYBOX_CONFIG_AR 
    512         bool "ar" 
    513         default n 
    514         help 
    515           ar is an archival utility program used to create, modify, and 
    516           extract contents from archives.  An archive is a single file holding 
    517           a collection of other files in a structure that makes it possible to 
    518           retrieve the original individual files (called archive members). 
    519           The original files' contents, mode (permissions), timestamp, owner, 
    520           and group are preserved in the archive, and can be restored on 
    521           extraction. 
    522  
    523           The stored filename is limited to 15 characters. (for more information 
    524           see long filename support). 
    525           ar has 60 bytes of overheads for every stored file. 
    526  
    527           This implementation of ar can extract archives, it cannot create or 
    528           modify them. 
    529           On an x86 system, the ar applet adds about 1K. 
    530  
    531           Unless you have a specific application which requires ar, you should 
    532           probably say N here. 
    533  
    534 config BUSYBOX_CONFIG_FEATURE_AR_LONG_FILENAMES 
    535         bool "Enable support for long filenames (not need for debs)" 
    536         default n 
    537         depends on BUSYBOX_CONFIG_AR 
    538         help 
    539           By default the ar format can only store the first 15 characters of the 
    540           filename, this option removes that limitation. 
    541           It supports the GNU ar long filename method which moves multiple long 
    542           filenames into a the data section of a new ar entry. 
    543  
    544 config BUSYBOX_CONFIG_BUNZIP2 
    545         bool "bunzip2" 
    546         default n 
    547         help 
    548           bunzip2 is a compression utility using the Burrows-Wheeler block 
    549           sorting text compression algorithm, and Huffman coding.  Compression 
    550           is generally considerably better than that achieved by more 
    551           conventional LZ77/LZ78-based compressors, and approaches the 
    552           performance of the PPM family of statistical compressors. 
    553  
    554           The BusyBox bunzip2 applet is limited to de-compression only. 
    555           On an x86 system, this applet adds about 11K. 
    556  
    557           Unless you have a specific application which requires bunzip2, you 
    558           should probably say N here. 
    559  
    560 config BUSYBOX_CONFIG_CPIO 
    561         bool "cpio" 
    562         default n 
    563         help 
    564           cpio is an archival utility program used to create, modify, and extract 
    565           contents from archives. 
    566           cpio has 110 bytes of overheads for every stored file. 
    567  
    568           This implementation of cpio can extract cpio archives created in the 
    569           "newc" or "crc" format, it cannot create or modify them. 
    570  
    571           Unless you have a specific application which requires cpio, you should 
    572           probably say N here. 
    573  
    574 config BUSYBOX_CONFIG_DPKG 
    575         bool "dpkg" 
    576         default n 
    577         help 
    578           dpkg is a medium-level tool to install, build, remove and manage Debian packages. 
    579  
    580           This implementation of dpkg has a number of limitations, you should use the 
    581           official dpkg if possible. 
    582  
    583 config BUSYBOX_CONFIG_DPKG_DEB 
    584         bool "dpkg_deb" 
    585         default n 
    586         help 
    587           dpkg-deb packs, unpacks and provides information about Debian archives. 
    588  
    589           This implementation of dpkg-deb cannot pack archives. 
    590  
    591           Unless you have a specific application which requires dpkg-deb, you should 
    592           probably say N here. 
    593  
    594 config BUSYBOX_CONFIG_FEATURE_DPKG_DEB_EXTRACT_ONLY 
    595         bool "extract only (-x)" 
    596         default n 
    597         depends on BUSYBOX_CONFIG_DPKG_DEB 
    598         help 
    599           This reduces dpkg-deb to the equivalent of "ar -p <deb> data.tar.gz | tar -zx". 
    600           However it saves space as none of the extra dpkg-deb, ar or tar options are 
    601           needed, they are linked to internally. 
    602  
    603 config BUSYBOX_CONFIG_GUNZIP 
    604         bool "gunzip" 
    605         default y 
    606         help 
    607           gunzip is used to decompress archives created by gzip. 
    608           You can use the `-t' option to test the integrity of 
    609           an archive, without decompressing it. 
    610  
    611 config BUSYBOX_CONFIG_FEATURE_GUNZIP_UNCOMPRESS 
    612         bool "Uncompress support" 
    613         default y 
    614         depends on BUSYBOX_CONFIG_GUNZIP 
    615         help 
    616           Enable if you want gunzip to have the ability to decompress 
    617           archives created by the program compress (not much 
    618           used anymore). 
    619  
    620 config BUSYBOX_CONFIG_GZIP 
    621         bool "gzip" 
    622         default y 
    623         help 
    624           gzip is used to compress files. 
    625           It's probably the most widely used UNIX compression program. 
    626  
    627 config BUSYBOX_CONFIG_IPKG 
    628         bool "ipkg" 
    629         default y 
    630         select BUSYBOX_CONFIG_MD5SUM 
    631         select BUSYBOX_CONFIG_WGET 
    632         help 
    633           ipkg is the itsy package management system. 
    634  
    635 config BUSYBOX_CONFIG_RPM2CPIO 
    636         bool "rpm2cpio" 
    637         default n 
    638         help 
    639           Converts an RPM file into a CPIO archive. 
    640  
    641 config BUSYBOX_CONFIG_RPM 
    642         bool "rpm" 
    643         default n 
    644         help 
    645           Mini RPM applet - queries and extracts RPM packages. 
    646  
    647 config BUSYBOX_CONFIG_TAR 
    648         bool "tar" 
    649         default y 
    650         depends on ! FWRT_PACKAGE_TAR 
    651         help 
    652           tar is an archiving program. It's commonly used with gzip to 
    653           create compressed archives. It's probably the most widely used 
    654           UNIX archive program. 
    655  
    656 config BUSYBOX_CONFIG_FEATURE_TAR_CREATE 
    657         bool "Enable archive creation" 
    658         default y 
    659         depends on BUSYBOX_CONFIG_TAR 
    660         help 
    661           If you enable this option you'll be able to create 
    662           tar archives using the `-c' option. 
    663  
    664 config BUSYBOX_CONFIG_FEATURE_TAR_BZIP2 
    665         bool "Enable -j option to handle .tar.bz2 files" 
    666         default n 
    667         depends on BUSYBOX_CONFIG_TAR 
    668         help 
    669           If you enable this option you'll be able to extract 
    670           archives compressed with bzip2. 
    671  
    672 config BUSYBOX_CONFIG_FEATURE_TAR_LZMA 
    673         bool "Enable -a option to handle .tar.lzma files" 
    674         default n 
    675         depends on BUSYBOX_CONFIG_TAR 
    676         help 
    677           If you enable this option you'll be able to extract 
    678           archives compressed with lzma. 
    679  
    680 config BUSYBOX_CONFIG_FEATURE_TAR_FROM 
    681         bool "Enable -X (exclude from) and -T (include from) options)" 
    682         default y 
    683         depends on BUSYBOX_CONFIG_TAR 
    684         help 
    685           If you enable this option you'll be able to specify 
    686           a list of files to include or exclude from an archive. 
    687  
    688 config BUSYBOX_CONFIG_FEATURE_TAR_GZIP 
    689         bool "Enable -z option" 
    690         default y 
    691         depends on BUSYBOX_CONFIG_TAR 
    692         help 
    693           If you enable this option tar will be able to call gzip, 
    694           when creating or extracting tar gziped archives. 
    695  
    696 config BUSYBOX_CONFIG_FEATURE_TAR_COMPRESS 
    697         bool "Enable -Z option" 
    698         default n 
    699         depends on BUSYBOX_CONFIG_TAR 
    700         help 
    701           If you enable this option tar will be able to call uncompress, 
    702           when extracting .tar.Z archives. 
    703  
    704 config BUSYBOX_CONFIG_FEATURE_TAR_OLDGNU_COMPATIBILITY 
    705         bool "Enable support for old tar header format" 
    706         default n 
    707         depends on BUSYBOX_CONFIG_TAR 
    708         help 
    709           This option is required to unpack archives created in 
    710           the old GNU format; help to kill this old format by 
    711           repacking your ancient archives with the new format. 
    712  
    713 config BUSYBOX_CONFIG_FEATURE_TAR_GNU_EXTENSIONS 
    714         bool "Enable support for some GNU tar extensions" 
    715         default y 
    716         depends on BUSYBOX_CONFIG_TAR 
    717         help 
    718           With this option busybox supports GNU long filenames and 
    719           linknames. 
    720  
    721 config BUSYBOX_CONFIG_FEATURE_TAR_LONG_OPTIONS 
    722         bool "Enable long options" 
    723         default n 
    724         depends on BUSYBOX_CONFIG_TAR && BUSYBOX_CONFIG_GETOPT_LONG 
    725         help 
    726                 Enable use of long options, increases size by about 400 Bytes 
    727  
    728 config BUSYBOX_CONFIG_UNCOMPRESS 
    729         bool "uncompress" 
    730         default n 
    731         help 
    732           uncompress is used to decompress archives created by compress. 
    733           Not much used anymore, replaced by gzip/gunzip. 
    734  
    735 config BUSYBOX_CONFIG_UNLZMA 
    736         bool "unlzma" 
    737         default n 
    738         help 
    739           unlzma is a compression utility using the Lempel-Ziv-Markov chain 
    740           compression algorithm, and range coding.  Compression 
    741           is generally considerably better than that achieved by the bzip2 
    742           compressors. 
    743  
    744           The BusyBox unlzma applet is limited to de-compression only. 
    745           On an x86 system, this applet adds about 4K. 
    746  
    747           Unless you have a specific application which requires unlzma, you 
    748           should probably say N here. 
    749  
    750 config BUSYBOX_CONFIG_FEATURE_LZMA_FAST 
    751         bool "Optimze unlzma for speed" 
    752         default n 
    753         depends on BUSYBOX_CONFIG_UNLZMA 
    754         help 
    755           This option reduces decompression time by about 33% at the cost of 
    756           a 2K bigger binary. 
    757  
    758 config BUSYBOX_CONFIG_UNZIP 
    759         bool "unzip" 
    760         default n 
    761         help 
    762           unzip will list or extract files from a ZIP archive, 
    763           commonly found on DOS/WIN systems. The default behavior 
    764           (with no options) is to extract the archive into the 
    765           current directory. Use the `-d' option to extract to a 
    766           directory of your choice. 
    767  
    768 comment "Common options for cpio and tar" 
    769         depends on BUSYBOX_CONFIG_CPIO || BUSYBOX_CONFIG_TAR 
    770  
    771 config BUSYBOX_CONFIG_FEATURE_UNARCHIVE_TAPE 
    772         bool "Enable tape drive support" 
    773         default n 
    774         depends on BUSYBOX_CONFIG_CPIO || BUSYBOX_CONFIG_TAR 
    775         help 
    776           I don't think this is needed anymore. 
    777  
    778 comment "Common options for dpkg and dpkg_deb" 
    779         depends on BUSYBOX_CONFIG_DPKG || BUSYBOX_CONFIG_DPKG_DEB 
    780  
    781 config BUSYBOX_CONFIG_FEATURE_DEB_TAR_GZ 
    782         bool "gzip debian packages (normal)" 
    783         default y if BUSYBOX_CONFIG_DPKG || BUSYBOX_CONFIG_DPKG_DEB 
    784         depends on BUSYBOX_CONFIG_DPKG || BUSYBOX_CONFIG_DPKG_DEB 
    785         help 
    786           This is the default compression method inside the debian ar file. 
    787  
    788           If you want compatibility with standard .deb's you should say yes here. 
    789  
    790 config BUSYBOX_CONFIG_FEATURE_DEB_TAR_BZ2 
    791         bool "bzip2 debian packages" 
    792         default n 
    793         depends on BUSYBOX_CONFIG_DPKG || BUSYBOX_CONFIG_DPKG_DEB 
    794         help 
    795           This allows dpkg and dpkg-deb to extract deb's that are compressed internally 
    796           with bzip2 instead of gzip. 
    797  
    798           You only want this if you are creating your own custom debian packages that 
    799           use an internal control.tar.bz2 or data.tar.bz2. 
    800  
    801 config BUSYBOX_CONFIG_FEATURE_DEB_TAR_LZMA 
    802         bool "lzma debian packages" 
    803         default n 
    804         depends on BUSYBOX_CONFIG_DPKG || BUSYBOX_CONFIG_DPKG_DEB 
    805         help 
    806           This allows dpkg and dpkg-deb to extract deb's that are compressed 
    807           internally with lzma instead of gzip. 
    808  
    809           You only want this if you are creating your own custom debian 
    810           packages that use an internal control.tar.lzma or data.tar.lzma. 
    811  
    812 endmenu 
    813 
    814 # For a description of the syntax of this configuration file, 
    815 # see scripts/kbuild/config-language.txt. 
    816 
    817  
    818 menu "Coreutils" 
    819  
    820 config BUSYBOX_CONFIG_BASENAME 
    821         bool "basename" 
    822         default y 
    823         help 
    824           basename is used to strip the directory and suffix from filenames, 
    825           leaving just the filename itself.  Enable this option if you wish 
    826           to enable the 'basename' utility. 
    827  
    828 config BUSYBOX_CONFIG_CAL 
    829         bool "cal" 
    830         default n 
    831         help 
    832           cal is used to display a monthly calender. 
    833  
    834 config BUSYBOX_CONFIG_CAT 
    835         bool "cat" 
    836         default y 
    837         help 
    838           cat is used to concatenate files and print them to the standard 
    839           output.  Enable this option if you wish to enable the 'cat' utility. 
    840  
    841 config BUSYBOX_CONFIG_CATV 
    842         bool "catv" 
    843         default n 
    844         help 
    845           Display nonprinting characters as escape sequences (like some 
    846           implementations' cat -v option). 
    847  
    848 config BUSYBOX_CONFIG_CHGRP 
    849         bool "chgrp" 
    850         default y 
    851         help 
    852           chgrp is used to change the group ownership of files. 
    853  
    854 config BUSYBOX_CONFIG_CHMOD 
    855         bool "chmod" 
    856         default y 
    857         help 
    858           chmod is used to change the access permission of files. 
    859  
    860 config BUSYBOX_CONFIG_CHOWN 
    861         bool "chown" 
    862         default y 
    863         help 
    864           chown is used to change the user and/or group ownership 
    865           of files. 
    866  
    867 config BUSYBOX_CONFIG_CHROOT 
    868         bool "chroot" 
    869         default y 
    870         help 
    871           chroot is used to change the root directory and run a command. 
    872           The default command is `/bin/sh'. 
    873  
    874 config BUSYBOX_CONFIG_CKSUM 
    875         bool "cksum" 
    876         default n 
    877         help 
    878           cksum is used to calculate the CRC32 checksum of a file. 
    879  
    880 config BUSYBOX_CONFIG_CMP 
    881         bool "cmp" 
    882         default n 
    883         help 
    884           cmp is used to compare two files and returns the result 
    885           to standard output. 
    886  
    887 config BUSYBOX_CONFIG_COMM 
    888         bool "comm" 
    889         default n 
    890         help 
    891           comm is used to compare two files line by line and return 
    892           a three-column output. 
    893  
    894 config BUSYBOX_CONFIG_CP 
    895         bool "cp" 
    896         default y 
    897         help 
    898           cp is used to copy files and directories. 
    899  
    900 config BUSYBOX_CONFIG_CUT 
    901         bool "cut" 
    902         default y 
    903         help 
    904           cut is used to print selected parts of lines from 
    905           each file to stdout. 
    906  
    907 config BUSYBOX_CONFIG_DATE 
    908         bool "date" 
    909         default y 
    910         help 
    911           date is used to set the system date or display the 
    912           current time in the given format. 
    913  
    914 config BUSYBOX_CONFIG_FEATURE_DATE_ISOFMT 
    915         bool "Enable ISO date format output (-I)" 
    916         default y 
    917         depends on BUSYBOX_CONFIG_DATE 
    918         help 
    919           Enable option (-I) to output an ISO-8601 compliant 
    920           date/time string. 
    921  
    922 config BUSYBOX_CONFIG_DD 
    923         bool "dd" 
    924         default y 
    925         help 
    926           dd copies a file (from standard input to standard output, 
    927           by default) using specific input and output blocksizes, 
    928           while optionally performing conversions on it. 
    929  
    930 config BUSYBOX_CONFIG_FEATURE_DD_SIGNAL_HANDLING 
    931         bool "Enable DD signal handling for status reporting" 
    932         default y 
    933         depends on BUSYBOX_CONFIG_DD 
    934         help 
    935           sending a SIGUSR1 signal to a running `dd' process makes it 
    936           print to standard error the number of records read and written 
    937           so far, then to resume copying. 
    938  
    939           $ dd if=/dev/zero of=/dev/null& pid=$! $ kill -USR1 $pid; sleep 1; kill $pid 
    940           10899206+0 records in 10899206+0 records out 
    941  
    942 config BUSYBOX_CONFIG_FEATURE_DD_IBS_OBS 
    943         bool "Enable ibs, obs and conv options" 
    944         default n 
    945         depends on BUSYBOX_CONFIG_DD 
    946         help 
    947           Enables support for writing a certain number of bytes in and out, 
    948           at a time, and performing conversions on the data stream. 
    949  
    950 config BUSYBOX_CONFIG_DF 
    951         bool "df" 
    952         default y 
    953         help 
    954           df reports the amount of disk space used and available 
    955           on filesystems. 
    956  
    957 config BUSYBOX_CONFIG_DIFF 
    958         bool "diff" 
    959         default n 
    960         help 
    961           diff compares two files or directories and outputs the 
    962           differences between them in a form that can be given to 
    963           the patch command. 
    964  
    965 config BUSYBOX_CONFIG_FEATURE_DIFF_BINARY 
    966         bool "Enable checks for binary files" 
    967         default y 
    968         depends on BUSYBOX_CONFIG_DIFF 
    969         help 
    970           This option enables support for checking for binary files 
    971           before a comparison is carried out. 
    972  
    973 config BUSYBOX_CONFIG_FEATURE_DIFF_DIR 
    974         bool "Enable directory support" 
    975         default y 
    976         depends on BUSYBOX_CONFIG_DIFF 
    977         help 
    978           This option enables support for directory and subdirectory 
    979           comparison. 
    980  
    981 config BUSYBOX_CONFIG_FEATURE_DIFF_MINIMAL 
    982         bool "Enable -d option to find smaller sets of changes" 
    983         default n 
    984         depends on BUSYBOX_CONFIG_DIFF 
    985         help 
    986           Enabling this option allows the use of -d to make diff 
    987           try hard to find the smallest possible set of changes. 
    988  
    989 config BUSYBOX_CONFIG_DIRNAME 
    990         bool "dirname" 
    991         default y 
    992         help 
    993           dirname is used to strip a non-directory suffix from 
    994           a file name. 
    995  
    996 config BUSYBOX_CONFIG_DOS2UNIX 
    997         bool "dos2unix/unix2dos" 
    998         default n 
    999         help 
    1000           dos2unix is used to convert a text file from DOS format to 
    1001           UNIX format, and vice versa. 
    1002  
    1003 config BUSYBOX_CONFIG_UNIX2DOS 
    1004         bool 
    1005         default y 
    1006         depends on BUSYBOX_CONFIG_DOS2UNIX 
    1007         help 
    1008           unix2dos is used to convert a text file from UNIX format to 
    1009           DOS format, and vice versa. 
    1010  
    1011 config BUSYBOX_CONFIG_DU 
    1012         bool "du (default blocksize of 512 bytes)" 
    1013         default y 
    1014         help 
    1015           du is used to report the amount of disk space used 
    1016           for specified files. 
    1017  
    1018 config BUSYBOX_CONFIG_FEATURE_DU_DEFAULT_BLOCKSIZE_1K 
    1019         bool "Use a default blocksize of 1024 bytes (1K)" 
    1020         default y 
    1021         depends on BUSYBOX_CONFIG_DU 
    1022         help 
    1023           Use a blocksize of (1K) instead of the default 512b. 
    1024  
    1025 config BUSYBOX_CONFIG_ECHO 
    1026         bool "echo (basic SuSv3 version taking no options)" 
    1027         default y 
    1028         help 
    1029           echo is used to print a specified string to stdout. 
    1030  
    1031 # this entry also appears in shell/Config.in, next to the echo builtin 
    1032 config BUSYBOX_CONFIG_FEATURE_FANCY_ECHO 
    1033         bool "Enable echo options (-n and -e)" 
    1034         default y 
    1035         depends on BUSYBOX_CONFIG_ECHO 
    1036         help 
    1037           This adds options (-n and -e) to echo. 
    1038  
    1039 config BUSYBOX_CONFIG_ENV 
    1040         bool "env" 
    1041         default y 
    1042         help 
    1043           env is used to set an environment variable and run 
    1044           a command; without options it displays the current 
    1045           environment. 
    1046  
    1047 config BUSYBOX_CONFIG_FEATURE_ENV_LONG_OPTIONS 
    1048         bool "Enable long options" 
    1049         default n 
    1050         depends on BUSYBOX_CONFIG_ENV && BUSYBOX_CONFIG_GETOPT_LONG 
    1051         help 
    1052           Support long options for the env applet. 
    1053  
    1054 config BUSYBOX_CONFIG_EXPR 
    1055         bool "expr" 
    1056         default y 
    1057         help 
    1058           expr is used to calculate numbers and print the result 
    1059           to standard output. 
    1060  
    1061 config BUSYBOX_CONFIG_EXPR_MATH_SUPPORT_64 
    1062         bool "Extend Posix numbers support to 64 bit" 
    1063         default n 
    1064         depends on BUSYBOX_CONFIG_EXPR 
    1065         help 
    1066           Enable 64-bit math support in the expr applet.  This will make 
    1067           the applet slightly larger, but will allow computation with very 
    1068           large numbers. 
    1069  
    1070 config BUSYBOX_CONFIG_FALSE 
    1071         bool "false" 
    1072         default y 
    1073         help 
    1074           false returns an exit code of FALSE (1). 
    1075  
    1076 config BUSYBOX_CONFIG_FOLD 
    1077         bool "fold" 
    1078         default n 
    1079         help 
    1080           Wrap text to fit a specific width. 
    1081  
    1082 config BUSYBOX_CONFIG_HEAD 
    1083         bool "head" 
    1084         default y 
    1085         help 
    1086           head is used to print the first specified number of lines 
    1087           from files. 
    1088  
    1089 config BUSYBOX_CONFIG_FEATURE_FANCY_HEAD 
    1090         bool "Enable head options (-c, -q, and -v)" 
    1091         default y 
    1092         depends on BUSYBOX_CONFIG_HEAD 
    1093         help 
    1094           This enables the head options (-c, -q, and -v). 
    1095  
    1096 config BUSYBOX_CONFIG_HOSTID 
    1097         bool "hostid" 
    1098         default y 
    1099         help 
    1100           hostid prints the numeric identifier (in hexadecimal) for 
    1101           the current host. 
    1102  
    1103 config BUSYBOX_CONFIG_ID 
    1104         bool "id" 
    1105         default y 
    1106         help 
    1107           id displays the current user and group ID names. 
    1108  
    1109 config BUSYBOX_CONFIG_INSTALL 
    1110         bool "install" 
    1111         default n 
    1112         help 
    1113           Copy files and set attributes. 
    1114  
    1115 config BUSYBOX_CONFIG_FEATURE_INSTALL_LONG_OPTIONS 
    1116         bool "Enable long options" 
    1117         default n 
    1118         depends on BUSYBOX_CONFIG_INSTALL && BUSYBOX_CONFIG_GETOPT_LONG 
    1119         help 
    1120           Support long options for the install applet. 
    1121  
    1122 config BUSYBOX_CONFIG_LENGTH 
    1123         bool "length" 
    1124         default y 
    1125         help 
    1126           length is used to print out the length of a specified string. 
    1127  
    1128 config BUSYBOX_CONFIG_LN 
    1129         bool "ln" 
    1130         default y 
    1131         help 
    1132           ln is used to create hard or soft links between files. 
    1133  
    1134 config BUSYBOX_CONFIG_LOGNAME 
    1135         bool "logname" 
    1136         default n 
    1137         help 
    1138           logname is used to print the current user's login name. 
    1139  
    1140 config BUSYBOX_CONFIG_LS 
    1141         bool "ls" 
    1142         default y 
    1143         help 
    1144           ls is used to list the contents of directories. 
    1145  
    1146 config BUSYBOX_CONFIG_FEATURE_LS_FILETYPES 
    1147         bool "Enable filetyping options (-p and -F)" 
    1148         default y 
    1149         depends on BUSYBOX_CONFIG_LS 
    1150         help 
    1151           Enable the ls options (-p and -F). 
    1152  
    1153 config BUSYBOX_CONFIG_FEATURE_LS_FOLLOWLINKS 
    1154         bool "Enable symlinks dereferencing (-L)" 
    1155         default y 
    1156         depends on BUSYBOX_CONFIG_LS 
    1157         help 
    1158           Enable the ls option (-L). 
    1159  
    1160 config BUSYBOX_CONFIG_FEATURE_LS_RECURSIVE 
    1161         bool "Enable recursion (-R)" 
    1162         default y 
    1163         depends on BUSYBOX_CONFIG_LS 
    1164         help 
    1165           Enable the ls option (-R). 
    1166  
    1167 config BUSYBOX_CONFIG_FEATURE_LS_SORTFILES 
    1168         bool "Sort the file names" 
    1169         default y 
    1170         depends on BUSYBOX_CONFIG_LS 
    1171         help 
    1172           Allow ls to sort file names alphabetically. 
    1173  
    1174 config BUSYBOX_CONFIG_FEATURE_LS_TIMESTAMPS 
    1175         bool "Show file timestamps" 
    1176         default y 
    1177         depends on BUSYBOX_CONFIG_LS 
    1178         help 
    1179           Allow ls to display timestamps for files. 
    1180  
    1181 config BUSYBOX_CONFIG_FEATURE_LS_USERNAME 
    1182         bool "Show username/groupnames" 
    1183         default y 
    1184         depends on BUSYBOX_CONFIG_LS 
    1185         help 
    1186           Allow ls to display username/groupname for files. 
    1187  
    1188 config BUSYBOX_CONFIG_FEATURE_LS_COLOR 
    1189         bool "Allow use of color to identify file types" 
    1190         default y 
    1191         depends on BUSYBOX_CONFIG_LS && BUSYBOX_CONFIG_GETOPT_LONG 
    1192         help 
    1193           This enables the --color option to ls. 
    1194  
    1195 config BUSYBOX_CONFIG_FEATURE_LS_COLOR_IS_DEFAULT 
    1196         bool "Produce colored ls output by default" 
    1197         default y 
    1198         depends on BUSYBOX_CONFIG_FEATURE_LS_COLOR 
    1199         help 
    1200           Saying yes here will turn coloring on by default, 
    1201           even if no "--color" option is given to the ls command. 
    1202           This is not recommended, since the colors are not 
    1203           configurable, and the output may not be legible on 
    1204           many output screens. 
    1205  
    1206 config BUSYBOX_CONFIG_MD5SUM 
    1207         bool "md5sum" 
    1208         default y 
    1209         help 
    1210           md5sum is used to print or check MD5 checksums. 
    1211  
    1212 config BUSYBOX_CONFIG_MKDIR 
    1213         bool "mkdir" 
    1214         default y 
    1215         help 
    1216           mkdir is used to create directories with the specified names. 
    1217  
    1218 config BUSYBOX_CONFIG_FEATURE_MKDIR_LONG_OPTIONS 
    1219         bool "Enable long options" 
    1220         default n 
    1221         depends on BUSYBOX_CONFIG_MKDIR && BUSYBOX_CONFIG_GETOPT_LONG 
    1222         help 
    1223           Support long options for the mkdir applet. 
    1224  
    1225 config BUSYBOX_CONFIG_MKFIFO 
    1226         bool "mkfifo" 
    1227         default y 
    1228         help 
    1229           mkfifo is used to create FIFOs (named pipes). 
    1230           The `mknod' program can also create FIFOs. 
    1231  
    1232 config BUSYBOX_CONFIG_MKNOD 
    1233         bool "mknod" 
    1234         default y 
    1235         help 
    1236           mknod is used to create FIFOs or block/character special 
    1237           files with the specified names. 
    1238  
    1239 config BUSYBOX_CONFIG_MV 
    1240         bool "mv" 
    1241         default y 
    1242         help 
    1243           mv is used to move or rename files or directories. 
    1244  
    1245 config BUSYBOX_CONFIG_FEATURE_MV_LONG_OPTIONS 
    1246         bool "Enable long options" 
    1247         default n 
    1248         depends on BUSYBOX_CONFIG_MV && BUSYBOX_CONFIG_GETOPT_LONG 
    1249         help 
    1250           Support long options for the mv applet. 
    1251  
    1252 config BUSYBOX_CONFIG_NICE 
    1253         bool "nice" 
    1254         default n 
    1255         help 
    1256           nice runs a program with modified scheduling priority. 
    1257  
    1258 config BUSYBOX_CONFIG_NOHUP 
    1259         bool "nohup" 
    1260         default y 
    1261         help 
    1262           run a command immune to hangups, with output to a non-tty. 
    1263  
    1264 config BUSYBOX_CONFIG_OD 
    1265         bool "od" 
    1266         default n 
    1267         help 
    1268           od is used to dump binary files in octal and other formats. 
    1269  
    1270 config BUSYBOX_CONFIG_PRINTENV 
    1271         bool "printenv" 
    1272         default n 
    1273         help 
    1274           printenv is used to print all or part of environment. 
    1275  
    1276 config BUSYBOX_CONFIG_PRINTF 
    1277         bool "printf" 
    1278         default y 
    1279         help 
    1280           printf is used to format and print specified strings. 
    1281           It's similar to `echo' except it has more options. 
    1282  
    1283 config BUSYBOX_CONFIG_PWD 
    1284         bool "pwd" 
    1285         default y 
    1286         help 
    1287           pwd is used to print the current directory. 
    1288  
    1289 config BUSYBOX_CONFIG_REALPATH 
    1290         bool "realpath" 
    1291         default n 
    1292         help 
    1293           Return the canonicalized absolute pathname. 
    1294           This isn't provided by GNU shellutils, but where else does it belong. 
    1295  
    1296 config BUSYBOX_CONFIG_RM 
    1297         bool "rm" 
    1298         default y 
    1299         help 
    1300           rm is used to remove files or directories. 
    1301  
    1302 config BUSYBOX_CONFIG_RMDIR 
    1303         bool "rmdir" 
    1304         default y 
    1305         help 
    1306           rmdir is used to remove empty directories. 
    1307  
    1308 config BUSYBOX_CONFIG_SEQ 
    1309         bool "seq" 
    1310         default y 
    1311         help 
    1312           print a sequence of numbers 
    1313  
    1314 config BUSYBOX_CONFIG_SHA1SUM 
    1315         bool "sha1sum" 
    1316         default n 
    1317         help 
    1318           Compute and check SHA1 message digest 
    1319  
    1320 config BUSYBOX_CONFIG_SLEEP 
    1321         bool "sleep (single integer arg with no suffix)" 
    1322         default y 
    1323         help 
    1324           sleep is used to pause for a specified number of seconds, 
    1325  
    1326 config BUSYBOX_CONFIG_FEATURE_FANCY_SLEEP 
    1327         bool "Enable multiple integer args and optional time suffixes" 
    1328         default y 
    1329         depends on BUSYBOX_CONFIG_SLEEP 
    1330         help 
    1331           Allow sleep to pause for specified minutes, hours, and days. 
    1332  
    1333 config BUSYBOX_CONFIG_SORT 
    1334         bool "sort" 
    1335         default y 
    1336         help 
    1337           sort is used to sort lines of text in specified files. 
    1338  
    1339 config BUSYBOX_CONFIG_FEATURE_SORT_BIG 
    1340         bool "full SuSv3 compliant sort (Support -ktcsbdfiozgM)" 
    1341         default n 
    1342         depends on BUSYBOX_CONFIG_SORT 
    1343         help 
    1344           Without this, sort only supports  -r, -u, and an integer version 
    1345           of -n.  Selecting this adds sort keys, floating point support, and 
    1346           more.  This adds a little over 3k to a nonstatic build on x86. 
    1347  
    1348           The SuSv3 sort standard is available at: 
    1349           http://www.opengroup.org/onlinepubs/007904975/utilities/sort.html 
    1350  
    1351 config BUSYBOX_CONFIG_STAT 
    1352         bool "stat" 
    1353         default n 
    1354         help 
    1355           display file or filesystem status. 
    1356  
    1357 config BUSYBOX_CONFIG_FEATURE_STAT_FORMAT 
    1358         bool "Enable custom formats (-c)" 
    1359         default n 
    1360         depends on BUSYBOX_CONFIG_STAT 
    1361         help 
    1362           Without this, stat will not support the '-c format' option where 
    1363           users can pass a custom format string for output.  This adds about 
    1364           7k to a nonstatic build on amd64. 
    1365  
    1366 config BUSYBOX_CONFIG_STTY 
    1367         bool "stty" 
    1368         default n 
    1369         help 
    1370           stty is used to change and print terminal line settings. 
    1371  
    1372 config BUSYBOX_CONFIG_SUM 
    1373         bool "sum" 
    1374         default n 
    1375         help 
    1376           checksum and count the blocks in a file 
    1377  
    1378 config BUSYBOX_CONFIG_SYNC 
    1379         bool "sync" 
    1380         default y 
    1381         help 
    1382           sync is used to flush filesystem buffers. 
    1383  
    1384 config BUSYBOX_CONFIG_TAIL 
    1385         bool "tail" 
    1386         default y 
    1387         help 
    1388           tail is used to print the last specified number of lines 
    1389           from files. 
    1390  
    1391 config BUSYBOX_CONFIG_FEATURE_FANCY_TAIL 
    1392         bool "Enable extra tail options (-q, -s, and -v)" 
    1393         default y 
    1394         depends on BUSYBOX_CONFIG_TAIL 
    1395         help 
    1396           The options (-q, -s, and -v) are provided by GNU tail, but 
    1397           are not specific in the SUSv3 standard. 
    1398  
    1399 config BUSYBOX_CONFIG_TEE 
    1400         bool "tee" 
    1401         default y 
    1402         help 
    1403           tee is used to read from standard input and write 
    1404           to standard output and files. 
    1405  
    1406 config BUSYBOX_CONFIG_FEATURE_TEE_USE_BLOCK_IO 
    1407         bool "Enable block i/o (larger/faster) instead of byte i/o." 
    1408         default y 
    1409         depends on BUSYBOX_CONFIG_TEE 
    1410         help 
    1411           Enable this option for a faster tee, at expense of size. 
    1412  
    1413 config BUSYBOX_CONFIG_TEST 
    1414         bool "test" 
    1415         default y 
    1416         help 
    1417           test is used to check file types and compare values, 
    1418           returning an appropriate exit code.  The bash shell 
    1419           has test built in, ash can build it in optionally. 
    1420  
    1421 config BUSYBOX_CONFIG_FEATURE_TEST_64 
    1422         bool "Extend test to 64 bit" 
    1423         default n 
    1424         depends on BUSYBOX_CONFIG_TEST 
    1425         help 
    1426           Enable 64-bit support in test. 
    1427  
    1428 config BUSYBOX_CONFIG_TOUCH 
    1429         bool "touch" 
    1430         default y 
    1431         help 
    1432           touch is used to create or change the access and/or 
    1433           modification timestamp of specified files. 
    1434  
    1435 config BUSYBOX_CONFIG_TR 
    1436         bool "tr" 
    1437         default y 
    1438         help 
    1439           tr is used to squeeze, and/or delete characters from standard 
    1440           input, writing to standard output. 
    1441  
    1442 config BUSYBOX_CONFIG_FEATURE_TR_CLASSES 
    1443         bool "Enable character classes (such as [:upper:])" 
    1444         default n 
    1445         depends on BUSYBOX_CONFIG_TR 
    1446         help 
    1447           Enable character classes, enabling commands such as: 
    1448           tr [:upper:] [:lower:] to convert input into lowercase. 
    1449  
    1450 config BUSYBOX_CONFIG_FEATURE_TR_EQUIV 
    1451         bool "Enable equivalence classes" 
    1452         default n 
    1453         depends on BUSYBOX_CONFIG_TR 
    1454         help 
    1455           Enable equivalence classes, which essentially add the enclosed 
    1456           character to the current set. For instance, tr [=a=] xyz would 
    1457           replace all instances of 'a' with 'xyz'. This option is mainly 
    1458           useful for cases when no other way of expressing a character 
    1459           is possible. 
    1460  
    1461 config BUSYBOX_CONFIG_TRUE 
    1462         bool "true" 
    1463         default y 
    1464         help 
    1465           true returns an exit code of TRUE (0). 
    1466  
    1467 config BUSYBOX_CONFIG_TTY 
    1468         bool "tty" 
    1469         default n 
    1470         help 
    1471           tty is used to print the name of the current terminal to 
    1472           standard output. 
    1473  
    1474 config BUSYBOX_CONFIG_UNAME 
    1475         bool "uname" 
    1476         default y 
    1477         help 
    1478           uname is used to print system information. 
    1479  
    1480 config BUSYBOX_CONFIG_UNIQ 
    1481         bool "uniq" 
    1482         default y 
    1483         help 
    1484           uniq is used to remove duplicate lines from a sorted file. 
    1485  
    1486 config BUSYBOX_CONFIG_USLEEP 
    1487         bool "usleep" 
    1488         default n 
    1489         help 
    1490           usleep is used to pause for a specified number of microseconds. 
    1491  
    1492 config BUSYBOX_CONFIG_UUDECODE 
    1493         bool "uudecode" 
    1494         default n 
    1495         help 
    1496           uudecode is used to decode a uuencoded file. 
    1497  
    1498 config BUSYBOX_CONFIG_UUENCODE 
    1499         bool "uuencode" 
    1500         default n 
    1501         help 
    1502           uuencode is used to uuencode a file. 
    1503  
    1504 config BUSYBOX_CONFIG_WATCH 
    1505         bool "watch" 
    1506         default n 
    1507         select BUSYBOX_CONFIG_DATE 
    1508         help 
    1509           watch is used to execute a program periodically, showing 
    1510           output to the screen. 
    1511  
    1512 config BUSYBOX_CONFIG_WC 
    1513         bool "wc" 
    1514         default y 
    1515         help 
    1516           wc is used to print the number of bytes, words, and lines, 
    1517           in specified files. 
    1518  
    1519 config BUSYBOX_CONFIG_FEATURE_WC_LARGE 
    1520         bool "Support very large files in wc" 
    1521         default n 
    1522         depends on BUSYBOX_CONFIG_WC 
    1523         help 
    1524           Use "unsigned long long" in wc for count variables 
    1525  
    1526 config BUSYBOX_CONFIG_WHO 
    1527         bool "who" 
    1528         default y 
    1529         select BUSYBOX_CONFIG_FEATURE_UTMP 
    1530         help 
    1531           who is used to show who is logged on. 
    1532  
    1533 config BUSYBOX_CONFIG_WHOAMI 
    1534         bool "whoami" 
    1535         default n 
    1536         help 
    1537           whoami is used to print the username of the current 
    1538           user id (same as id -un). 
    1539  
    1540 config BUSYBOX_CONFIG_YES 
    1541         bool "yes" 
    1542         default y 
    1543         help 
    1544           yes is used to repeatedly output a specific string, or 
    1545           the default string `y'. 
    1546  
    1547 comment "Common options for cp and mv" 
    1548         depends on BUSYBOX_CONFIG_CP || BUSYBOX_CONFIG_MV 
    1549  
    1550 config BUSYBOX_CONFIG_FEATURE_PRESERVE_HARDLINKS 
    1551         bool "Preserve hard links" 
    1552         default y 
    1553         depends on BUSYBOX_CONFIG_CP || BUSYBOX_CONFIG_MV 
    1554         help 
    1555           Allow cp and mv to preserve hard links. 
    1556  
    1557 comment "Common options for ls, more and telnet" 
    1558         depends on BUSYBOX_CONFIG_LS || BUSYBOX_CONFIG_MORE || BUSYBOX_CONFIG_TELNET 
    1559  
    1560 config BUSYBOX_CONFIG_FEATURE_AUTOWIDTH 
    1561         bool "Calculate terminal & column widths" 
    1562         default y 
    1563         depends on BUSYBOX_CONFIG_LS || BUSYBOX_CONFIG_MORE || BUSYBOX_CONFIG_TELNET 
    1564         help 
    1565           This option allows utilities such as 'ls', 'more' and 'telnet' 
    1566           to determine the width of the screen, which can allow them to 
    1567           display additional text or avoid wrapping text onto the next line. 
    1568           If you leave this disabled, your utilities will be especially 
    1569           primitive and will be unable to determine the current screen width. 
    1570  
    1571 comment "Common options for df, du, ls" 
    1572         depends on BUSYBOX_CONFIG_DF || BUSYBOX_CONFIG_DU || BUSYBOX_CONFIG_LS 
    1573  
    1574 config BUSYBOX_CONFIG_FEATURE_HUMAN_READABLE 
    1575         bool "Support for human readable output (example 13k, 23M, 235G)" 
    1576         default y 
    1577         depends on BUSYBOX_CONFIG_DF || BUSYBOX_CONFIG_DU || BUSYBOX_CONFIG_LS 
    1578         help 
    1579           Allow df, du, and ls to have human readable output. 
    1580  
    1581 comment "Common options for md5sum, sha1sum" 
    1582         depends on BUSYBOX_CONFIG_MD5SUM || BUSYBOX_CONFIG_SHA1SUM 
    1583  
    1584 config BUSYBOX_CONFIG_FEATURE_MD5_SHA1_SUM_CHECK 
    1585         bool "Enable -c, -s and -w options" 
    1586         default y 
    1587         depends on BUSYBOX_CONFIG_MD5SUM || BUSYBOX_CONFIG_SHA1SUM 
    1588         help 
    1589           Enabling the -c options allows files to be checked 
    1590           against pre-calculated hash values. 
    1591  
    1592           -s and -w are useful options when verifying checksums. 
    1593  
    1594 endmenu 
    1595 
    1596 # For a description of the syntax of this configuration file, 
    1597 # see scripts/kbuild/config-language.txt. 
    1598 
    1599  
    1600 menu "Console Utilities" 
    1601  
    1602 config BUSYBOX_CONFIG_CHVT 
    1603         bool "chvt" 
    1604         default n 
    1605         help 
    1606           This program is used to change to another terminal. 
    1607           Example: chvt 4 (change to terminal /dev/tty4) 
    1608  
    1609 config BUSYBOX_CONFIG_CLEAR 
    1610         bool "clear" 
    1611         default y 
    1612         help 
    1613           This program clears the terminal screen. 
    1614  
    1615 config BUSYBOX_CONFIG_DEALLOCVT 
    1616         bool "deallocvt" 
    1617         default n 
    1618         help 
    1619           This program deallocates unused virtual consoles. 
    1620  
    1621 config BUSYBOX_CONFIG_DUMPKMAP 
    1622         bool "dumpkmap" 
    1623         default n 
    1624         help 
    1625           This program dumps the kernel's keyboard translation table to 
    1626           stdout, in binary format. You can then use loadkmap to load it. 
    1627  
    1628 config BUSYBOX_CONFIG_LOADFONT 
    1629         bool "loadfont" 
    1630         default n 
    1631         help 
    1632           This program loads a console font from standard input. 
    1633  
    1634 config BUSYBOX_CONFIG_LOADKMAP 
    1635         bool "loadkmap" 
    1636         default n 
    1637         help 
    1638           This program loads a keyboard translation table from 
    1639           standard input. 
    1640  
    1641 config BUSYBOX_CONFIG_OPENVT 
    1642         bool "openvt" 
    1643         default n 
    1644         help 
    1645           This program is used to start a command on an unused 
    1646           virtual terminal. 
    1647  
    1648 config BUSYBOX_CONFIG_RESET 
    1649         bool "reset" 
    1650         default y 
    1651         help 
    1652           This program is used to reset the terminal screen, if it 
    1653           gets messed up. 
    1654  
    1655 config BUSYBOX_CONFIG_RESIZE 
    1656         bool "resize" 
    1657         default n 
    1658         help 
    1659           This program is used to (re)set the width and height of your current 
    1660           terminal. 
    1661  
    1662 config BUSYBOX_CONFIG_FEATURE_RESIZE_PRINT 
    1663         bool "print environment variables" 
    1664         default n 
    1665         depends on BUSYBOX_CONFIG_RESIZE 
    1666         help 
    1667           Prints the newly set size (number of columns and rows) of 
    1668           the terminal. 
    1669           E.g.: 
    1670           COLUMNS=80;LINES=44;export COLUMNS LINES; 
    1671  
    1672 config BUSYBOX_CONFIG_SETCONSOLE 
    1673         bool "setconsole" 
    1674         default n 
    1675         help 
    1676           This program redirects the system console to another device, 
    1677           like the current tty while logged in via telnet. 
    1678  
    1679 config BUSYBOX_CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS 
    1680         bool "Enable long options" 
    1681         default n 
    1682         depends on BUSYBOX_CONFIG_SETCONSOLE && BUSYBOX_CONFIG_GETOPT_LONG 
    1683         help 
    1684           Support long options for the setconsole applet. 
    1685  
    1686 config BUSYBOX_CONFIG_SETKEYCODES 
    1687         bool "setkeycodes" 
    1688         default n 
    1689         help 
    1690           This program loads entries into the kernel's scancode-to-keycode 
    1691           map, allowing unusual keyboards to generate usable keycodes. 
    1692  
    1693 config BUSYBOX_CONFIG_SETLOGCONS 
    1694         bool "setlogcons" 
    1695         default n 
    1696         help 
    1697           This program redirects the output console of kernel messages. 
    1698  
    1699 endmenu 
    1700 
    1701 # For a description of the syntax of this configuration file, 
    1702 # see scripts/kbuild/config-language.txt. 
    1703 
    1704  
    1705 menu "Debian Utilities" 
    1706  
    1707 config BUSYBOX_CONFIG_MKTEMP 
    1708         bool "mktemp" 
    1709         default y 
    1710         help 
    1711           mktemp is used to create unique temporary files 
    1712  
    1713 config BUSYBOX_CONFIG_PIPE_PROGRESS 
    1714         bool "pipe_progress" 
    1715         default n 
    1716         help 
    1717           Display a dot to indicate pipe activity. 
    1718  
    1719 config BUSYBOX_CONFIG_READLINK 
    1720         bool "readlink" 
    1721         default y 
    1722         help 
    1723           This program reads a symbolic link and returns the name 
    1724           of the file it points to 
    1725  
    1726 config BUSYBOX_CONFIG_FEATURE_READLINK_FOLLOW 
    1727         bool "Enable canonicalization by following all symlinks (-f)" 
    1728         default n 
    1729         depends on BUSYBOX_CONFIG_READLINK 
    1730         help 
    1731           Enable the readlink option (-f). 
    1732  
    1733 config BUSYBOX_CONFIG_RUN_PARTS 
    1734         bool "run-parts" 
    1735         default n 
    1736         help 
    1737           run-parts is a utility designed to run all the scripts in a directory. 
    1738  
    1739           It is useful to set up a directory like cron.daily, where you need to 
    1740           execute all the scripts in that directory. 
    1741  
    1742           In this implementation of run-parts some features (such as report mode) 
    1743           are not implemented. 
    1744  
    1745           Unless you know that run-parts is used in some of your scripts 
    1746           you can safely say N here. 
    1747  
    1748 config BUSYBOX_CONFIG_FEATURE_RUN_PARTS_LONG_OPTIONS 
    1749         bool "Enable long options" 
    1750         default n 
    1751         depends on BUSYBOX_CONFIG_RUN_PARTS && BUSYBOX_CONFIG_GETOPT_LONG 
    1752         help 
    1753           Support long options for the run-parts applet. 
    1754  
    1755 config BUSYBOX_CONFIG_START_STOP_DAEMON 
    1756         bool "start-stop-daemon" 
    1757         default n 
    1758         help 
    1759           start-stop-daemon is used to control the creation and 
    1760           termination of system-level processes, usually the ones 
    1761           started during the startup of the system. 
    1762  
    1763 config BUSYBOX_CONFIG_FEATURE_START_STOP_DAEMON_FANCY 
    1764         bool "Support additional arguments" 
    1765         default y 
    1766         depends on BUSYBOX_CONFIG_START_STOP_DAEMON 
    1767         help 
    1768           Support additional arguments. 
    1769           -o|--oknodo ignored since we exit with 0 anyway 
    1770           -v|--verbose 
    1771  
    1772 config BUSYBOX_CONFIG_FEATURE_START_STOP_DAEMON_LONG_OPTIONS 
    1773         bool "Enable long options" 
    1774         default n 
    1775         depends on BUSYBOX_CONFIG_START_STOP_DAEMON && BUSYBOX_CONFIG_GETOPT_LONG 
    1776         help 
    1777           Support long options for the start-stop-daemon applet. 
    1778  
    1779 config BUSYBOX_CONFIG_WHICH 
    1780         bool "which" 
    1781         default y 
    1782         help 
    1783           which is used to find programs in your PATH and 
    1784           print out their pathnames. 
    1785  
    1786 endmenu 
    1787  
    1788 
    1789 # For a description of the syntax of this configuration file, 
    1790 # see scripts/kbuild/config-language.txt. 
    1791 
    1792  
    1793 menu "Editors" 
    1794  
    1795 config BUSYBOX_CONFIG_AWK 
    1796         bool "awk" 
    1797         default y 
    1798         help 
    1799           Awk is used as a pattern scanning and processing language.  This is 
    1800           the BusyBox implementation of that programming language. 
    1801  
    1802 config BUSYBOX_CONFIG_FEATURE_AWK_MATH 
    1803         bool "Enable math functions (requires libm)" 
    1804         default y 
    1805         depends on BUSYBOX_CONFIG_AWK 
    1806         help 
    1807           Enable math functions of the Awk programming language. 
    1808           NOTE: This will require libm to be present for linking. 
    1809  
    1810 config BUSYBOX_CONFIG_PATCH 
    1811         bool "patch" 
    1812         default n 
    1813         help 
    1814           Apply a unified diff formatted patch. 
    1815  
    1816 config BUSYBOX_CONFIG_SED 
    1817         bool "sed" 
    1818         default y 
    1819         help 
    1820           sed is used to perform text transformations on a file 
    1821           or input from a pipeline. 
    1822  
    1823 config BUSYBOX_CONFIG_VI 
    1824         bool "vi" 
    1825         default y 
    1826         help 
    1827           'vi' is a text editor.  More specifically, it is the One True 
    1828           text editor <grin>.  It does, however, have a rather steep 
    1829           learning curve.  If you are not already comfortable with 'vi' 
    1830           you may wish to use something else. 
    1831  
    1832 config BUSYBOX_CONFIG_FEATURE_VI_COLON 
    1833         bool "Enable \":\" colon commands (no \"ex\" mode)" 
    1834         default y 
    1835         depends on BUSYBOX_CONFIG_VI 
    1836         help 
    1837           Enable a limited set of colon commands for vi.  This does not 
    1838           provide an "ex" mode. 
    1839  
    1840 config BUSYBOX_CONFIG_FEATURE_VI_YANKMARK 
    1841         bool "Enable yank/put commands and mark cmds" 
    1842         default y 
    1843         depends on BUSYBOX_CONFIG_VI 
    1844         help 
    1845           This will enable you to use yank and put, as well as mark in 
    1846           busybox vi. 
    1847  
    1848 config BUSYBOX_CONFIG_FEATURE_VI_SEARCH 
    1849         bool "Enable search and replace cmds" 
    1850         default y 
    1851         depends on BUSYBOX_CONFIG_VI 
    1852         help 
    1853           Select this if you wish to be able to do search and replace in 
    1854           busybox vi. 
    1855  
    1856 config BUSYBOX_CONFIG_FEATURE_VI_USE_SIGNALS 
    1857         bool "Catch signals" 
    1858         default y 
    1859         depends on BUSYBOX_CONFIG_VI 
    1860         help 
    1861           Selecting this option will make busybox vi signal aware.  This will 
    1862           make busybox vi support SIGWINCH to deal with Window Changes, catch 
    1863           Ctrl-Z and Ctrl-C and alarms. 
    1864  
    1865 config BUSYBOX_CONFIG_FEATURE_VI_DOT_CMD 
    1866         bool "Remember previous cmd and \".\" cmd" 
    1867         default y 
    1868         depends on BUSYBOX_CONFIG_VI 
    1869         help 
    1870           Make busybox vi remember the last command and be able to repeat it. 
    1871  
    1872 config BUSYBOX_CONFIG_FEATURE_VI_READONLY 
    1873         bool "Enable -R option and \"view\" mode" 
    1874         default y 
    1875         depends on BUSYBOX_CONFIG_VI 
    1876         help 
    1877           Enable the read-only command line option, which allows the user to 
    1878           open a file in read-only mode. 
    1879  
    1880 config BUSYBOX_CONFIG_FEATURE_VI_SETOPTS 
    1881         bool "Enable set-able options, ai ic showmatch" 
    1882         default y 
    1883         depends on BUSYBOX_CONFIG_VI 
    1884         help 
    1885           Enable the editor to set some (ai, ic, showmatch) options. 
    1886  
    1887 config BUSYBOX_CONFIG_FEATURE_VI_SET 
    1888         bool "Support for :set" 
    1889         default y 
    1890         depends on BUSYBOX_CONFIG_VI 
    1891         help 
    1892           Support for ":set". 
    1893  
    1894 config BUSYBOX_CONFIG_FEATURE_VI_WIN_RESIZE 
    1895         bool "Handle window resize" 
    1896         default y 
    1897         depends on BUSYBOX_CONFIG_VI 
    1898         help 
    1899           Make busybox vi behave nicely with terminals that get resized. 
    1900  
    1901 config BUSYBOX_CONFIG_FEATURE_VI_OPTIMIZE_CURSOR 
    1902         bool "Optimize cursor movement" 
    1903         default y 
    1904         depends on BUSYBOX_CONFIG_VI 
    1905         help 
    1906           This will make the cursor movement faster, but requires more memory 
    1907           and it makes the applet a tiny bit larger. 
    1908  
    1909 config BUSYBOX_CONFIG_FEATURE_ALLOW_EXEC 
    1910         bool "Allow vi and awk to execute shell commands" 
    1911         default y 
    1912         depends on BUSYBOX_CONFIG_VI || BUSYBOX_CONFIG_AWK 
    1913         help 
    1914           Enables vi and awk features which allows user to execute 
    1915           shell commands (using system() C call). 
    1916  
    1917 endmenu 
    1918 
    1919 # For a description of the syntax of this configuration file, 
    1920 # see scripts/kbuild/config-language.txt. 
    1921 
    1922  
    1923 menu "Finding Utilities" 
    1924  
    1925 config BUSYBOX_CONFIG_FIND 
    1926         bool "find" 
    1927         default y 
    1928         help 
    1929           find is used to search your system to find specified files. 
    1930  
    1931 config BUSYBOX_CONFIG_FEATURE_FIND_PRINT0 
    1932         bool "Enable -print0 option" 
    1933         default y 
    1934         depends on BUSYBOX_CONFIG_FIND 
    1935         help 
    1936           Causes output names to be separated by a null character 
    1937           rather than a newline.  This allows names that contain 
    1938           newlines and other whitespace to be more easily 
    1939           interpreted by other programs. 
    1940  
    1941 config BUSYBOX_CONFIG_FEATURE_FIND_MTIME 
    1942         bool "Enable modified time matching (-mtime) option" 
    1943         default y 
    1944         depends on BUSYBOX_CONFIG_FIND 
    1945         help 
    1946           Allow searching based on the modification time of 
    1947           files, in days. 
    1948  
    1949 config BUSYBOX_CONFIG_FEATURE_FIND_MMIN 
    1950         bool "Enable modified time matching (-min) option" 
    1951         default y 
    1952         depends on BUSYBOX_CONFIG_FIND 
    1953         help 
    1954           Allow searching based on the modification time of 
    1955           files, in minutes. 
    1956  
    1957 config BUSYBOX_CONFIG_FEATURE_FIND_PERM 
    1958         bool "Enable permissions matching (-perm) option" 
    1959         default y 
    1960         depends on BUSYBOX_CONFIG_FIND 
    1961         help 
    1962           Enable searching based on file permissions. 
    1963  
    1964 config BUSYBOX_CONFIG_FEATURE_FIND_TYPE 
    1965         bool "Enable filetype matching (-type) option" 
    1966         default y 
    1967         depends on BUSYBOX_CONFIG_FIND 
    1968         help 
    1969           Enable searching based on file type (file, 
    1970           directory, socket, device, etc.). 
    1971  
    1972 config BUSYBOX_CONFIG_FEATURE_FIND_XDEV 
    1973         bool "Enable stay in filesystem (-xdev) option" 
    1974         default y 
    1975         depends on BUSYBOX_CONFIG_FIND 
    1976         help 
    1977           This option will allow find to restrict searches to a single 
    1978           filesystem. 
    1979  
    1980 config BUSYBOX_CONFIG_FEATURE_FIND_NEWER 
    1981         bool "Enable -newer option for comparing file mtimes" 
    1982         default y 
    1983         depends on BUSYBOX_CONFIG_FIND 
    1984         help 
    1985           Support the 'find -newer' option for finding any files which have 
    1986           a modified time that is more recent than the specified FILE. 
    1987  
    1988 config BUSYBOX_CONFIG_FEATURE_FIND_INUM 
    1989         bool "Enable inode number matching (-inum) option" 
    1990         default y 
    1991         depends on BUSYBOX_CONFIG_FIND 
    1992         help 
    1993           Support the 'find -inum' option for searching by inode number. 
    1994  
    1995 config BUSYBOX_CONFIG_FEATURE_FIND_EXEC 
    1996         bool "Enable (-exec) option allowing execution of commands" 
    1997         default y 
    1998         depends on BUSYBOX_CONFIG_FIND 
    1999         help 
    2000           Support the 'find -exec' option for executing commands based upon 
    2001           the files matched. 
    2002  
    2003 config BUSYBOX_CONFIG_GREP 
    2004         bool "grep" 
    2005         default y 
    2006         help 
    2007           grep is used to search files for a specified pattern. 
    2008  
    2009 config BUSYBOX_CONFIG_FEATURE_GREP_EGREP_ALIAS 
    2010         bool "Support extended regular expressions (egrep & grep -E)" 
    2011         default y 
    2012         depends on BUSYBOX_CONFIG_GREP 
    2013         help 
    2014           Enabled support for extended regular expressions.  Extended 
    2015           regular expressions allow for alternation (foo|bar), grouping, 
    2016           and various repetition operators. 
    2017  
    2018 config BUSYBOX_CONFIG_FEATURE_GREP_FGREP_ALIAS 
    2019         bool "Alias fgrep to grep -F" 
    2020         default y 
    2021         depends on BUSYBOX_CONFIG_GREP 
    2022         help 
    2023           fgrep sees the search pattern as a normal string rather than 
    2024           regular expressions. 
    2025           grep -F is always builtin, this just creates the fgrep alias. 
    2026  
    2027 config BUSYBOX_CONFIG_FEATURE_GREP_CONTEXT 
    2028         bool "Enable before and after context flags (-A, -B and -C)" 
    2029         default y 
    2030         depends on BUSYBOX_CONFIG_GREP 
    2031         help 
    2032           Print the specified number of leading (-B) and/or trailing (-A) 
    2033           context surrounding our matching lines. 
    2034           Print the specified number of context lines (-C). 
    2035  
    2036 config BUSYBOX_CONFIG_XARGS 
    2037         bool "xargs" 
    2038         default y 
    2039         help 
    2040           xargs is used to execute a specified command on 
    2041           every item from standard input. 
    2042  
    2043 config BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_CONFIRMATION 
    2044         bool "Enable prompt and confirmation option -p" 
    2045         default y 
    2046         depends on BUSYBOX_CONFIG_XARGS 
    2047         help 
    2048           Support prompt the user about whether to run each command 
    2049           line and read a line from the terminal. 
    2050  
    2051 config BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_QUOTES 
    2052         bool "Enable support single and double quotes and backslash" 
    2053         default y 
    2054         depends on BUSYBOX_CONFIG_XARGS 
    2055         help 
    2056           Default xargs unsupport single and double quotes 
    2057           and backslash for can use aruments with spaces. 
    2058  
    2059 config BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_TERMOPT 
    2060         bool "Enable support options -x" 
    2061         default y 
    2062         depends on BUSYBOX_CONFIG_XARGS 
    2063         help 
    2064           Enable support exit if the size (see the -s or -n option) 
    2065           is exceeded. 
    2066  
    2067 config BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM 
    2068         bool "Enable null terminated option -0" 
    2069         default y 
    2070         depends on BUSYBOX_CONFIG_XARGS 
    2071         help 
    2072           Enable input filenames are terminated by a null character 
    2073           instead of by whitespace, and the quotes and backslash 
    2074           are not special. 
    2075  
    2076 endmenu 
    2077 
    2078 # For a description of the syntax of this configuration file, 
    2079 # see scripts/kbuild/config-language.txt. 
    2080 
    2081  
    2082 menu "Init Utilities" 
    2083  
    2084 config BUSYBOX_CONFIG_INIT 
    2085         bool "init" 
    2086         default y 
    2087         select BUSYBOX_CONFIG_FEATURE_SYSLOG 
    2088         help 
    2089           init is the first program run when the system boots. 
    2090  
    2091 config BUSYBOX_CONFIG_DEBUG_INIT 
    2092         bool "debugging aid" 
    2093         default n 
    2094         depends on BUSYBOX_CONFIG_INIT 
    2095         help 
    2096           Turn this on to disable all the dangerous 
    2097           rebooting stuff when debugging. 
    2098  
    2099 config BUSYBOX_CONFIG_FEATURE_USE_INITTAB 
    2100         bool "Support reading an inittab file" 
    2101         default y 
    2102         depends on BUSYBOX_CONFIG_INIT 
    2103         help 
    2104           Allow init to read an inittab file when the system boot. 
    2105  
    2106 config BUSYBOX_CONFIG_FEATURE_INIT_SCTTY 
    2107         bool "Support running commands with a controlling-tty" 
    2108         default n 
    2109         depends on BUSYBOX_CONFIG_INIT 
    2110         help 
    2111           If this option is enabled a command starting with hyphen (-) 
    2112           is run in its own session (setsid(2)) and possibly with a 
    2113           controlling tty (TIOCSCTTY).  This is not the traditional init 
    2114           behavour, but is often what you want in an embedded system where 
    2115           the console is only accessed during development or for maintenance. 
    2116  
    2117 config BUSYBOX_CONFIG_FEATURE_EXTRA_QUIET 
    2118         bool "Be _extra_ quiet on boot" 
    2119         default n 
    2120         depends on BUSYBOX_CONFIG_INIT 
    2121         help 
    2122           Prevent init from logging some messages to the console during boot. 
    2123  
    2124 config BUSYBOX_CONFIG_FEATURE_INIT_COREDUMPS 
    2125         bool "Support dumping core for child processes (debugging only)" 
    2126         default n 
    2127         depends on BUSYBOX_CONFIG_INIT 
    2128         help 
    2129           If this option is enabled and the file /.init_enable_core 
    2130           exists, then init will call setrlimit() to allow unlimited 
    2131           core file sizes.  If this option is disabled, processes 
    2132           will not generate any core files. 
    2133  
    2134  
    2135  
    2136 config BUSYBOX_CONFIG_FEATURE_INITRD 
    2137         bool "Support running init from within an initrd (not initramfs)" 
    2138         default n 
    2139         depends on BUSYBOX_CONFIG_INIT 
    2140         help 
    2141           Legacy support for running init under the old-style initrd.  Allows 
    2142           the name linuxrc to act as init, and it doesn't assume init is PID 1. 
    2143  
    2144           This does not apply to initramfs, which runs /init as PID 1 and 
    2145           requires no special support. 
    2146  
    2147 config BUSYBOX_CONFIG_HALT 
    2148         bool "poweroff, halt, and reboot" 
    2149         default y 
    2150         help 
    2151           Stop all processes and either halt, reboot, or power off the system. 
    2152  
    2153 config BUSYBOX_CONFIG_MESG 
    2154         bool "mesg" 
    2155         default y 
    2156         help 
    2157           Mesg controls access to your terminal by others.  It is typically 
    2158           used to allow or disallow other users to write to your terminal 
    2159  
    2160 endmenu 
    2161 
    2162 # For a description of the syntax of this configuration file, 
    2163 # see scripts/kbuild/config-language.txt. 
    2164 
    2165  
    2166 menu "Login/Password Management Utilities" 
    2167  
    2168 config BUSYBOX_CONFIG_FEATURE_SHADOWPASSWDS 
    2169         bool "Support for shadow passwords" 
    2170         default y 
    2171         help 
    2172           Build support for shadow password in /etc/shadow.  This file is only 
    2173           readable by root and thus the encrypted passwords are no longer 
    2174           publicly readable. 
    2175  
    2176 config BUSYBOX_CONFIG_USE_BB_SHADOW 
    2177         bool "  Use busybox shadow password functions" 
    2178         default y 
    2179         depends on BUSYBOX_CONFIG_USE_BB_PWD_GRP && BUSYBOX_CONFIG_FEATURE_SHADOWPASSWDS 
    2180         help 
    2181             If you leave this disabled, busybox will use the system's shadow 
    2182             password handling functions.  And if you are using the GNU C library 
    2183             (glibc), you will then need to install the /etc/nsswitch.conf 
    2184             configuration file and the required /lib/libnss_* libraries in 
    2185             order for the shadow password functions to work.  This generally 
    2186             makes your embedded system quite a bit larger. 
    2187  
    2188             Enabling this option will cause busybox to directly access the 
    2189             system's /etc/shadow file when handling shadow passwords.  This 
    2190             makes your system smaller and I will get fewer emails asking about 
    2191             how glibc NSS works).  When this option is enabled, you will not be 
    2192             able to use PAM to access shadow passwords from remote LDAP 
    2193             password servers and whatnot. 
    2194  
    2195 config BUSYBOX_CONFIG_USE_BB_PWD_GRP 
    2196         bool "Use internal password and group functions rather than system functions" 
    2197         default y 
    2198         help 
    2199             If you leave this disabled, busybox will use the system's password 
    2200             and group functions.  And if you are using the GNU C library 
    2201             (glibc), you will then need to install the /etc/nsswitch.conf 
    2202             configuration file and the required /lib/libnss_* libraries in 
    2203             order for the password and group functions to work.  This generally 
    2204             makes your embedded system quite a bit larger. 
    2205  
    2206             Enabling this option will cause busybox to directly access the 
    2207             system's /etc/password, /etc/group files (and your system will be 
    2208             smaller, and I will get fewer emails asking about how glibc NSS 
    2209             works).  When this option is enabled, you will not be able to use 
    2210             PAM to access remote LDAP password servers and whatnot.  And if you 
    2211             want hostname resolution to work with glibc, you still need the 
    2212             /lib/libnss_* libraries. 
    2213  
    2214             If you enable this option, it will add about 1.5k to busybox. 
    2215  
    2216 config BUSYBOX_CONFIG_ADDGROUP 
    2217         bool "addgroup" 
    2218         default n 
    2219         help 
    2220           Utility for creating a new group account. 
    2221  
    2222 config BUSYBOX_CONFIG_DELGROUP 
    2223         bool "delgroup" 
    2224         default n 
    2225         help 
    2226           Utility for deleting a group account. 
    2227  
    2228 config BUSYBOX_CONFIG_ADDUSER 
    2229         bool "adduser" 
    2230         default n 
    2231         help 
    2232           Utility for creating a new user account. 
    2233  
    2234 config BUSYBOX_CONFIG_DELUSER 
    2235         bool "deluser" 
    2236         default n 
    2237         help 
    2238           Utility for deleting a user account. 
    2239  
    2240 config BUSYBOX_CONFIG_GETTY 
    2241         bool "getty" 
    2242         default n 
    2243         select BUSYBOX_CONFIG_FEATURE_SYSLOG 
    2244         help 
    2245           getty lets you log in on a tty, it is normally invoked by init. 
    2246  
    2247 config BUSYBOX_CONFIG_FEATURE_UTMP 
    2248         bool "Support utmp file" 
    2249         depends on BUSYBOX_CONFIG_GETTY || BUSYBOX_CONFIG_LOGIN || BUSYBOX_CONFIG_SU || BUSYBOX_CONFIG_WHO 
    2250         default y 
    2251         help 
    2252           The file /var/run/utmp is used to track who is currently logged in. 
    2253  
    2254 config BUSYBOX_CONFIG_FEATURE_WTMP 
    2255         bool "Support wtmp file" 
    2256         depends on BUSYBOX_CONFIG_GETTY || BUSYBOX_CONFIG_LOGIN || BUSYBOX_CONFIG_SU || BUSYBOX_CONFIG_LAST 
    2257         default n 
    2258         select BUSYBOX_CONFIG_FEATURE_UTMP 
    2259         help 
    2260           The file /var/run/wtmp is used to track when user's have logged into 
    2261           and logged out of the system. 
    2262  
    2263 config BUSYBOX_CONFIG_LOGIN 
    2264         bool "login" 
    2265         default n 
    2266         select BUSYBOX_CONFIG_FEATURE_SUID 
    2267         select BUSYBOX_CONFIG_FEATURE_SYSLOG 
    2268         help 
    2269           login is used when signing onto a system. 
    2270  
    2271           Note that Busybox binary must be setuid root for this applet to 
    2272           work properly. 
    2273  
    2274 config BUSYBOX_CONFIG_LOGIN_SCRIPTS 
    2275         bool "Support for login scripts" 
    2276         depends on BUSYBOX_CONFIG_LOGIN 
    2277         default n 
    2278         help 
    2279           Enable this if you want login to execute $LOGIN_PRE_SUID_SCRIPT 
    2280           just prior to switching from root to logged-in user. 
    2281  
    2282 config BUSYBOX_CONFIG_FEATURE_SECURETTY 
    2283         bool "Support for /etc/securetty" 
    2284         default n 
    2285         depends on BUSYBOX_CONFIG_LOGIN 
    2286         help 
    2287           The file  /etc/securetty  is used by (some versions of) login(1). 
    2288           The file contains the device names of tty lines (one per line, 
    2289           without leading /dev/) on which root is allowed to login. 
    2290  
    2291 config BUSYBOX_CONFIG_PASSWD 
    2292         bool "passwd" 
    2293         default y 
    2294         select BUSYBOX_CONFIG_FEATURE_SUID 
    2295         select BUSYBOX_CONFIG_FEATURE_SYSLOG 
    2296         help 
    2297           passwd changes passwords for user and group accounts.  A normal user 
    2298           may only change the password for his/her own account, the super user 
    2299           may change the password for any account.  The administrator of a group 
    2300           may change the password for the group. 
    2301  
    2302           Note that Busybox binary must be setuid root for this applet to 
    2303           work properly. 
    2304  
    2305 config BUSYBOX_CONFIG_FEATURE_PASSWD_WEAK_CHECK 
    2306         bool "Check new passwords for weakness" 
    2307         default y 
    2308         depends on BUSYBOX_CONFIG_PASSWD 
    2309         help 
    2310           With this option passwd will refuse new passwords which are "weak". 
    2311  
    2312 config BUSYBOX_CONFIG_SU 
    2313         bool "su" 
    2314         default y 
    2315         select BUSYBOX_CONFIG_FEATURE_SUID 
    2316         select BUSYBOX_CONFIG_FEATURE_SYSLOG 
    2317         help 
    2318           su is used to become another user during a login session. 
    2319           Invoked without a username, su defaults to becoming the super user. 
    2320  
    2321           Note that Busybox binary must be setuid root for this applet to 
    2322           work properly. 
    2323  
    2324 config BUSYBOX_CONFIG_FEATURE_SU_SYSLOG 
    2325         bool "Enable su to write to syslog" 
    2326         default y 
    2327         depends on BUSYBOX_CONFIG_SU 
    2328  
    2329 config BUSYBOX_CONFIG_FEATURE_SU_CHECKS_SHELLS 
    2330         bool "Enable su to check user's shell to be listed in /etc/shells" 
    2331         depends on BUSYBOX_CONFIG_SU 
    2332         default y 
    2333  
    2334 config BUSYBOX_CONFIG_SULOGIN 
    2335         bool "sulogin" 
    2336         default n 
    2337         select BUSYBOX_CONFIG_FEATURE_SYSLOG 
    2338         help 
    2339           sulogin is invoked when the system goes into single user 
    2340           mode (this is done through an entry in inittab). 
    2341  
    2342 config BUSYBOX_CONFIG_VLOCK 
    2343         bool "vlock" 
    2344         default n 
    2345         select BUSYBOX_CONFIG_FEATURE_SUID 
    2346         help 
    2347           Build the "vlock" applet which allows you to lock (virtual) terminals. 
    2348  
    2349           Note that Busybox binary must be setuid root for this applet to 
    2350           work properly. 
    2351  
    2352 endmenu 
    2353  
    2354 
    2355 # For a description of the syntax of this configuration file, 
    2356 # see scripts/kbuild/config-language.txt. 
    2357 
    2358  
    2359 menu "Linux Ext2 FS Progs" 
    2360  
    2361 config BUSYBOX_CONFIG_CHATTR 
    2362         bool "chattr" 
    2363         default n 
    2364         help 
    2365           chattr changes the file attributes on a second extended file system. 
    2366  
    2367 ### config BUSYBOX_CONFIG_E2FSCK 
    2368 ###     bool "e2fsck" 
    2369 ###     default n 
    2370 ###     help 
    2371 ###       e2fsck is used to check Linux second extended file systems (ext2fs). 
    2372 ###       e2fsck also supports ext2 filesystems countaining a journal (ext3). 
    2373 ###       The normal compat symlinks 'fsck.ext2' and 'fsck.ext3' are also 
    2374 ###       provided. 
    2375  
    2376 config BUSYBOX_CONFIG_FSCK 
    2377         bool "fsck" 
    2378         default n 
    2379         help 
    2380           fsck is used to check and optionally repair one or more filesystems. 
    2381           In actuality, fsck is simply a front-end for the various file system 
    2382           checkers (fsck.fstype) available under Linux. 
    2383  
    2384 config BUSYBOX_CONFIG_LSATTR 
    2385         bool "lsattr" 
    2386         default n 
    2387         help 
    2388           lsattr lists the file attributes on a second extended file system. 
    2389  
    2390 ### config BUSYBOX_CONFIG_MKE2FS 
    2391 ###     bool "mke2fs" 
    2392 ###     default n 
    2393 ###     help 
    2394 ###       mke2fs is used to create an ext2/ext3 filesystem.  The normal compat 
    2395 ###       symlinks 'mkfs.ext2' and 'mkfs.ext3' are also provided. 
    2396  
    2397 ### config BUSYBOX_CONFIG_TUNE2FS 
    2398 ###     bool "tune2fs" 
    2399 ###     default n 
    2400 ###     help 
    2401 ###       tune2fs allows the system administrator to adjust various tunable 
    2402 ###       filesystem parameters on Linux ext2/ext3 filesystems. 
    2403  
    2404 ### config BUSYBOX_CONFIG_E2LABEL 
    2405 ###     bool "e2label" 
    2406 ###     default n 
    2407 ###     depends on BUSYBOX_CONFIG_TUNE2FS 
    2408 ###     help 
    2409 ###       e2label will display or change the filesystem label on the ext2 
    2410 ###       filesystem located on device. 
    2411  
    2412 ### config BUSYBOX_CONFIG_FINDFS 
    2413 ###     bool "findfs" 
    2414 ###     default n 
    2415 ###     depends on BUSYBOX_CONFIG_TUNE2FS 
    2416 ###     help 
    2417 ###       findfs will search the disks in the system looking for a filesystem 
    2418 ###       which has a label matching label or a UUID equal to uuid. 
    2419  
    2420 endmenu 
    2421 
    2422 # For a description of the syntax of this configuration file, 
    2423 # see scripts/kbuild/config-language.txt. 
    2424 
    2425  
    2426 menu "Linux Module Utilities" 
    2427  
    2428 config BUSYBOX_CONFIG_INSMOD 
    2429         bool "insmod" 
    2430         default y 
    2431         help 
    2432           insmod is used to load specified modules in the running kernel. 
    2433  
    2434 config BUSYBOX_CONFIG_FEATURE_INSMOD_VERSION_CHECKING 
    2435         bool "Module version checking" 
    2436         default n 
    2437         depends on BUSYBOX_CONFIG_INSMOD && BUSYBOX_CONFIG_FEATURE_2_4_MODULES 
    2438         help 
    2439           Support checking of versions for modules.  This is used to 
    2440           ensure that the kernel and module are made for each other. 
    2441  
    2442 config BUSYBOX_CONFIG_FEATURE_INSMOD_KSYMOOPS_SYMBOLS 
    2443         bool "Add module symbols to kernel symbol table" 
    2444         default n 
    2445         depends on BUSYBOX_CONFIG_INSMOD && BUSYBOX_CONFIG_FEATURE_2_4_MODULES 
    2446         help 
    2447           By adding module symbols to the kernel symbol table, Oops messages 
    2448           occuring within kernel modules can be properly debugged.  By enabling 
    2449           this feature, module symbols will always be added to the kernel symbol 
    2450           table for properly debugging support.  If you are not interested in 
    2451           Oops messages from kernel modules, say N. 
    2452  
    2453 config BUSYBOX_CONFIG_FEATURE_INSMOD_LOAD_MAP 
    2454         bool "Enable load map (-m) option" 
    2455         default n 
    2456         depends on BUSYBOX_CONFIG_INSMOD && ( BUSYBOX_CONFIG_FEATURE_2_4_MODULES || BUSYBOX_CONFIG_FEATURE_2_6_MODULES ) 
    2457         help 
    2458           Enabling this, one would be able to get a load map 
    2459           output on stdout. This makes kernel module debugging 
    2460           easier. 
    2461           If you don't plan to debug kernel modules, you 
    2462           don't need this option. 
    2463  
    2464 config BUSYBOX_CONFIG_FEATURE_INSMOD_LOAD_MAP_FULL 
    2465         bool "Symbols in load map" 
    2466         default y 
    2467         depends on BUSYBOX_CONFIG_FEATURE_INSMOD_LOAD_MAP 
    2468         help 
    2469           Without this option, -m will only output section 
    2470           load map.  With this option, -m will also output 
    2471           symbols load map. 
    2472  
    2473 config BUSYBOX_CONFIG_RMMOD 
    2474         bool "rmmod" 
    2475         default y 
    2476         help 
    2477           rmmod is used to unload specified modules from the kernel. 
    2478  
    2479 config BUSYBOX_CONFIG_LSMOD 
    2480         bool "lsmod" 
    2481         default y 
    2482         help 
    2483           lsmod is used to display a list of loaded modules. 
    2484  
    2485 config BUSYBOX_CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT 
    2486         bool "lsmod pretty output for 2.6.x Linux kernels " 
    2487         default n 
    2488         depends on BUSYBOX_CONFIG_LSMOD 
    2489         help 
    2490           This option makes output format of lsmod adjusted to 
    2491           the format of module-init-tools for Linux kernel 2.6. 
    2492  
    2493 config BUSYBOX_CONFIG_MODPROBE 
    2494         bool "modprobe" 
    2495         default n 
    2496         help 
    2497           Handle the loading of modules, and their dependencies on a high 
    2498           level. 
    2499  
    2500           Note that in the state, modprobe does not understand multiple 
    2501           module options from the configuration file. See option below. 
    2502  
    2503 config BUSYBOX_CONFIG_FEATURE_MODPROBE_MULTIPLE_OPTIONS 
    2504         bool 
    2505         prompt "Multiple options parsing" if BUSYBOX_CONFIG_NITPICK 
    2506         default y 
    2507         depends on BUSYBOX_CONFIG_MODPROBE 
    2508         help 
    2509           Allow modprobe to understand more than one option to pass to 
    2510           modules. 
    2511  
    2512           This is a WIP, while waiting for a common argument parsing 
    2513           common amongst all BB applets (shell, modprobe, etc...) and 
    2514           adds around 600 bytes on x86, 700 bytes on ARM. The code is 
    2515           biggish and uggly, but just works. 
    2516  
    2517           Saying Y here is not a bad idea if you're not that short 
    2518           on storage capacity. 
    2519  
    2520 config BUSYBOX_CONFIG_FEATURE_MODPROBE_FANCY_ALIAS 
    2521         bool 
    2522         prompt "Fancy alias parsing" if BUSYBOX_CONFIG_NITPICK 
    2523         default y 
    2524         depends on BUSYBOX_CONFIG_MODPROBE && BUSYBOX_CONFIG_FEATURE_2_6_MODULES 
    2525         help 
    2526           Say 'y' here to enable parsing of aliases with underscore/dash 
    2527           mismatch between module name and file name, along with bus-specific 
    2528           aliases (such as pci:... or usb:... aliases). 
    2529  
    2530 comment "Options common to multiple modutils" 
    2531         depends on BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_RMMOD || BUSYBOX_CONFIG_MODPROBE || BUSYBOX_CONFIG_LSMOD 
    2532  
    2533 config BUSYBOX_CONFIG_FEATURE_CHECK_TAINTED_MODULE 
    2534         # Simulate indentation 
    2535         bool "Support tainted module checking with new kernels" 
    2536         default y 
    2537         depends on BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_LSMOD 
    2538         help 
    2539           Support checking for tainted modules.  These are usually binary 
    2540           only modules that will make the linux-kernel list ignore your 
    2541           support request. 
    2542           This option is required to support GPLONLY modules. 
    2543  
    2544 config BUSYBOX_CONFIG_FEATURE_2_4_MODULES 
    2545         # Simulate indentation 
    2546         bool "Support version 2.2.x to 2.4.x Linux kernels" 
    2547         default y 
    2548         depends on BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_RMMOD || BUSYBOX_CONFIG_MODPROBE 
    2549         help 
    2550           Support module loading for 2.2.x and 2.4.x Linux kernels. 
    2551  
    2552 config BUSYBOX_CONFIG_FEATURE_2_6_MODULES 
    2553         # Simulate indentation 
    2554         bool "Support version 2.6.x Linux kernels" 
    2555         default y 
    2556         depends on BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_RMMOD || BUSYBOX_CONFIG_MODPROBE 
    2557         help 
    2558           Support module loading for newer 2.6.x Linux kernels. 
    2559  
    2560  
    2561 config BUSYBOX_CONFIG_FEATURE_QUERY_MODULE_INTERFACE 
    2562         bool 
    2563         default n 
    2564         depends on BUSYBOX_CONFIG_FEATURE_2_4_MODULES && !BUSYBOX_CONFIG_FEATURE_2_6_MODULES 
    2565  
    2566  
    2567 endmenu 
    2568  
    2569 
    2570 # For a description of the syntax of this configuration file, 
    2571 # see scripts/kbuild/config-language.txt. 
    2572 
    2573  
    2574 menu "Linux System Utilities" 
    2575  
    2576 config BUSYBOX_CONFIG_DMESG 
    2577         bool "dmesg" 
    2578         default y 
    2579         help 
    2580           dmesg is used to examine or control the kernel ring buffer.  When the 
    2581           Linux kernel prints messages to the system log, they are stored in 
    2582           the kernel ring buffer.  You can use dmesg to print the kernel's ring 
    2583           buffer, clear the kernel ring buffer, change the size of the kernel 
    2584           ring buffer, and change the priority level at which kernel messages 
    2585           are also logged to the system console.  Enable this option if you 
    2586           wish to enable the 'dmesg' utility. 
    2587  
    2588 config BUSYBOX_CONFIG_FEATURE_DMESG_PRETTY 
    2589         bool "pretty dmesg output" 
    2590         default y 
    2591         depends on BUSYBOX_CONFIG_DMESG 
    2592         help 
    2593           If you wish to scrub the syslog level from the output, say 'Y' here. 
    2594           The syslog level is a string prefixed to every line with the form "<#>". 
    2595  
    2596           With this option you will see: 
    2597             # dmesg 
    2598             Linux version 2.6.17.4 ..... 
    2599             BIOS-provided physical RAM map: 
    2600              BIOS-e820: 0000000000000000 - 000000000009f000 (usable) 
    2601  
    2602           Without this option you will see: 
    2603             # dmesg 
    2604             <5>Linux version 2.6.17.4 ..... 
    2605             <6>BIOS-provided physical RAM map: 
    2606             <6> BIOS-e820: 0000000000000000 - 000000000009f000 (usable) 
    2607  
    2608 config BUSYBOX_CONFIG_FBSET 
    2609         bool "fbset" 
    2610         default n 
    2611         help 
    2612           fbset is used to show or change the settings of a Linux frame buffer 
    2613           device.  The frame buffer device provides a simple and unique 
    2614           interface to access a graphics display.  Enable this option 
    2615           if you wish to enable the 'fbset' utility. 
    2616  
    2617 config BUSYBOX_CONFIG_FEATURE_FBSET_FANCY 
    2618         bool "Turn on extra fbset options" 
    2619         default n 
    2620         depends on BUSYBOX_CONFIG_FBSET 
    2621         help 
    2622           This option enables extended fbset options, allowing one to set the 
    2623           framebuffer size, color depth, etc.  interface to access a graphics 
    2624           display.  Enable this option if you wish to enable extended fbset 
    2625           options. 
    2626  
    2627 config BUSYBOX_CONFIG_FEATURE_FBSET_READMODE 
    2628         bool "Turn on fbset readmode support" 
    2629         default n 
    2630         depends on BUSYBOX_CONFIG_FBSET 
    2631         help 
    2632           This option allows fbset to read the video mode database stored by 
    2633           default as /etc/fb.modes, which can be used to set frame buffer 
    2634           device to pre-defined video modes. 
    2635  
    2636 config BUSYBOX_CONFIG_FDFLUSH 
    2637         bool "fdflush" 
    2638         default n 
    2639         help 
    2640           fdflush is only needed when changing media on slightly-broken 
    2641           removable media drives.  It is used to make Linux believe that a 
    2642           hardware disk-change switch has been actuated, which causes Linux to 
    2643           forget anything it has cached from the previous media.  If you have 
    2644           such a slightly-broken drive, you will need to run fdflush every time 
    2645           you change a disk.  Most people have working hardware and can safely 
    2646           leave this disabled. 
    2647  
    2648 config BUSYBOX_CONFIG_FDFORMAT 
    2649         bool "fdformat" 
    2650         default n 
    2651         help 
    2652           fdformat is used to low-level format a floppy disk. 
    2653  
    2654 config BUSYBOX_CONFIG_FDISK 
    2655         bool "fdisk" 
    2656         default n 
    2657         help 
    2658           The fdisk utility is used to divide hard disks into one or more 
    2659           logical disks, which are generally called partitions.  This utility 
    2660           can be used to list and edit the set of partitions or BSD style 
    2661           'disk slices' that are defined on a hard drive. 
    2662  
    2663 config BUSYBOX_CONFIG_FDISK_SUPPORT_LARGE_DISKS 
    2664         bool "support over 4GB disks" 
    2665         default y 
    2666         depends on BUSYBOX_CONFIG_FDISK 
    2667         help 
    2668           Enable this option to support large disks > 4GB. 
    2669  
    2670 config BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE 
    2671         bool "Write support" 
    2672         default y 
    2673         depends on BUSYBOX_CONFIG_FDISK 
    2674         help 
    2675           Enabling this option allows you to create or change a partition table 
    2676           and write those changes out to disk.  If you leave this option 
    2677           disabled, you will only be able to view the partition table. 
    2678  
    2679 config BUSYBOX_CONFIG_FEATURE_AIX_LABEL 
    2680         bool "Support AIX disklabels" 
    2681         default n 
    2682         depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE 
    2683         help 
    2684           Enabling this option allows you to create or change AIX disklabels. 
    2685           Most people can safely leave this option disabled. 
    2686  
    2687 config BUSYBOX_CONFIG_FEATURE_SGI_LABEL 
    2688         bool "Support SGI disklabels" 
    2689         default n 
    2690         depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE 
    2691         help 
    2692           Enabling this option allows you to create or change SGI disklabels. 
    2693           Most people can safely leave this option disabled. 
    2694  
    2695 config BUSYBOX_CONFIG_FEATURE_SUN_LABEL 
    2696         bool "Support SUN disklabels" 
    2697         default n 
    2698         depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE 
    2699         help 
    2700           Enabling this option allows you to create or change SUN disklabels. 
    2701           Most people can safely leave this option disabled. 
    2702  
    2703 config BUSYBOX_CONFIG_FEATURE_OSF_LABEL 
    2704         bool "Support BSD disklabels" 
    2705         default n 
    2706         depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE 
    2707         help 
    2708           Enabling this option allows you to create or change BSD disklabels 
    2709           and define and edit BSD disk slices. 
    2710  
    2711 config BUSYBOX_CONFIG_FEATURE_FDISK_ADVANCED 
    2712         bool "Support expert mode" 
    2713         default n 
    2714         depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE 
    2715         help 
    2716           Enabling this option allows you to do terribly unsafe things like 
    2717           define arbitrary drive geometry, move the beginning of data in a 
    2718           partition, and similarly evil things.  Unless you have a very good 
    2719           reason you would be wise to leave this disabled. 
    2720  
    2721 config BUSYBOX_CONFIG_FREERAMDISK 
    2722         bool "freeramdisk" 
    2723         default n 
    2724         help 
    2725           Linux allows you to create ramdisks.  This utility allows you to 
    2726           delete them and completely free all memory that was used for the 
    2727           ramdisk.  For example, if you boot Linux into a ramdisk and later 
    2728           pivot_root, you may want to free the memory that is allocated to the 
    2729           ramdisk.  If you have no use for freeing memory from a ramdisk, leave 
    2730           this disabled. 
    2731  
    2732 config BUSYBOX_CONFIG_FSCK_MINIX 
    2733         bool "fsck_minix" 
    2734         default n 
    2735         help 
    2736           The minix filesystem is a nice, small, compact, read-write filesystem 
    2737           with little overhead.  It is not a journaling filesystem however and 
    2738           can experience corruption if it is not properly unmounted or if the 
    2739           power goes off in the middle of a write.  This utility allows you to 
    2740           check for and attempt to repair any corruption that occurs to a minix 
    2741           filesystem. 
    2742  
    2743 config BUSYBOX_CONFIG_MKFS_MINIX 
    2744         bool "mkfs_minix" 
    2745         default n 
    2746         help 
    2747           The minix filesystem is a nice, small, compact, read-write filesystem 
    2748           with little overhead.  If you wish to be able to create minix filesystems 
    2749           this utility will do the job for you. 
    2750  
    2751 comment "Minix filesystem support" 
    2752     depends on BUSYBOX_CONFIG_FSCK_MINIX || BUSYBOX_CONFIG_MKFS_MINIX 
    2753  
    2754 config BUSYBOX_CONFIG_FEATURE_MINIX2 
    2755         bool "Support Minix fs v2 (fsck_minix/mkfs_minix)" 
    2756         default y 
    2757         depends on BUSYBOX_CONFIG_FSCK_MINIX || BUSYBOX_CONFIG_MKFS_MINIX 
    2758         help 
    2759           If you wish to be able to create version 2 minix filesystems, enable this. 
    2760           If you enabled 'mkfs_minix' then you almost certainly want to be using the 
    2761           version 2 filesystem support. 
    2762  
    2763 config BUSYBOX_CONFIG_GETOPT 
    2764         bool "getopt" 
    2765         default n 
    2766         help 
    2767           The getopt utility is used to break up (parse) options in command 
    2768           lines to make it easy to write complex shell scripts that also check 
    2769           for legal (and illegal) options.  If you want to write horribly 
    2770           complex shell scripts, or use some horribly complex shell script 
    2771           written by others, this utility may be for you.  Most people will 
    2772           wisely leave this disabled. 
    2773  
    2774 config BUSYBOX_CONFIG_HEXDUMP 
    2775         bool "hexdump" 
    2776         default y 
    2777         help 
    2778           The hexdump utility is used to display binary data in a readable 
    2779           way that is comparable to the output from most hex editors. 
    2780  
    2781 config BUSYBOX_CONFIG_HWCLOCK 
    2782         bool "hwclock" 
    2783         default n 
    2784         help 
    2785           The hwclock utility is used to read and set the hardware clock 
    2786           on a system.  This is primarily used to set the current time on 
    2787           shutdown in the hardware clock, so the hardware will keep the 
    2788           correct time when Linux is _not_ running. 
    2789  
    2790 config BUSYBOX_CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS 
    2791         bool "Support long options (--hctosys,...)" 
    2792         default n 
    2793         depends on BUSYBOX_CONFIG_HWCLOCK && BUSYBOX_CONFIG_GETOPT_LONG 
    2794         help 
    2795           By default, the hwclock utility only uses short options.  If you 
    2796           are overly fond of its long options, such as --hctosys, --utc, etc) 
    2797           then enable this option. 
    2798  
    2799 config BUSYBOX_CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS 
    2800         bool "Use FHS /var/lib/hwclock/adjtime" 
    2801         default y 
    2802         depends on BUSYBOX_CONFIG_HWCLOCK 
    2803         help 
    2804           Starting with FHS 2.3, the adjtime state file is supposed to exist 
    2805           at /var/lib/hwclock/adjtime instead of /etc/adjtime.  If you wish 
    2806           to use the FHS behavior, answer Y here, otherwise answer N for the 
    2807           classic /etc/adjtime path. 
    2808  
    2809           http://www.pathname.com/fhs/pub/fhs-2.3.html#VARLIBHWCLOCKSTATEDIRECTORYFORHWCLO 
    2810  
    2811 config BUSYBOX_CONFIG_IPCRM 
    2812         bool "ipcrm" 
    2813         default n 
    2814         select BUSYBOX_CONFIG_FEATURE_SUID 
    2815         help 
    2816           The ipcrm utility allows the removal of System V interprocess 
    2817           communication (IPC) objects and the associated data structures 
    2818           from the system. 
    2819  
    2820 config BUSYBOX_CONFIG_IPCS 
    2821         bool "ipcs" 
    2822         default n 
    2823         select BUSYBOX_CONFIG_FEATURE_SUID 
    2824         help 
    2825           The ipcs utility is used to provide information on the currently 
    2826           allocated System V interprocess (IPC) objects in the system. 
    2827  
    2828 config BUSYBOX_CONFIG_LOSETUP 
    2829         bool "losetup" 
    2830         default n 
    2831         help 
    2832           losetup is used to associate or detach a loop device with a regular 
    2833           file or block device, and to query the status of a loop device.  This 
    2834           version does not currently support enabling data encryption. 
    2835  
    2836 config BUSYBOX_CONFIG_MDEV 
    2837         bool "mdev" 
    2838         default n 
    2839         help 
    2840           mdev is a mini-udev implementation: call it with -s to populate 
    2841           /dev from /sys, then "echo /sbin/mdev > /proc/sys/kernel/hotplug" to 
    2842           have it handle hotplug events afterwards.  Device names are taken 
    2843           from sysfs. 
    2844  
    2845 config BUSYBOX_CONFIG_FEATURE_MDEV_CONF 
    2846         bool "Support /etc/mdev.conf" 
    2847         default n 
    2848         depends on BUSYBOX_CONFIG_MDEV 
    2849         help 
    2850           The mdev config file contains lines that look like: 
    2851  
    2852             hd[a-z][0-9]* 0:3 660 
    2853  
    2854           That's device name (with regex match), uid:gid, and permissions. 
    2855  
    2856           Config file parsing stops on the first matching line.  If no config 
    2857           entry is matched, devices are created with default 0:0 660.  (Make 
    2858           the last line match .* to override this.) 
    2859  
    2860 config BUSYBOX_CONFIG_FEATURE_MDEV_EXEC 
    2861         bool "Support command execution at device addition/removal" 
    2862         default n 
    2863         depends on BUSYBOX_CONFIG_FEATURE_MDEV_CONF 
    2864         help 
    2865           This adds support for an optional field to /etc/mdev.conf, consisting 
    2866           of a special character and a command line to run after creating the 
    2867           corresponding device(s) and before removing, ala: 
    2868  
    2869             hdc root:cdrom 660  *ln -s $MDEV cdrom 
    2870  
    2871           The $MDEV environment variable is set to the name of the device. 
    2872  
    2873           The special characters and their meanings are: 
    2874             @ Run after creating the device. 
    2875             $ Run before removing the device. 
    2876             * Run both after creating and before removing the device. 
    2877  
    2878           Commands are executed via system() so you need /bin/sh, meaning you 
    2879           probably want to select a default shell in the Shells menu. 
    2880  
    2881 config BUSYBOX_CONFIG_MKSWAP 
    2882         bool "mkswap" 
    2883         default n 
    2884         help 
    2885           The mkswap utility is used to configure a file or disk partition as 
    2886           Linux swap space.  This allows Linux to use the entire file or 
    2887           partition as if it were additional RAM, which can greatly increase 
    2888           the capability of low-memory machines.  This additional memory is 
    2889           much slower than real RAM, but can be very helpful at preventing your 
    2890           applications being killed by the Linux out of memory (OOM) killer. 
    2891           Once you have created swap space using 'mkswap' you need to enable 
    2892           the swap space using the 'swapon' utility. 
    2893  
    2894 config BUSYBOX_CONFIG_FEATURE_MKSWAP_V0 
    2895         bool "version 0 support" 
    2896         default n 
    2897         depends on BUSYBOX_CONFIG_MKSWAP 
    2898 #       depends on BUSYBOX_CONFIG_MKSWAP && DEPRECATED 
    2899         help 
    2900           Enable support for the old v0 style. 
    2901           If your kernel is older than 2.1.117, then v0 support is the 
    2902           only option. 
    2903  
    2904 config BUSYBOX_CONFIG_MORE 
    2905         bool "more" 
    2906         default y 
    2907         help 
    2908           more is a simple utility which allows you to read text one screen 
    2909           sized page at a time.  If you want to read text that is larger than 
    2910           the screen, and you are using anything faster than a 300 baud modem, 
    2911           you will probably find this utility very helpful.  If you don't have 
    2912           any need to reading text files, you can leave this disabled. 
    2913  
    2914 config BUSYBOX_CONFIG_FEATURE_USE_TERMIOS 
    2915         bool "Use termios to manipulate the screen" 
    2916         default y 
    2917         depends on BUSYBOX_CONFIG_MORE 
    2918         help 
    2919           This option allows utilities such as 'more' and 'top' to determine 
    2920           the size of the screen.  If you leave this disabled, your utilities 
    2921           that display things on the screen will be especially primitive and 
    2922           will be unable to determine the current screen size, and will be 
    2923           unable to move the cursor. 
    2924  
    2925 config BUSYBOX_CONFIG_MOUNT 
    2926         bool "mount" 
    2927         default y 
    2928         help 
    2929           All files and filesystems in Unix are arranged into one big directory 
    2930           tree.  The 'mount' utility is used to graft a filesystem onto a 
    2931           particular part of the tree.  A filesystem can either live on a block 
    2932           device, or it can be accessible over the network, as is the case with 
    2933           NFS filesystems.  Most people using BusyBox will also want to enable 
    2934           the 'mount' utility. 
    2935  
    2936 config BUSYBOX_CONFIG_FEATURE_MOUNT_NFS 
    2937         bool "Support mounting NFS file systems" 
    2938         default y 
    2939         depends on BUSYBOX_CONFIG_MOUNT 
    2940         depends on BUSYBOX_CONFIG_FEATURE_HAVE_RPC 
    2941         select BUSYBOX_CONFIG_FEATURE_SYSLOG 
    2942         help 
    2943           Enable mounting of NFS file systems. 
    2944  
    2945 config BUSYBOX_CONFIG_FEATURE_MOUNT_CIFS 
    2946         bool "Support mounting CIFS/SMB file systems" 
    2947         default n 
    2948         depends on BUSYBOX_CONFIG_MOUNT 
    2949         help 
    2950           Enable support for samba mounts. 
    2951  
    2952 config BUSYBOX_CONFIG_FEATURE_MOUNT_FLAGS 
    2953         depends on BUSYBOX_CONFIG_MOUNT 
    2954         bool "Support lots of -o flags in mount" 
    2955         default y 
    2956         help 
    2957           Without this, mount only supports ro/rw/remount.  With this, it 
    2958           supports nosuid, suid, dev, nodev, exec, noexec, sync, async, atime, 
    2959           noatime, diratime, nodiratime, loud, bind, move, shared, slave, 
    2960           private, unbindable, rshared, rslave, rprivate, and runbindable. 
    2961  
    2962 config BUSYBOX_CONFIG_FEATURE_MOUNT_FSTAB 
    2963         depends on BUSYBOX_CONFIG_MOUNT 
    2964         bool "Support /etc/fstab and -a" 
    2965         default y 
    2966         help 
    2967           Support mount all and looking for files in /etc/fstab. 
    2968  
    2969 config BUSYBOX_CONFIG_PIVOT_ROOT 
    2970         bool "pivot_root" 
    2971         default y 
    2972         help 
    2973           The pivot_root utility swaps the mount points for the root filesystem 
    2974           with some other mounted filesystem.  This allows you to do all sorts 
    2975           of wild and crazy things with your Linux system and is far more 
    2976           powerful than 'chroot'. 
    2977  
    2978           Note: This is for initrd in linux 2.4.  Under initramfs (introduced 
    2979           in linux 2.6) use switch_root instead. 
    2980  
    2981 config BUSYBOX_CONFIG_RDATE 
    2982         bool "rdate" 
    2983         default n 
    2984         help 
    2985           The rdate utility allows you to synchronize the date and time of your 
    2986           system clock with the date and time of a remote networked system using 
    2987           the RFC868 protocol, which is built into the inetd daemon on most 
    2988           systems. 
    2989           The rdate package (available under Networking) also supports NTP, 
    2990           that's why this is not selected by default any more. 
    2991  
    2992 config BUSYBOX_CONFIG_READPROFILE 
    2993         bool "readprofile" 
    2994         default n 
    2995         help 
    2996           This allows you to parse /proc/profile for basic profiling. 
    2997  
    2998 config BUSYBOX_CONFIG_SETARCH 
    2999         bool "setarch" 
    3000         default n 
    3001         help 
    3002           The linux32 utility is used to create a 32bit environment for the 
    3003           specified program (usually a shell).  It only makes sense to have 
    3004           this util on a system that supports both 64bit and 32bit userland 
    3005           (like amd64/x86, ppc64/ppc, sparc64/sparc, etc...). 
    3006  
    3007 config BUSYBOX_CONFIG_SWAPONOFF 
    3008         bool "swaponoff" 
    3009         default n 
    3010         help 
    3011           This option enables both the 'swapon' and the 'swapoff' utilities. 
    3012           Once you have created some swap space using 'mkswap', you also need 
    3013           to enable your swap space with the 'swapon' utility.  The 'swapoff' 
    3014           utility is used, typically at system shutdown, to disable any swap 
    3015           space.  If you are not using any swap space, you can leave this 
    3016           option disabled. 
    3017  
    3018 config BUSYBOX_CONFIG_SWITCH_ROOT 
    3019         bool "switch_root" 
    3020         default y 
    3021         help 
    3022           The switch_root utility is used from initramfs to select a new 
    3023           root device.  Under initramfs, you have to use this instead of 
    3024           pivot_root.  (Stop reading here if you don't care why.) 
    3025  
    3026           Booting with initramfs extracts a gzipped cpio archive into rootfs 
    3027           (which is a variant of ramfs/tmpfs).  Because rootfs can't be moved 
    3028           or unmounted*, pivot_root will not work from initramfs.  Instead, 
    3029           switch_root deletes everything out of rootfs (including itself), 
    3030           does a mount --move that overmounts rootfs with the new root, and 
    3031           then execs the specified init program. 
    3032  
    3033           * Because the Linux kernel uses rootfs internally as the starting 
    3034           and ending point for searching through the kernel's doubly linked 
    3035           list of active mount points.  That's why. 
    3036  
    3037 config BUSYBOX_CONFIG_UMOUNT 
    3038         bool "umount" 
    3039         default y 
    3040         help 
    3041           When you want to remove a mounted filesystem from its current mount point, 
    3042           for example when you are shutting down the system, the 'umount' utility is 
    3043           the tool to use.  If you enabled the 'mount' utility, you almost certainly 
    3044           also want to enable 'umount'. 
    3045  
    3046 config BUSYBOX_CONFIG_FEATURE_UMOUNT_ALL 
    3047         bool "umount -a option" 
    3048         default y 
    3049         depends on BUSYBOX_CONFIG_UMOUNT 
    3050         help 
    3051           Support -a option to unmount all currently mounted filesystems. 
    3052  
    3053 comment "Common options for mount/umount" 
    3054         depends on BUSYBOX_CONFIG_MOUNT || BUSYBOX_CONFIG_UMOUNT 
    3055  
    3056 config BUSYBOX_CONFIG_FEATURE_MOUNT_LOOP 
    3057         bool "Support loopback mounts" 
    3058         default y 
    3059         depends on BUSYBOX_CONFIG_MOUNT || BUSYBOX_CONFIG_UMOUNT 
    3060         help 
    3061           Enabling this feature allows automatic mounting of files (containing 
    3062           filesystem images) via the linux kernel's loopback devices.  The mount 
    3063           command will detect you are trying to mount a file instead of a block 
    3064           device, and transparently associate the file with a loopback device. 
    3065           The umount command will also free that loopback device. 
    3066  
    3067           You can still use the 'losetup' utility (to manually associate files 
    3068           with loop devices) if you need to do something advanced, such as 
    3069           specify an offset or cryptographic options to the loopback device. 
    3070           (If you don't want umount to free the loop device, use "umount -D".) 
    3071  
    3072 config BUSYBOX_CONFIG_FEATURE_MTAB_SUPPORT 
    3073         bool "Support for the old /etc/mtab file" 
    3074         default n 
    3075         depends on BUSYBOX_CONFIG_MOUNT || BUSYBOX_CONFIG_UMOUNT 
    3076         help 
    3077           Historically, Unix systems kept track of the currently mounted 
    3078           partitions in the file "/etc/mtab".  These days, the kernel exports 
    3079           the list of currently mounted partitions in "/proc/mounts", rendering 
    3080           the old mtab file obsolete.  (In modern systems, /etc/mtab should be 
    3081           a symlink to /proc/mounts.) 
    3082  
    3083           The only reason to have mount maintain an /etc/mtab file itself is if 
    3084           your stripped-down embedded system does not have a /proc directory. 
    3085           If you must use this, keep in mind it's inherently brittle (for 
    3086           example a mount under chroot won't update it), can't handle modern 
    3087           features like separate per-process filesystem namespaces, requires 
    3088           that your /etc directory be writeable, tends to get easily confused 
    3089           by --bind or --move mounts, won't update if you rename a directory 
    3090           that contains a mount point, and so on.  (In brief: avoid.) 
    3091  
    3092           About the only reason to use this is if you've removed /proc from 
    3093           your kernel. 
    3094  
    3095 endmenu 
    3096 
    3097 # For a description of the syntax of this configuration file, 
    3098 # see scripts/kbuild/config-language.txt. 
    3099 
    3100  
    3101 menu "Miscellaneous Utilities" 
    3102  
    3103 config BUSYBOX_CONFIG_ADJTIMEX 
    3104         bool "adjtimex" 
    3105         default n 
    3106         help 
    3107           Adjtimex reads and optionally sets adjustment parameters for 
    3108           the Linux clock adjustment algorithm. 
    3109  
    3110 config BUSYBOX_CONFIG_BBCONFIG 
    3111         bool "bbconfig" 
    3112         default n 
    3113         help 
    3114           The bbconfig applet will print the config file with which 
    3115           busybox was built. 
    3116  
    3117 config BUSYBOX_CONFIG_CROND 
    3118         bool "crond" 
    3119         default y 
    3120         select BUSYBOX_CONFIG_FEATURE_SUID 
    3121         select BUSYBOX_CONFIG_FEATURE_SYSLOG 
    3122         help 
    3123           Crond is a background daemon that parses individual crontab 
    3124           files and executes commands on behalf of the users in question. 
    3125           This is a port of dcron from slackware.  It uses files of the 
    3126           format /var/spool/cron/crontabs/<username> files, for example: 
    3127               $ cat /var/spool/cron/crontabs/root 
    3128               # Run daily cron jobs at 4:40 every day: 
    3129               40 4 * * * /etc/cron/daily > /dev/null 2>&1 
    3130           Note that Busybox binary must be setuid root for this applet to 
    3131           work properly. 
    3132  
    3133 config BUSYBOX_CONFIG_DEBUG_CROND_OPTION 
    3134         bool "Support debug option -d" 
    3135         depends on BUSYBOX_CONFIG_CROND 
    3136         default n 
    3137         help 
    3138           Support option -d to enter debug mode. 
    3139  
    3140 config BUSYBOX_CONFIG_FEATURE_CROND_CALL_SENDMAIL 
    3141         bool "Using /usr/sbin/sendmail?" 
    3142         default n 
    3143         depends on BUSYBOX_CONFIG_CROND 
    3144         help 
    3145           Support calling /usr/sbin/sendmail for send cmd outputs. 
    3146  
    3147 config BUSYBOX_CONFIG_CRONTAB 
    3148         bool "crontab" 
    3149         default y 
    3150         select BUSYBOX_CONFIG_FEATURE_SUID 
    3151         help 
    3152           Crontab manipulates the crontab for a particular user.  Only 
    3153           the superuser may specify a different user and/or crontab directory. 
    3154  
    3155 config BUSYBOX_CONFIG_DC 
    3156         bool "dc" 
    3157         default n 
    3158         help 
    3159           Dc is a reverse-polish desk calculator which supports unlimited 
    3160           precision arithmetic. 
    3161  
    3162 config BUSYBOX_CONFIG_DEVFSD 
    3163         bool "devfsd (obsolete)" 
    3164         default n 
    3165         select BUSYBOX_CONFIG_FEATURE_SYSLOG 
    3166         help 
    3167           This is deprecated, and will be removed at the end of 2008. 
    3168  
    3169           Provides compatibility with old device names on a devfs systems. 
    3170           You should set it to true if you have devfs enabled. 
    3171           The following keywords in devsfd.conf are supported: 
    3172           "CLEAR_CONFIG", "INCLUDE", "OPTIONAL_INCLUDE", "RESTORE", 
    3173           "PERMISSIONS", "EXECUTE", "COPY", "IGNORE", 
    3174           "MKOLDCOMPAT", "MKNEWCOMPAT","RMOLDCOMPAT", "RMNEWCOMPAT". 
    3175  
    3176            But only if they are written UPPERCASE!!!!!!!! 
    3177  
    3178 config BUSYBOX_CONFIG_DEVFSD_MODLOAD 
    3179         bool "Adds support for MODLOAD keyword in devsfd.conf" 
    3180         default n 
    3181         depends on BUSYBOX_CONFIG_DEVFSD 
    3182         help 
    3183           This actually doesn't work with busybox modutils but needs 
    3184           the external modutils. 
    3185  
    3186 config BUSYBOX_CONFIG_DEVFSD_FG_NP 
    3187         bool "Enables the -fg and -np options" 
    3188         default n 
    3189         depends on BUSYBOX_CONFIG_DEVFSD 
    3190         help 
    3191                 -fg     Run the daemon in the foreground. 
    3192                 -np     Exit  after  parsing  the configuration file. Do not poll for events. 
    3193  
    3194 config BUSYBOX_CONFIG_DEVFSD_VERBOSE 
    3195         bool "Increases logging (and size)" 
    3196         default n 
    3197         depends on BUSYBOX_CONFIG_DEVFSD 
    3198         help 
    3199           Increases logging to stderr or syslog. 
    3200  
    3201 config BUSYBOX_CONFIG_FEATURE_DEVFS 
    3202         bool "  Use devfs names for all devices (obsolete)" 
    3203         default n 
    3204         help 
    3205           This is obsolete and will be going away at the end of 2008.. 
    3206  
    3207           This tells busybox to look for names like /dev/loop/0 instead of 
    3208           /dev/loop0.  If your /dev directory has normal names instead of 
    3209           devfs names, you don't want this. 
    3210  
    3211 config BUSYBOX_CONFIG_EJECT 
    3212         bool "eject" 
    3213         default n 
    3214         help 
    3215           Used to eject cdroms.  (defaults to /dev/cdrom) 
    3216  
    3217 config BUSYBOX_CONFIG_LAST 
    3218         bool "last" 
    3219         default n 
    3220         select BUSYBOX_CONFIG_FEATURE_WTMP 
    3221         help 
    3222           'last' displays a list of the last users that logged into the system. 
    3223  
    3224 config BUSYBOX_CONFIG_LESS 
    3225         bool "less" 
    3226         default n 
    3227         help 
    3228           'less' is a pager, meaning that it displays text files. It possesses 
    3229           a wide array of features, and is an improvement over 'more'. 
    3230  
    3231 config BUSYBOX_CONFIG_FEATURE_LESS_MAXLINES 
    3232         int "Max number of input lines less will try to eat" 
    3233         default 9999999 
    3234         depends on BUSYBOX_CONFIG_LESS 
    3235  
    3236 config BUSYBOX_CONFIG_FEATURE_LESS_BRACKETS 
    3237         bool "Enable bracket searching" 
    3238         default y 
    3239         depends on BUSYBOX_CONFIG_LESS 
    3240         help 
    3241           This option adds the capability to search for matching left and right 
    3242           brackets, facilitating programming. 
    3243  
    3244 config BUSYBOX_CONFIG_FEATURE_LESS_FLAGS 
    3245         bool "Enable extra flags" 
    3246         default y 
    3247         depends on BUSYBOX_CONFIG_LESS 
    3248         help 
    3249           The extra flags provided do the following: 
    3250  
    3251           The -M flag enables a more sophisticated status line. 
    3252           The -m flag enables a simpler status line with a percentage. 
    3253  
    3254 config BUSYBOX_CONFIG_FEATURE_LESS_FLAGCS 
    3255         bool "Enable flag changes" 
    3256         default n 
    3257         depends on BUSYBOX_CONFIG_LESS 
    3258         help 
    3259           This enables the ability to change command-line flags within 
    3260           less itself. 
    3261  
    3262 config BUSYBOX_CONFIG_FEATURE_LESS_MARKS 
    3263         bool "Enable marks" 
    3264         default n 
    3265         depends on BUSYBOX_CONFIG_LESS 
    3266         help 
    3267           Marks enable positions in a file to be stored for easy reference. 
    3268  
    3269 config BUSYBOX_CONFIG_FEATURE_LESS_REGEXP 
    3270         bool "Enable regular expressions" 
    3271         default n 
    3272         depends on BUSYBOX_CONFIG_LESS 
    3273         help 
    3274           Enable regular expressions, allowing complex file searches. 
    3275  
    3276 config BUSYBOX_CONFIG_HDPARM 
    3277         bool "hdparm" 
    3278         default n 
    3279         help 
    3280           Get/Set hard drive parameters.  Primarily intended for ATA 
    3281           drives.  Adds about 13k (or around 30k if you enable the 
    3282           BUSYBOX_CONFIG_FEATURE_HDPARM_GET_IDENTITY option).... 
    3283  
    3284 config BUSYBOX_CONFIG_FEATURE_HDPARM_GET_IDENTITY 
    3285         bool "Support obtaining detailed information directly from drives" 
    3286         default y 
    3287         depends on BUSYBOX_CONFIG_HDPARM 
    3288         help 
    3289           Enables the -I and -i options to obtain detailed information 
    3290           directly from drives about their capabilities and supported ATA 
    3291           feature set. If no device name is specified, hdparm will read 
    3292           identify data from stdin. Enabling this option will add about 16k... 
    3293  
    3294 config BUSYBOX_CONFIG_FEATURE_HDPARM_HDIO_SCAN_HWIF 
    3295         bool "Register an IDE interface (DANGEROUS)" 
    3296         default n 
    3297         depends on BUSYBOX_CONFIG_HDPARM 
    3298         help 
    3299           Enables the 'hdparm -R' option to register an IDE interface. 
    3300           This is dangerous stuff, so you should probably say N. 
    3301  
    3302 config BUSYBOX_CONFIG_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF 
    3303         bool "Un-register an IDE interface (DANGEROUS)" 
    3304         default n 
    3305         depends on BUSYBOX_CONFIG_HDPARM 
    3306         help 
    3307           Enables the 'hdparm -U' option to un-register an IDE interface. 
    3308           This is dangerous stuff, so you should probably say N. 
    3309  
    3310 config BUSYBOX_CONFIG_FEATURE_HDPARM_HDIO_DRIVE_RESET 
    3311         bool "perform device reset (DANGEROUS)" 
    3312         default n 
    3313         depends on BUSYBOX_CONFIG_HDPARM 
    3314         help 
    3315           Enables the 'hdparm -w' option to perform a device reset. 
    3316           This is dangerous stuff, so you should probably say N. 
    3317  
    3318 config BUSYBOX_CONFIG_FEATURE_HDPARM_HDIO_TRISTATE_HWIF 
    3319         bool "tristate device for hotswap (DANGEROUS)" 
    3320         default n 
    3321         depends on BUSYBOX_CONFIG_HDPARM 
    3322         help 
    3323           Enables the 'hdparm -x' option to tristate device for hotswap, 
    3324           and the '-b' option to get/set bus state.  This is dangerous 
    3325           stuff, so you should probably say N. 
    3326  
    3327 config BUSYBOX_CONFIG_FEATURE_HDPARM_HDIO_GETSET_DMA 
    3328         bool "get/set using_dma flag (DANGEROUS)" 
    3329         default n 
    3330         depends on BUSYBOX_CONFIG_HDPARM 
    3331         help 
    3332           Enables the 'hdparm -d' option to get/set using_dma flag. 
    3333           This is dangerous stuff, so you should probably say N. 
    3334  
    3335 config CONFIG_LOCK 
    3336         bool "lock" 
    3337         default y 
    3338         help 
    3339           Small utility for using locks in scripts 
    3340  
    3341 config BUSYBOX_CONFIG_MAKEDEVS 
    3342         bool "makedevs" 
    3343         default n 
    3344         help 
    3345           'makedevs' is a utility used to create a batch of devices with 
    3346           one command. 
    3347           . 
    3348           There are two choices for command line behaviour, the interface 
    3349           as used by LEAF/Linux Router Project, or a device table file. 
    3350           . 
    3351           'leaf' is traditionally what busybox follows, it allows multiple 
    3352           devices of a particluar type to be created per command. 
    3353           e.g. /dev/hda[0-9] 
    3354           Device properties are passed as command line arguments. 
    3355           . 
    3356           'table' reads device properties from a file or stdin, allowing 
    3357           a batch of unrelated devices to be made with one command. 
    3358           User/group names are allowed as an alternative to uid/gid. 
    3359  
    3360 choice 
    3361         prompt "Choose makedevs behaviour" 
    3362         depends BUSYBOX_CONFIG_MAKEDEVS 
    3363         default BUSYBOX_CONFIG_FEATURE_MAKEDEVS_TABLE 
    3364  
    3365 config BUSYBOX_CONFIG_FEATURE_MAKEDEVS_LEAF 
    3366         bool "leaf" 
    3367  
    3368 config BUSYBOX_CONFIG_FEATURE_MAKEDEVS_TABLE 
    3369         bool "table" 
    3370  
    3371 endchoice 
    3372  
    3373 config BUSYBOX_CONFIG_MOUNTPOINT 
    3374         bool "mountpoint" 
    3375         default n 
    3376         help 
    3377           mountpoint checks if the directory is a mountpoint. 
    3378  
    3379 config BUSYBOX_CONFIG_MT 
    3380         bool "mt" 
    3381         default n 
    3382         help 
    3383           mt is used to control tape devices.  You can use the mt utility 
    3384           to advance or rewind a tape past a specified number of archive 
    3385           files on the tape. 
    3386  
    3387 config BUSYBOX_CONFIG_NMETER 
    3388         bool "nmeter" 
    3389         default n 
    3390         help 
    3391           nmeter prints various system parameters continuously. 
    3392  
    3393 config BUSYBOX_CONFIG_RAIDAUTORUN 
    3394         bool "raidautorun" 
    3395         default n 
    3396         help 
    3397           raidautorun tells the kernel md driver to 
    3398           search and start RAID arrays. 
    3399  
    3400 config BUSYBOX_CONFIG_READAHEAD 
    3401         bool "readahead" 
    3402         default n 
    3403         depends BUSYBOX_CONFIG_LFS 
    3404         help 
    3405           Preload the files listed on the command line into RAM cache so that 
    3406           subsequent reads on these files will not block on disk I/O. 
    3407  
    3408           This applet just calls the readahead(2) system call on each file. 
    3409           It is mainly useful in system startup scripts to preload files 
    3410           or executables before they are used.  When used at the right time 
    3411           (in particular when a CPU boundprocess is running) it can 
    3412           significantly speed up system startup. 
    3413  
    3414           As readahead(2) blocks until each file has been read, it is best to 
    3415           run this applet as a background job. 
    3416  
    3417 config BUSYBOX_CONFIG_RUNLEVEL 
    3418         bool "runlevel" 
    3419         default n 
    3420         help 
    3421           find the current and previous system runlevel. 
    3422  
    3423           This applet uses utmp but does not rely on busybox supporing 
    3424           utmp on purpose. It is used by e.g. emdebian via /etc/init.d/rc. 
    3425  
    3426 config BUSYBOX_CONFIG_RX 
    3427         bool "rx" 
    3428         default n 
    3429         help 
    3430           Receive files using the Xmodem protocol. 
    3431  
    3432 config BUSYBOX_CONFIG_STRINGS 
    3433         bool "strings" 
    3434         default y 
    3435         help 
    3436           strings prints the printable character sequences for each file 
    3437           specified. 
    3438  
    3439 config BUSYBOX_CONFIG_SETSID 
    3440         bool "setsid" 
    3441         default n 
    3442         help 
    3443           setsid runs a program in a new session 
    3444  
    3445 config BUSYBOX_CONFIG_TASKSET 
    3446         bool "taskset" 
    3447         default n 
    3448         help 
    3449           Retrieve or set a processes's CPU affinity. 
    3450           This requires sched_{g,s}etaffinity support in your libc. 
    3451  
    3452 config BUSYBOX_CONFIG_FEATURE_TASKSET_FANCY 
    3453         bool "fancy output" 
    3454         default y 
    3455         depends on BUSYBOX_CONFIG_TASKSET 
    3456         help 
    3457           Add code for fancy output. This merely silences a compiler-warning 
    3458           and adds about 135 Bytes. May be needed for machines with alot 
    3459           of CPUs. 
    3460  
    3461 config BUSYBOX_CONFIG_TIME 
    3462         bool "time" 
    3463         default y 
    3464         help 
    3465           The time command runs the specified program with the given arguments. 
    3466           When the command finishes, time writes a message to standard output 
    3467           giving timing statistics about this program run. 
    3468  
    3469 config BUSYBOX_CONFIG_WATCHDOG 
    3470         bool "watchdog" 
    3471         default y 
    3472         help 
    3473           The watchdog utility is used with hardware or software watchdog 
    3474           device drivers.  It opens the specified watchdog device special file 
    3475           and periodically writes a magic character to the device.  If the 
    3476           watchdog applet ever fails to write the magic character within a 
    3477           certain amount of time, the watchdog device assumes the system has 
    3478           hung, and will cause the hardware to reboot. 
    3479  
    3480 endmenu 
    3481  
    3482 
    3483 # For a description of the syntax of this configuration file, 
    3484 # see scripts/kbuild/config-language.txt. 
    3485 
    3486  
    3487 menu "Networking Utilities" 
    3488  
    3489 comment "To enable IPv6 support, go to the top-level 'Networking config' menu" 
    3490         depends !FWRT_IPV6 
    3491  
    3492 config BUSYBOX_CONFIG_FEATURE_IPV6 
    3493         bool "Enable IPv6 support" 
    3494         depends FWRT_IPV6 
    3495         default n 
    3496         help 
    3497           Enable IPv6 support in busybox. 
    3498           This adds IPv6 support in the networking applets. 
    3499  
    3500 config BUSYBOX_CONFIG_ARP 
    3501         bool "arp" 
    3502         default y 
    3503         help 
    3504           Manipulate the system ARP cache 
    3505  
    3506 config BUSYBOX_CONFIG_ARPING 
    3507         bool "arping" 
    3508         default y 
    3509         help 
    3510           Ping hosts by ARP packets 
    3511  
    3512 config BUSYBOX_CONFIG_DNSD 
    3513         bool "dnsd" 
    3514         default n 
    3515         help 
    3516           Small and static DNS server daemon. 
    3517  
    3518 config BUSYBOX_CONFIG_ETHER_WAKE 
    3519         bool "ether-wake" 
    3520         default y 
    3521         help 
    3522           Send a magic packet to wake up sleeping machines. 
    3523  
    3524 config BUSYBOX_CONFIG_FAKEIDENTD 
    3525         bool "fakeidentd" 
    3526         default n 
    3527         select BUSYBOX_CONFIG_FEATURE_SYSLOG 
    3528         help 
    3529           fakeidentd listens on the ident port and returns a predefined 
    3530           fake value on any query. 
    3531  
    3532 config BUSYBOX_CONFIG_FTPGET 
    3533         bool "ftpget" 
    3534         default n 
    3535         help 
    3536           Retrieve a remote file via FTP. 
    3537  
    3538 config BUSYBOX_CONFIG_FTPPUT 
    3539         bool "ftpput" 
    3540         default n 
    3541         help 
    3542           Store a remote file via FTP. 
    3543  
    3544 config BUSYBOX_CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS 
    3545         bool "Enable long options in ftpget/ftpput" 
    3546         default n 
    3547         depends on BUSYBOX_CONFIG_GETOPT_LONG && (BUSYBOX_CONFIG_FTPGET || BUSYBOX_CONFIG_FTPPUT) 
    3548         help 
    3549           Support long options for the ftpget/ftpput applet. 
    3550  
    3551 config BUSYBOX_CONFIG_HOSTNAME 
    3552         bool "hostname" 
    3553         default n 
    3554         help 
    3555           Show or set the system's host name 
    3556  
    3557 config BUSYBOX_CONFIG_HTTPD 
    3558         bool "httpd" 
    3559         default n 
    3560         help 
    3561           Serve web pages via an HTTP server. 
    3562  
    3563 config BUSYBOX_CONFIG_FEATURE_HTTPD_RELOAD_CONFIG_SIGHUP 
    3564         bool "Support reloading the global config file using hup signal" 
    3565         default n 
    3566         depends on BUSYBOX_CONFIG_HTTPD 
    3567         help 
    3568           This option enables processing of SIGHUP to reload cached 
    3569           configuration settings. 
    3570  
    3571 config BUSYBOX_CONFIG_FEATURE_HTTPD_SETUID 
    3572         bool "Enable -u <user> option" 
    3573         default n 
    3574         depends on BUSYBOX_CONFIG_HTTPD 
    3575         help 
    3576           This option allows the server to run as a specific user 
    3577           rather than defaulting to the user that starts the server. 
    3578           Use of this option requires special privileges to change to a 
    3579           different user. 
    3580  
    3581 config BUSYBOX_CONFIG_FEATURE_HTTPD_BASIC_AUTH 
    3582         bool "Enable Basic http Authentication" 
    3583         default y 
    3584         depends on BUSYBOX_CONFIG_HTTPD 
    3585         help 
    3586           Utilizes password settings from /etc/httpd.conf for basic 
    3587           authentication on a per url basis. 
    3588  
    3589 config BUSYBOX_CONFIG_FEATURE_HTTPD_AUTH_MD5 
    3590         bool "Support MD5 crypted passwords for http Authentication" 
    3591         default y 
    3592         depends on BUSYBOX_CONFIG_FEATURE_HTTPD_BASIC_AUTH 
    3593         help 
    3594           Enables basic per URL authentication from /etc/httpd.conf 
    3595           using md5 passwords. 
    3596  
    3597 config BUSYBOX_CONFIG_FEATURE_HTTPD_CONFIG_WITH_MIME_TYPES 
    3598         bool "Support loading additional MIME types at run-time" 
    3599         default y 
    3600         depends on BUSYBOX_CONFIG_HTTPD 
    3601         help 
    3602           This option enables support for additional MIME types at 
    3603           run-time to be specified in the configuration file. 
    3604  
    3605 config BUSYBOX_CONFIG_FEATURE_HTTPD_CGI 
    3606         bool "Support Common Gateway Interface (CGI)" 
    3607         default y 
    3608         depends on BUSYBOX_CONFIG_HTTPD 
    3609         help 
    3610           This option allows scripts and executables to be invoked 
    3611           when specific URLs are requested. 
    3612  
    3613 config BUSYBOX_CONFIG_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR 
    3614         bool "Enable support for running scripts through an interpreter" 
    3615         default n 
    3616         depends on BUSYBOX_CONFIG_FEATURE_HTTPD_CGI 
    3617         help 
    3618           This option enables support for running scripts through an 
    3619           interpreter. Turn this on if you want PHP scripts to work 
    3620           properly. You need to supply an addition line in your httpd 
    3621           config file: 
    3622           *.php:/path/to/your/php 
    3623  
    3624 config BUSYBOX_CONFIG_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV 
    3625         bool "Support the REMOTE_PORT environment variable for CGI" 
    3626         default y 
    3627         depends on BUSYBOX_CONFIG_FEATURE_HTTPD_CGI 
    3628         help 
    3629           Use of this option can assist scripts in generating 
    3630           references that contain a unique port number. 
    3631  
    3632 config BUSYBOX_CONFIG_FEATURE_HTTPD_ENCODE_URL_STR 
    3633         bool "Enable the -e option for shell script CGI simplification." 
    3634         default y 
    3635         depends on BUSYBOX_CONFIG_HTTPD 
    3636         help 
    3637           This option allows html encoding arbitrary 
    3638           strings for display of the browser.  Output goes to stdout. 
    3639           For example, httpd -e "<Hello World>" as 
    3640           "&#60Hello&#32World&#62". 
    3641  
    3642 config BUSYBOX_CONFIG_IFCONFIG 
    3643         bool "ifconfig" 
    3644         default y 
    3645         help 
    3646           Ifconfig is used to configure the kernel-resident network interfaces. 
    3647  
    3648 config BUSYBOX_CONFIG_FEATURE_IFCONFIG_STATUS 
    3649         bool "Enable status reporting output (+7k)" 
    3650         default y 
    3651         depends on BUSYBOX_CONFIG_IFCONFIG 
    3652         help 
    3653           If ifconfig is called with no arguments it will display the status 
    3654           of the currently active interfaces. 
    3655  
    3656 config BUSYBOX_CONFIG_FEATURE_IFCONFIG_SLIP 
    3657         bool "Enable slip-specific options \"keepalive\" and \"outfill\"" 
    3658         default n 
    3659         depends on BUSYBOX_CONFIG_IFCONFIG 
    3660         help 
    3661           Allow "keepalive" and "outfill" support for SLIP.  If you're not 
    3662           planning on using serial lines, leave this unchecked. 
    3663  
    3664 config BUSYBOX_CONFIG_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ 
    3665         bool "Enable options \"mem_start\", \"io_addr\", and \"irq\"" 
    3666         default n 
    3667         depends on BUSYBOX_CONFIG_IFCONFIG 
    3668         help 
    3669           Allow the start address for shared memory, start address for I/O, 
    3670           and/or the interrupt line used by the specified device. 
    3671  
    3672 config BUSYBOX_CONFIG_FEATURE_IFCONFIG_HW 
    3673         bool "Enable option \"hw\" (ether only)" 
    3674         default y 
    3675         depends on BUSYBOX_CONFIG_IFCONFIG 
    3676         help 
    3677           Set the hardware address of this interface, if the device driver 
    3678           supports  this  operation.  Currently, we only support the 'ether' 
    3679           class. 
    3680  
    3681 config BUSYBOX_CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS 
    3682         bool "Set the broadcast automatically" 
    3683         default n 
    3684         depends on BUSYBOX_CONFIG_IFCONFIG 
    3685         help 
    3686           Setting this will make ifconfig attempt to find the broadcast 
    3687           automatically if the value '+' is used. 
    3688  
    3689 config BUSYBOX_CONFIG_IFUPDOWN 
    3690         bool "ifupdown" 
    3691         default y 
    3692         select BUSYBOX_CONFIG_RUN_PARTS 
    3693         help 
    3694           Activate or deactivate the specified interfaces.  This applet makes 
    3695           use of either "ifconfig" and "route" or the "ip" command to actually 
    3696           configure network interfaces.  Therefore, you will probably also want 
    3697           to enable either BUSYBOX_CONFIG_IFCONFIG and BUSYBOX_CONFIG_ROUTE, or enable 
    3698           BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP and the various BUSYBOX_CONFIG_IP options.  Of 
    3699           course you could use non-busybox versions of these programs, so 
    3700           against my better judgement (since this will surely result in plenty 
    3701           of support questions on the mailing list), I do not force you to 
    3702           enable these additional options.  It is up to you to supply either 
    3703           "ifconfig" and "route" or the "ip" command, either via busybox or via 
    3704           standalone utilities. 
    3705  
    3706 config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP 
    3707         bool "Use ip applet" 
    3708         default y 
    3709         depends on BUSYBOX_CONFIG_IFUPDOWN 
    3710         help 
    3711           Use the iproute "ip" command to implement "ifup" and "ifdown", rather 
    3712           than the default of using the older 'ifconfig' and 'route' utilities. 
    3713  
    3714 config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN 
    3715         bool "Use busybox ip applet" 
    3716         default y 
    3717         depends on BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP 
    3718         select BUSYBOX_CONFIG_IP 
    3719         select BUSYBOX_CONFIG_FEATURE_IP_ADDRESS 
    3720         select BUSYBOX_CONFIG_FEATURE_IP_LINK 
    3721         select BUSYBOX_CONFIG_FEATURE_IP_ROUTE 
    3722         help 
    3723           Use the busybox iproute "ip" applet to implement "ifupdown". 
    3724  
    3725           If left disabled, you must install the full-blown iproute2 
    3726           utility or the  "ifup" and "ifdown" applets will not work. 
    3727  
    3728 config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IFCONFIG_BUILTIN 
    3729         bool "Use busybox ifconfig and route applets" 
    3730         default y 
    3731         depends on BUSYBOX_CONFIG_IFUPDOWN && !BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP 
    3732         select BUSYBOX_CONFIG_IFCONFIG 
    3733         select BUSYBOX_CONFIG_ROUTE 
    3734         help 
    3735           Use the busybox iproute "ifconfig" and "route" applets to 
    3736           implement the "ifup" and "ifdown" utilities. 
    3737  
    3738           If left disabled, you must install the full-blown ifconfig 
    3739           and route utilities, or the  "ifup" and "ifdown" applets will not 
    3740           work. 
    3741  
    3742 config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IPV4 
    3743         bool "Enable support for IPv4" 
    3744         default y 
    3745         depends on BUSYBOX_CONFIG_IFUPDOWN 
    3746         help 
    3747           If you want busybox to talk IPv4, leave this on. 
    3748  
    3749 config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IPV6 
    3750         bool "Enable support for IPv6" 
    3751         default n 
    3752         depends on BUSYBOX_CONFIG_IFUPDOWN && BUSYBOX_CONFIG_FEATURE_IPV6 
    3753         help 
    3754           If you need support for IPv6, turn this option on. 
    3755  
    3756 config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IPX 
    3757         bool "Enable support for IPX" 
    3758         default n 
    3759         depends on BUSYBOX_CONFIG_IFUPDOWN 
    3760         help 
    3761           If this option is selected you can use busybox to work with IPX 
    3762           networks. 
    3763  
    3764 config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_MAPPING 
    3765         bool "Enable mapping support" 
    3766         default n 
    3767         depends on BUSYBOX_CONFIG_IFUPDOWN 
    3768         help 
    3769           This enables support for the "mapping" stanza, unless you have 
    3770           a weird network setup you don't need it. 
    3771  
    3772 config BUSYBOX_CONFIG_INETD 
    3773         bool "inetd" 
    3774         default n 
    3775         select BUSYBOX_CONFIG_FEATURE_SYSLOG 
    3776         help 
    3777           Internet superserver daemon 
    3778  
    3779 config BUSYBOX_CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_ECHO 
    3780         bool "Support echo service" 
    3781         default y 
    3782         depends on BUSYBOX_CONFIG_INETD 
    3783         help 
    3784           Echo received data internal inetd service 
    3785  
    3786 config BUSYBOX_CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DISCARD 
    3787         bool "Support discard service" 
    3788         default y 
    3789         depends on BUSYBOX_CONFIG_INETD 
    3790         help 
    3791           Internet /dev/null internal inetd service 
    3792  
    3793 config BUSYBOX_CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_TIME 
    3794         bool "Support time service" 
    3795         default y 
    3796         depends on BUSYBOX_CONFIG_INETD 
    3797         help 
    3798           Return 32 bit time since 1900 internal inetd service 
    3799  
    3800 config BUSYBOX_CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME 
    3801         bool "Support daytime service" 
    3802         default y 
    3803         depends on BUSYBOX_CONFIG_INETD 
    3804         help 
    3805           Return human-readable time internal inetd service 
    3806  
    3807 config BUSYBOX_CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN 
    3808         bool "Support chargen service" 
    3809         default y 
    3810         depends on BUSYBOX_CONFIG_INETD 
    3811         help 
    3812           Familiar character generator internal inetd service 
    3813  
    3814 config BUSYBOX_CONFIG_FEATURE_INETD_RPC 
    3815         bool "Support RPC services" 
    3816         default n 
    3817         depends on BUSYBOX_CONFIG_INETD 
    3818         depends on BUSYBOX_CONFIG_FEATURE_HAVE_RPC 
    3819         help 
    3820           Support Sun-RPC based services 
    3821  
    3822 config BUSYBOX_CONFIG_IP 
    3823         bool "ip" 
    3824         default n 
    3825         help 
    3826           The "ip" applet is a TCP/IP interface configuration and routing 
    3827           utility.  You generally don't need "ip" to use busybox with 
    3828           TCP/IP. 
    3829  
    3830 config BUSYBOX_CONFIG_FEATURE_IP_ADDRESS 
    3831         bool "ip address" 
    3832         default y 
    3833         depends on BUSYBOX_CONFIG_IP 
    3834         help 
    3835           Address manipulation support for the "ip" applet. 
    3836  
    3837 config BUSYBOX_CONFIG_FEATURE_IP_LINK 
    3838         bool "ip link" 
    3839         default y 
    3840         depends on BUSYBOX_CONFIG_IP 
    3841         help 
    3842           Configure network devices with "ip". 
    3843  
    3844 config BUSYBOX_CONFIG_FEATURE_IP_ROUTE 
    3845         bool "ip route" 
    3846         default y 
    3847         depends on BUSYBOX_CONFIG_IP 
    3848         help 
    3849           Add support for routing table management to "ip". 
    3850  
    3851 config BUSYBOX_CONFIG_FEATURE_IP_TUNNEL 
    3852         bool "ip tunnel" 
    3853         default n 
    3854         depends on BUSYBOX_CONFIG_IP 
    3855         help 
    3856           Add support for tunneling commands to "ip". 
    3857  
    3858 config BUSYBOX_CONFIG_FEATURE_IP_RULE 
    3859         bool "ip rule" 
    3860         default n 
    3861         depends on BUSYBOX_CONFIG_IP 
    3862         help 
    3863           Add support for rule commands to "ip". 
    3864  
    3865 config BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS 
    3866         bool "Support short forms of ip commands." 
    3867         default n 
    3868         depends on BUSYBOX_CONFIG_IP 
    3869         help 
    3870           Also support short-form of ip <OBJECT> commands: 
    3871           ip addr   -> ipaddr 
    3872           ip link   -> iplink 
    3873           ip route  -> iproute 
    3874           ip tunnel -> iptunnel 
    3875  
    3876           Say N unless you desparately need the short form of the ip 
    3877           object commands. 
    3878  
    3879 config BUSYBOX_CONFIG_IPADDR 
    3880         bool 
    3881         default y 
    3882         depends on BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS && BUSYBOX_CONFIG_FEATURE_IP_ADDRESS 
    3883  
    3884 config BUSYBOX_CONFIG_IPLINK 
    3885         bool 
    3886         default y 
    3887         depends on BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS && BUSYBOX_CONFIG_FEATURE_IP_LINK 
    3888  
    3889 config BUSYBOX_CONFIG_IPROUTE 
    3890         bool 
    3891         default y 
    3892         depends on BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS && BUSYBOX_CONFIG_FEATURE_IP_ROUTE 
    3893  
    3894 config BUSYBOX_CONFIG_IPTUNNEL 
    3895         bool 
    3896         default y 
    3897         depends on BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS && BUSYBOX_CONFIG_FEATURE_IP_TUNNEL 
    3898  
    3899 config BUSYBOX_CONFIG_IPRULE 
    3900         bool 
    3901         default y 
    3902         depends on BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS && BUSYBOX_CONFIG_FEATURE_IP_RULE 
    3903  
    3904 config BUSYBOX_CONFIG_IPCALC 
    3905         bool "ipcalc" 
    3906         default n 
    3907         help 
    3908           ipcalc takes an IP address and netmask and calculates the 
    3909           resulting broadcast, network, and host range. 
    3910  
    3911 config BUSYBOX_CONFIG_FEATURE_IPCALC_FANCY 
    3912         bool "Fancy IPCALC, more options, adds 1 kbyte" 
    3913         default y 
    3914         depends on BUSYBOX_CONFIG_IPCALC 
    3915         help 
    3916           Adds the options hostname, prefix and silent to the output of "ipcalc". 
    3917  
    3918 config BUSYBOX_CONFIG_FEATURE_IPCALC_LONG_OPTIONS 
    3919         bool "Enable long options" 
    3920         default n 
    3921         depends on BUSYBOX_CONFIG_IPCALC && BUSYBOX_CONFIG_GETOPT_LONG 
    3922         help 
    3923           Support long options for the ipcalc applet. 
    3924  
    3925 config BUSYBOX_CONFIG_NAMEIF 
    3926         bool "nameif" 
    3927         default n 
    3928         select BUSYBOX_CONFIG_FEATURE_SYSLOG 
    3929         help 
    3930           nameif is used to rename network interface by its MAC address. 
    3931           Renamed interfaces MUST be in the down state. 
    3932           It is possible to use a file (default: /etc/mactab) 
    3933           with list of new interface names and MACs. 
    3934           Maximum interface name length: IF_NAMESIZE = 16 
    3935           File fields are separated by space or tab. 
    3936           File format: 
    3937           # Comment 
    3938           new_interface_name    XX:XX:XX:XX:XX:XX 
    3939  
    3940 config BUSYBOX_CONFIG_NC 
    3941         bool "nc" 
    3942         default y 
    3943         help 
    3944           A simple Unix utility which reads and writes data across network 
    3945           connections. 
    3946  
    3947 config BUSYBOX_CONFIG_NC_SERVER 
    3948         bool "Netcat server options (-lp)" 
    3949         default y 
    3950         depends on BUSYBOX_CONFIG_NC 
    3951         help 
    3952           Allow netcat to act as a server. 
    3953  
    3954 config BUSYBOX_CONFIG_NC_EXTRA 
    3955         bool "Netcat extensions (-eiw and filename)" 
    3956         default n 
    3957         depends on BUSYBOX_CONFIG_NC 
    3958         help 
    3959           Add -e (support for executing the rest of the command line after 
    3960           making or receiving a successful connection), -i (delay interval for 
    3961           lines sent), -w (timeout for initial connection). 
    3962  
    3963 config BUSYBOX_CONFIG_NETMSG 
    3964         bool "netmsg" 
    3965         default y 
    3966         help 
    3967           simple program for sending udp broadcast messages 
    3968  
    3969 config BUSYBOX_CONFIG_NETSTAT 
    3970         bool "netstat" 
    3971         default y 
    3972         help 
    3973           netstat prints information about the Linux networking subsystem. 
    3974  
    3975 config BUSYBOX_CONFIG_NSLOOKUP 
    3976         bool "nslookup" 
    3977         default y 
    3978         help 
    3979           nslookup is a tool to query Internet name servers. 
    3980  
    3981 config BUSYBOX_CONFIG_PING 
    3982         bool "ping" 
    3983         default y 
    3984         help 
    3985           ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to 
    3986           elicit an ICMP ECHO_RESPONSE from a host or gateway. 
    3987  
    3988 config BUSYBOX_CONFIG_FEATURE_FANCY_PING 
    3989         bool "Enable fancy ping output" 
    3990         default y 
    3991         depends on BUSYBOX_CONFIG_PING 
    3992         help 
    3993           Make the output from the ping applet include statistics, and at the 
    3994           same time provide full support for ICMP packets. 
    3995  
    3996 config BUSYBOX_CONFIG_PING6 
    3997         bool "ping6" 
    3998         default n 
    3999         depends on BUSYBOX_CONFIG_FEATURE_IPV6 
    4000         help 
    4001           This will give you a ping that can talk IPv6. 
    4002  
    4003 config BUSYBOX_CONFIG_FEATURE_FANCY_PING6 
    4004         bool "Enable fancy ping6 output" 
    4005         default y 
    4006         depends on BUSYBOX_CONFIG_PING6 
    4007         help 
    4008           Make the output from the ping6 applet include statistics, and at the 
    4009           same time provide full support for ICMP packets. 
    4010  
    4011 config BUSYBOX_CONFIG_ROUTE 
    4012         bool "route" 
    4013         default y 
    4014         help 
    4015           Route displays or manipulates the kernel's IP routing tables. 
    4016  
    4017 config BUSYBOX_CONFIG_TELNET 
    4018         bool "telnet" 
    4019         default y 
    4020         help 
    4021           Telnet is an interface to the TELNET protocol, but is also commonly 
    4022           used to test other simple protocols. 
    4023  
    4024 config BUSYBOX_CONFIG_FEATURE_TELNET_TTYPE 
    4025         bool "Pass TERM type to remote host" 
    4026         default y 
    4027         depends on BUSYBOX_CONFIG_TELNET 
    4028         help 
    4029           Setting this option will forward the TERM environment variable to the 
    4030           remote host you are connecting to.  This is useful to make sure that 
    4031           things like ANSI colors and other control sequences behave. 
    4032  
    4033 config BUSYBOX_CONFIG_FEATURE_TELNET_AUTOLOGIN 
    4034         bool "Pass USER type to remote host" 
    4035         default n 
    4036         depends on BUSYBOX_CONFIG_TELNET 
    4037         help 
    4038           Setting this option will forward the USER environment variable to the 
    4039           remote host you are connecting to. This is useful when you need to 
    4040           log into a machine without telling the username (autologin). This 
    4041           option enables `-a' and `-l USER' arguments. 
    4042  
    4043 config BUSYBOX_CONFIG_TELNETD 
    4044         bool "telnetd" 
    4045         default y 
    4046         select BUSYBOX_CONFIG_FEATURE_SYSLOG 
    4047         help 
    4048           A daemon for the TELNET protocol, allowing you to log onto the host 
    4049           running the daemon.  Please keep in mind that the TELNET protocol 
    4050           sends passwords in plain text.  If you can't afford the space for an 
    4051           SSH daemon and you trust your network, you may say 'y' here.  As a 
    4052           more secure alternative, you should seriously consider installing the 
    4053           very small Dropbear SSH daemon instead: 
    4054                 http://matt.ucc.asn.au/dropbear/dropbear.html 
    4055  
    4056           Note that for busybox telnetd to work you need several things: 
    4057           First of all, your kernel needs: 
    4058                   UNIX98_PTYS=y 
    4059                   DEVPTS_FS=y 
    4060  
    4061           Next, you need a /dev/pts directory on your root filesystem: 
    4062  
    4063                   $ ls -ld /dev/pts 
    4064                   drwxr-xr-x  2 root root 0 Sep 23 13:21 /dev/pts/ 
    4065  
    4066           Next you need the pseudo terminal master multiplexer /dev/ptmx: 
    4067  
    4068                   $ ls -la /dev/ptmx 
    4069                   crw-rw-rw-  1 root tty 5, 2 Sep 23 13:55 /dev/ptmx 
    4070  
    4071           Any /dev/ttyp[0-9]* files you may have can be removed. 
    4072           Next, you need to mount the devpts filesystem on /dev/pts using: 
    4073  
    4074                   mount -t devpts devpts /dev/pts 
    4075  
    4076           You need to be sure that Busybox has LOGIN and 
    4077           SUID enabled.  And finally, you should make 
    4078           certain that Busybox has been installed setuid root: 
    4079  
    4080                 chown root.root /bin/busybox 
    4081                 chmod 4755 /bin/busybox 
    4082  
    4083           with all that done, telnetd _should_ work.... 
    4084  
    4085  
    4086 config BUSYBOX_CONFIG_FEATURE_TELNETD_STANDALONE 
    4087         bool "Support standalone telnetd (not inetd only)" 
    4088         default y 
    4089         depends on BUSYBOX_CONFIG_TELNETD 
    4090         help 
    4091           Selecting this will make telnetd able to run standalone. 
    4092  
    4093 config BUSYBOX_CONFIG_TFTP 
    4094         bool "tftp" 
    4095         default n 
    4096         help 
    4097           This enables the Trivial File Transfer Protocol client program.  TFTP 
    4098           is usually used for simple, small transfers such as a root image 
    4099           for a network-enabled bootloader. 
    4100  
    4101 config BUSYBOX_CONFIG_FEATURE_TFTP_GET 
    4102         bool "Enable \"get\" command" 
    4103         default y 
    4104         depends on BUSYBOX_CONFIG_TFTP 
    4105         help 
    4106           Add support for the GET command within the TFTP client.  This allows 
    4107           a client to retrieve a file from a TFTP server. 
    4108  
    4109 config BUSYBOX_CONFIG_FEATURE_TFTP_PUT 
    4110         bool "Enable \"put\" command" 
    4111         default y 
    4112         depends on BUSYBOX_CONFIG_TFTP 
    4113         help 
    4114           Add support for the PUT command within the TFTP client.  This allows 
    4115           a client to transfer a file to a TFTP server. 
    4116  
    4117 config BUSYBOX_CONFIG_FEATURE_TFTP_BLOCKSIZE 
    4118         bool "Enable \"blocksize\" command" 
    4119         default n 
    4120         depends on BUSYBOX_CONFIG_TFTP 
    4121         help 
    4122           Allow the client to specify the desired block size for transfers. 
    4123  
    4124 config BUSYBOX_CONFIG_DEBUG_TFTP 
    4125         bool "Enable debug" 
    4126         default n 
    4127         depends on BUSYBOX_CONFIG_TFTP 
    4128         help 
    4129           Enable debug settings for tftp.  This is useful if you're running 
    4130           into problems with tftp as the protocol doesn't help you much when 
    4131           you run into problems. 
    4132  
    4133 config BUSYBOX_CONFIG_TRACEROUTE 
    4134         bool "traceroute" 
    4135         default y 
    4136         help 
    4137           Utility to trace the route of IP packets 
    4138  
    4139 config BUSYBOX_CONFIG_FEATURE_TRACEROUTE_VERBOSE 
    4140         bool "Enable verbose output" 
    4141         default y 
    4142         depends on BUSYBOX_CONFIG_TRACEROUTE 
    4143         help 
    4144           Add some verbosity to traceroute.  This includes amongst other things 
    4145           hostnames and ICMP response types. 
    4146  
    4147 config BUSYBOX_CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE 
    4148         bool "Enable loose source route" 
    4149         default n 
    4150         depends on BUSYBOX_CONFIG_TRACEROUTE 
    4151         help 
    4152           Add option to specify a loose source route gateway 
    4153           (8 maximum). 
    4154  
    4155 config BUSYBOX_CONFIG_FEATURE_TRACEROUTE_USE_ICMP 
    4156         bool "Use ICMP instead of UDP" 
    4157         default y 
    4158         depends on BUSYBOX_CONFIG_TRACEROUTE 
    4159         help 
    4160           Add feature to allow for ICMP ECHO instead of UDP datagrams. 
    4161  
    4162 
    4163 # For a description of the syntax of this configuration file, 
    4164 # see scripts/kbuild/config-language.txt. 
    4165 
    4166  
    4167 config BUSYBOX_CONFIG_APP_UDHCPD 
    4168         bool "udhcp Server (udhcpd)" 
    4169         default n 
    4170         help 
    4171           uDHCPd is a DHCP server geared primarily toward embedded systems, 
    4172           while striving to be fully functional and RFC compliant. 
    4173  
    4174           See http://udhcp.busybox.net for further details. 
    4175  
    4176 config BUSYBOX_CONFIG_APP_DHCPRELAY 
    4177         bool "dhcprelay" 
    4178         default n 
    4179         depends on BUSYBOX_CONFIG_APP_UDHCPD 
    4180         help 
    4181           dhcprelay listens for dhcp requests on one or more interfaces 
    4182           and forwards these requests to a different interface or dhcp 
    4183           server. 
    4184  
    4185 config BUSYBOX_CONFIG_APP_DUMPLEASES 
    4186         bool "Lease display utility (dumpleases)" 
    4187         default n 
    4188         depends on BUSYBOX_CONFIG_APP_UDHCPD 
    4189         help 
    4190           dumpleases displays the leases written out by the udhcpd server. 
    4191           Lease times are stored in the file by time remaining in lease, or 
    4192           by the absolute time that it expires in seconds from epoch. 
    4193  
    4194           See http://udhcp.busybox.net for further details. 
    4195  
    4196 config BUSYBOX_CONFIG_APP_UDHCPC 
    4197         bool "udhcp Client (udhcpc)" 
    4198         default y 
    4199         help 
    4200           uDHCPc is a DHCP client geared primarily toward embedded systems, 
    4201           while striving to be fully functional and RFC compliant. 
    4202  
    4203           The udhcp client negotiates a lease with the DHCP server and 
    4204           notifies a set of scripts when a lease is obtained or lost. 
    4205  
    4206           See http://udhcp.busybox.net for further details. 
    4207  
    4208 config BUSYBOX_CONFIG_FEATURE_UDHCP_SYSLOG 
    4209         bool "Log udhcp messages to syslog" 
    4210         default n 
    4211         depends on BUSYBOX_CONFIG_APP_UDHCPD || BUSYBOX_CONFIG_APP_UDHCPC 
    4212         select BUSYBOX_CONFIG_FEATURE_SYSLOG 
    4213         help 
    4214           If not daemonized, udhcpd prints its messages to stdout/stderr. 
    4215           If this option is selected, it will also log them to syslog. 
    4216  
    4217           See http://udhcp.busybox.net for further details. 
    4218  
    4219 config BUSYBOX_CONFIG_FEATURE_UDHCP_DEBUG 
    4220         bool "Compile udhcp with noisy debugging messages" 
    4221         default n 
    4222         depends on BUSYBOX_CONFIG_APP_UDHCPD || BUSYBOX_CONFIG_APP_UDHCPC 
    4223         help 
    4224           If selected, udhcpd will output extra debugging output.  If using 
    4225           this option, compile uDHCP with "-g", and do not fork the daemon to 
    4226           the background. 
    4227  
    4228           See http://udhcp.busybox.net for further details. 
    4229  
    4230 config BUSYBOX_CONFIG_VCONFIG 
    4231         bool "vconfig" 
    4232         default y 
    4233         help 
    4234           Creates, removes, and configures VLAN interfaces 
    4235  
    4236 config BUSYBOX_CONFIG_WGET 
    4237         bool "wget" 
    4238         default y 
    4239         help 
    4240           wget is a utility for non-interactive download of files from HTTP, 
    4241           HTTPS, and FTP servers. 
    4242  
    4243 config BUSYBOX_CONFIG_FEATURE_WGET_STATUSBAR 
    4244         bool "Enable a nifty process meter (+2k)" 
    4245         default y 
    4246         depends on BUSYBOX_CONFIG_WGET 
    4247         help 
    4248           Enable the transfer progress bar for wget transfers. 
    4249  
    4250 config BUSYBOX_CONFIG_FEATURE_WGET_AUTHENTICATION 
    4251         bool "Enable HTTP authentication" 
    4252         default y 
    4253         depends on BUSYBOX_CONFIG_WGET 
    4254         help 
    4255           Support authenticated HTTP transfers. 
    4256  
    4257 config BUSYBOX_CONFIG_FEATURE_WGET_IP6_LITERAL 
    4258         bool "Enable IPv6 literal addresses" 
    4259         default n 
    4260         depends on BUSYBOX_CONFIG_WGET && BUSYBOX_CONFIG_FEATURE_IPV6 
    4261         help 
    4262           Support IPv6 address literal notation in URLs. 
    4263  
    4264 config BUSYBOX_CONFIG_FEATURE_WGET_LONG_OPTIONS 
    4265         bool "Enable long options" 
    4266         default y 
    4267         depends on BUSYBOX_CONFIG_WGET && BUSYBOX_CONFIG_GETOPT_LONG 
    4268         help 
    4269           Support long options for the wget applet. 
    4270  
    4271 config BUSYBOX_CONFIG_ZCIP 
    4272         bool "zcip" 
    4273         default n 
    4274         select BUSYBOX_CONFIG_FEATURE_SYSLOG 
    4275         help 
    4276           ZCIP provides ZeroConf IPv4 address selection, according to RFC 3927. 
    4277           It's a daemon that allocates and defends a dynamically assigned 
    4278           address on the 169.254/16 network, requiring no system administrator. 
    4279  
    4280           See http://www.zeroconf.org for further details, and "zcip.script" 
    4281           in the busybox examples. 
    4282  
    4283 endmenu 
    4284 
    4285 # For a description of the syntax of this configuration file, 
    4286 # see scripts/kbuild/config-language.txt. 
    4287 
    4288  
    4289 menu "Process Utilities" 
    4290  
    4291 config BUSYBOX_CONFIG_FREE 
    4292         bool "free" 
    4293         default y 
    4294         depends on ! FWRT_PACKAGE_PROCPS_META 
    4295         help 
    4296           free displays the total amount of free and used physical and swap 
    4297           memory in the system, as well as the buffers used by the kernel. 
    4298           The shared memory column should be ignored; it is obsolete. 
    4299  
    4300 comment "free already provided by package procps" 
    4301         depends on FWRT_PACKAGE_PROCPS_META 
    4302  
    4303 config BUSYBOX_CONFIG_FUSER 
    4304         bool "fuser" 
    4305         default n 
    4306         help 
    4307           fuser lists all PIDs (Process IDs) that currently have a given 
    4308           file open.  fuser can also list all PIDs that have a given network 
    4309           (TCP or UDP) port open. 
    4310  
    4311 config BUSYBOX_CONFIG_KILL 
    4312         bool "kill" 
    4313         default y 
    4314         depends on ! FWRT_PACKAGE_PROCPS_META 
    4315         help 
    4316           The command kill sends the specified signal to the specified 
    4317           process or process group.  If no signal is specified, the TERM 
    4318           signal is sent. 
    4319  
    4320 comment "kill already provided by package procps" 
    4321         depends on FWRT_PACKAGE_PROCPS_META 
    4322  
    4323 config BUSYBOX_CONFIG_KILLALL 
    4324         bool "killall" 
    4325         default y 
    4326         depends on BUSYBOX_CONFIG_KILL 
    4327         help 
    4328           killall sends a signal to all processes running any of the 
    4329           specified commands.  If no signal name is specified, SIGTERM is 
    4330           sent. 
    4331  
    4332 config BUSYBOX_CONFIG_KILLALL5 
    4333         bool "killall5" 
    4334         default y 
    4335         depends on BUSYBOX_CONFIG_KILL 
    4336          
    4337 config BUSYBOX_CONFIG_PIDOF 
    4338         bool "pidof" 
    4339         default y 
    4340         help 
    4341           Pidof finds the process id's (pids) of the named programs. It prints 
    4342           those id's on the standard output. 
    4343  
    4344 config BUSYBOX_CONFIG_FEATURE_PIDOF_SINGLE 
    4345         bool "Enable argument for single shot (-s)" 
    4346         default n 
    4347         depends on BUSYBOX_CONFIG_PIDOF 
    4348         help 
    4349           Support argument '-s' for returning only the first pid found. 
    4350  
    4351 config BUSYBOX_CONFIG_FEATURE_PIDOF_OMIT 
    4352         bool "Enable argument for omitting pids (-o)" 
    4353         default n 
    4354         depends on BUSYBOX_CONFIG_PIDOF 
    4355         help 
    4356           Support argument '-o' for omitting the given pids in output. 
    4357           The special pid %PPID can be used to name the parent process 
    4358           of the pidof, in other words the calling shell or shell script. 
    4359  
    4360 config BUSYBOX_CONFIG_PS 
    4361         bool "ps" 
    4362         default y 
    4363         depends on ! FWRT_PACKAGE_PROCPS_META 
    4364         help 
    4365           ps gives a snapshot of the current processes. 
    4366  
    4367 comment "ps already provided by package procps" 
    4368         depends on FWRT_PACKAGE_PROCPS_META 
    4369  
    4370 config BUSYBOX_CONFIG_FEATURE_PS_WIDE 
    4371         bool "Enable argument for wide output (-w)" 
    4372         default n 
    4373         depends on BUSYBOX_CONFIG_PS 
    4374         help 
    4375           Support argument 'w' for wide output. 
    4376           If given once, 132 chars are printed and given more than 
    4377           one, the length is unlimited. 
    4378  
    4379 config BUSYBOX_CONFIG_RENICE 
    4380         bool "renice" 
    4381         default n 
    4382         help 
    4383           Renice alters the scheduling priority of one or more running 
    4384           processes. 
    4385  
    4386 config BUSYBOX_CONFIG_BB_SYSCTL 
    4387         bool "sysctl" 
    4388         default y 
    4389         depends on ! FWRT_PACKAGE_PROCPS_META 
    4390         help 
    4391           Configure kernel parameters at runtime. 
    4392  
    4393 comment "sysctl already provided by package procps" 
    4394         depends on FWRT_PACKAGE_PROCPS_META 
    4395  
    4396 config BUSYBOX_CONFIG_TOP 
    4397         bool "top" 
    4398         default y 
    4399         depends on ! FWRT_PACKAGE_PROCPS 
    4400         help 
    4401           The top program provides a dynamic real-time view of a running 
    4402           system. 
    4403  
    4404 comment "top already provided by package procps" 
    4405         depends on FWRT_PACKAGE_PROCPS_META 
    4406  
    4407 config BUSYBOX_CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE 
    4408         bool "Support showing CPU usage percentage (add 2k bytes)" 
    4409         default y 
    4410         depends on BUSYBOX_CONFIG_TOP 
    4411         help 
    4412           Make top display CPU usage. 
    4413  
    4414 config BUSYBOX_CONFIG_UPTIME 
    4415         bool "uptime" 
    4416         default y 
    4417         depends on ! FWRT_PACKAGE_PROCPS_META 
    4418         help 
    4419           uptime gives a one line display of the current time, how long 
    4420           the system has been running, how many users are currently logged 
    4421           on, and the system load averages for the past 1, 5, and 15 minutes. 
    4422  
    4423 comment "uptime already provided by package procps" 
    4424         depends on FWRT_PACKAGE_PROCPS_META 
    4425  
    4426 endmenu 
    4427  
    4428 #--- 
    4429 # Dummies for split-cfg.sh 
    4430 #--- 
    4431  
    4432 # BUSYBOX_CONFIG_ASH 
    4433 # BUSYBOX_CONFIG_ASH_ALIAS 
    4434 # BUSYBOX_CONFIG_ASH_BUILTIN_ECHO 
    4435 # BUSYBOX_CONFIG_ASH_BUILTIN_TEST 
    4436 # BUSYBOX_CONFIG_ASH_CMDCMD 
    4437 # BUSYBOX_CONFIG_ASH_EXPAND_PRMT 
    4438 # BUSYBOX_CONFIG_ASH_GETOPTS 
    4439 # BUSYBOX_CONFIG_ASH_JOB_CONTROL 
    4440 # BUSYBOX_CONFIG_ASH_MAIL 
    4441 # BUSYBOX_CONFIG_ASH_MATH_SUPPORT 
    4442 # BUSYBOX_CONFIG_ASH_MATH_SUPPORT_64 
    4443 # BUSYBOX_CONFIG_ASH_OPTIMIZE_FOR_SIZE 
    4444 # BUSYBOX_CONFIG_ASH_RANDOM_SUPPORT 
    4445 # BUSYBOX_CONFIG_ASH_READ_NCHARS 
    4446 # BUSYBOX_CONFIG_ASH_READ_TIMEOUT 
    4447 # BUSYBOX_CONFIG_ECHO 
    4448 # BUSYBOX_CONFIG_FALSE 
    4449 # BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING 
    4450 # BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING_VI 
    4451 # BUSYBOX_CONFIG_FEATURE_COMMAND_HISTORY 
    4452 # BUSYBOX_CONFIG_FEATURE_COMMAND_SAVEHISTORY 
    4453 # BUSYBOX_CONFIG_FEATURE_COMMAND_TAB_COMPLETION 
    4454 # BUSYBOX_CONFIG_FEATURE_COMMAND_USERNAME_COMPLETION 
    4455 # BUSYBOX_CONFIG_FEATURE_SH_EXTRA_QUIET 
    4456 # BUSYBOX_CONFIG_FEATURE_SH_FANCY_PROMPT 
    4457 # BUSYBOX_CONFIG_FEATURE_SH_IS_ASH 
    4458 # BUSYBOX_CONFIG_FEATURE_SH_IS_HUSH 
    4459 # BUSYBOX_CONFIG_FEATURE_SH_IS_LASH 
    4460 # BUSYBOX_CONFIG_FEATURE_SH_IS_MSH 
    4461 # BUSYBOX_CONFIG_FEATURE_SH_IS_NONE 
    4462 # BUSYBOX_CONFIG_FEATURE_SH_STANDALONE_SHELL 
    4463 # BUSYBOX_CONFIG_HUSH 
    4464 # BUSYBOX_CONFIG_LASH 
    4465 # BUSYBOX_CONFIG_MSH 
    4466 # BUSYBOX_CONFIG_TEST 
    4467 # BUSYBOX_CONFIG_TRUE 
    4468  
    4469 
    4470 # For a description of the syntax of this configuration file, 
    4471 # see scripts/kbuild/config-language.txt. 
    4472 
    4473  
    4474 menu "System Logging Utilities" 
    4475  
    4476 config BUSYBOX_CONFIG_SYSLOGD 
    4477         bool "syslogd" 
    4478         default y 
    4479         help 
    4480           The syslogd utility is used to record logs of all the 
    4481           significant events that occur on a system.  Every 
    4482           message that is logged records the date and time of the 
    4483           event, and will generally also record the name of the 
    4484           application that generated the message.  When used in 
    4485           conjunction with klogd, messages from the Linux kernel 
    4486           can also be recorded.  This is terribly useful, 
    4487           especially for finding what happened when something goes 
    4488           wrong.  And something almost always will go wrong if 
    4489           you wait long enough.... 
    4490  
    4491 config BUSYBOX_CONFIG_FEATURE_ROTATE_LOGFILE 
    4492         bool "Rotate message files" 
    4493         default y 
    4494         depends on BUSYBOX_CONFIG_SYSLOGD 
    4495         help 
    4496           This enables syslogd to rotate the message files 
    4497           on his own. No need to use an external rotatescript. 
    4498  
    4499 config BUSYBOX_CONFIG_FEATURE_REMOTE_LOG 
    4500         bool "Remote Log support" 
    4501         default y 
    4502         depends on BUSYBOX_CONFIG_SYSLOGD 
    4503         help 
    4504           When you enable this feature, the syslogd utility can 
    4505           be used to send system log messages to another system 
    4506           connected via a network.  This allows the remote 
    4507           machine to log all the system messages, which can be 
    4508           terribly useful for reducing the number of serial 
    4509           cables you use.  It can also be a very good security 
    4510           measure to prevent system logs from being tampered with 
    4511           by an intruder. 
    4512  
    4513 config BUSYBOX_CONFIG_FEATURE_IPC_SYSLOG 
    4514         bool "Circular Buffer support" 
    4515         default y 
    4516         depends on BUSYBOX_CONFIG_SYSLOGD 
    4517         help 
    4518           When you enable this feature, the syslogd utility will 
    4519           use a circular buffer to record system log messages. 
    4520           When the buffer is filled it will continue to overwrite 
    4521           the oldest messages.  This can be very useful for 
    4522           systems with little or no permanent storage, since 
    4523           otherwise system logs can eventually fill up your 
    4524           entire filesystem, which may cause your system to 
    4525           break badly. 
    4526  
    4527 config BUSYBOX_CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE 
    4528         int "    Circular buffer size in Kbytes (minimum 4KB)" 
    4529         default 16 
    4530         depends on BUSYBOX_CONFIG_FEATURE_IPC_SYSLOG 
    4531         help 
    4532           This option sets the size of the circular buffer 
    4533           used to record system log messages. 
    4534  
    4535 config BUSYBOX_CONFIG_LOGREAD 
    4536         bool "logread" 
    4537         default y 
    4538         depends on BUSYBOX_CONFIG_FEATURE_IPC_SYSLOG 
    4539         help 
    4540           If you enabled Circular Buffer support, you almost 
    4541           certainly want to enable this feature as well.  This 
    4542           utility will allow you to read the messages that are 
    4543           stored in the syslogd circular buffer. 
    4544  
    4545 config BUSYBOX_CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING 
    4546         bool "logread double buffering" 
    4547         default n 
    4548         depends on BUSYBOX_CONFIG_LOGREAD 
    4549         help 
    4550           'logread' ouput to slow serial terminals can have 
    4551           side effects on syslog because of the semaphore. 
    4552           This option make logread to double buffer copy 
    4553           from circular buffer, minimizing semaphore 
    4554           contention at some minor memory expense. 
    4555  
    4556 config BUSYBOX_CONFIG_KLOGD 
    4557         bool "klogd" 
    4558         default y 
    4559         depends on BUSYBOX_CONFIG_SYSLOGD 
    4560         select BUSYBOX_CONFIG_FEATURE_SYSLOG 
    4561         help 
    4562           klogd is a utility which intercepts and logs all 
    4563           messages from the Linux kernel and sends the messages 
    4564           out to the 'syslogd' utility so they can be logged.  If 
    4565           you wish to record the messages produced by the kernel, 
    4566           you should enable this option. 
    4567  
    4568 config BUSYBOX_CONFIG_LOGGER 
    4569         bool "logger" 
    4570         default y 
    4571         select BUSYBOX_CONFIG_FEATURE_SYSLOG 
    4572         help 
    4573             The logger utility allows you to send arbitrary text 
    4574             messages to the system log (i.e. the 'syslogd' utility) so 
    4575             they can be logged.  This is generally used to help locate 
    4576             problems that occur within programs and scripts. 
    4577  
    4578 endmenu 
    4579  
    4580 
    4581 # For a description of the syntax of this configuration file, 
    4582 # see scripts/kbuild/config-language.txt. 
    4583 
    4584  
    4585 menu "Runit Utilities" 
    4586  
    4587 config BUSYBOX_CONFIG_RUNSV 
    4588         bool "runsv" 
    4589         default n 
    4590         help 
    4591           runsv starts and monitors a service and optionally an appendant log 
    4592           service. 
    4593  
    4594 config BUSYBOX_CONFIG_RUNSVDIR 
    4595         bool "runsvdir" 
    4596         default n 
    4597         help 
    4598           runsvdir starts a runsv process for each subdirectory, or symlink to 
    4599           a directory, in the services directory dir, up to a limit of 1000 
    4600           subdirectories, and restarts a runsv process if it terminates. 
    4601  
    4602 config BUSYBOX_CONFIG_SV 
    4603         bool "sv" 
    4604         default n 
    4605         help 
    4606           sv reports the current status and controls the state of services 
    4607           monitored by the runsv supervisor. 
    4608  
    4609 config BUSYBOX_CONFIG_SVLOGD 
    4610         bool "svlogd" 
    4611         default n 
    4612         help 
    4613           svlogd continuously reads log data from its standard input, optionally 
    4614           filters log messages, and writes the data to one or more automatically 
    4615           rotated logs. 
    4616  
    4617 config BUSYBOX_CONFIG_CHPST 
    4618         bool "chpst" 
    4619         default n 
    4620         help 
    4621           chpst changes the process state according to the given options, and 
    4622           execs specified program. 
    4623  
    4624 config BUSYBOX_CONFIG_SETUIDGID 
    4625         bool "setuidgid" 
    4626         help 
    4627           Sets soft resource limits as specified by options 
    4628  
    4629 config BUSYBOX_CONFIG_ENVUIDGID 
    4630         bool "envuidgid" 
    4631         help 
    4632           Sets $UID to account's uid and $GID to account's gid 
    4633  
    4634 config BUSYBOX_CONFIG_ENVDIR 
    4635         bool "envdir" 
    4636         help 
    4637           Sets various environment variables as specified by files 
    4638           in the given directory 
    4639  
    4640 config BUSYBOX_CONFIG_SOFTLIMIT 
    4641         bool "softlimit" 
    4642         help 
    4643           Sets soft resource limits as specified by options 
    4644  
    4645 endmenu 
    4646  
    4647 endmenu 
     19          This will keep a few applets out of busybox for the sake of size. 
  • trunk/freewrt/package/busybox/Makefile

    r3233 r3234  
    99PKG_NAME:=              busybox 
    1010PKG_VERSION:=           1.4.2 
    11 PKG_RELEASE:=           22 
     11PKG_RELEASE:=           23 
    1212PKG_MD5SUM:=            b4c61fb15642be9dde20e8493788c585 
    1313DISTFILES:=             $(PKG_NAME)-$(PKG_VERSION).tar.bz2 
     
    1818$(eval $(call PKG_template,BUSYBOX,$(PKG_NAME),$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) 
    1919 
     20ifneq ($(strip ${FWRT_PACKAGE_BUSYBOX_SMALL}),) 
     21BBCONFIG_TO_USE=        bbconfig.norm 
     22else 
     23BBCONFIG_TO_USE=        bbconfig.full 
     24endif 
     25 
    2026do-configure: 
    21         perl $(SCRIPT_DIR)/gen_busybox_config.pl $(TOPDIR)/.config >$(WRKBUILD)/.config 
    22         sed -i "s:./_install:$(IDIR_BUSYBOX):" $(WRKBUILD)/.config 
     27        sed 's@IDIR@${IDIR_BUSYBOX}' ${BBCONFIG_TO_USE} >${WRKBUILD}/.config 
    2328        yes '' | \ 
    2429        $(MAKE) V=1 CROSS_COMPILE="$(TARGET_CROSS)" PREFIX="$(IDIR_BUSYBOX)" \ 
     
    4651        rm -f ${IDIR_BUSYBOX}/bin/ifup ${IDIR_BUSYBOX}/bin/ifdown 
    4752 
    48 ifneq (${BUSYBOX_CONFIG_INETD},) 
    4953        ${INSTALL_DATA} files/inetd.init ${IDIR_BUSYBOX}/etc/init.d/inetd 
    50         echo 'add_rcconf inetd' >>${IDIR_BUSYBOX}/CONTROL/postinst 
    51 endif 
    52 ifneq (${BUSYBOX_CONFIG_APP_UDHCPD},) 
    53         ${INSTALL_DATA} ./files/udhcpd.init \ 
    54                 ${IDIR_BUSYBOX}/etc/init.d/udhcpd 
    55         ${INSTALL_DATA} ./files/udhcpd.conf ${IDIR_BUSYBOX}/etc/ 
    56         echo 'add_rcconf "busybox udhcp daemon" udhcpd NO' >> \ 
    57                 ${IDIR_BUSYBOX}/CONTROL/postinst 
    58 endif 
    59 ifneq ($(strip ${BUSYBOX_CONFIG_HALT}),) 
    60 ifneq ($(strip ${BUSYBOX_CONFIG_FEATURE_FWCF_REBOOT}),) 
     54ifneq ($(strip ${FWRT_PACKAGE_FWCF}),) 
    6155        cd ${IDIR_BUSYBOX}/sbin && rm -f halt poweroff reboot 
    62 endif 
    6356endif 
    6457ifneq ($(strip ${FWRT_PACKAGE_FWIFUPDOWN}),) 
  • trunk/freewrt/package/busybox/ipkg/busybox.postinst

    r2751 r3234  
    66add_rcconf syslogd syslogd YES 
    77add_rcconf syslogd_flags syslogd_flags '-C16' 
     8add_rcconf inetd 
  • trunk/freewrt/package/davfs2/Config.in

    r2879 r3234  
    3333config FWRT_PACKAGE_DAVFS2_FUSE 
    3434        bool "use the FUSE filesystem interface" 
    35         select BUSYBOX_CONFIG_INSMOD 
    3635        select FWRT_PACKAGE_FUSE_UTILS 
    3736config FWRT_PACKAGE_DAVFS2_CODA 
     
    4039config FWRT_PACKAGE_DAVFS2_BOTH 
    4140        bool "use both filesystem interfaces" 
    42         select BUSYBOX_CONFIG_INSMOD 
    4341        select FWRT_PACKAGE_FUSE_UTILS 
    4442        select FWRT_KPACKAGE_KMOD_CODA_FS 
  • trunk/freewrt/package/dhcp6/Config.in

    r2519 r3234  
    55        default n 
    66        select FWRT_PACKAGE_LIBNCURSES 
    7         select BUSYBOX_CONFIG_FEATURE_IPV6 
    87        help 
    98                This is the first ever open source implementation of Dynamic 
  • trunk/freewrt/package/fwcf/Config.in

    r2557 r3234  
    55        default y if FWRT_TARGET_ROOTFS_SQUASHFS 
    66        default n 
    7         select BUSYBOX_CONFIG_CAT 
    8         select BUSYBOX_CONFIG_CHMOD 
    9         select BUSYBOX_CONFIG_CHOWN 
    10         select BUSYBOX_CONFIG_COMM 
    11         select BUSYBOX_CONFIG_DD 
    12         select BUSYBOX_CONFIG_FIND 
    13         select BUSYBOX_CONFIG_GREP 
    14         select BUSYBOX_CONFIG_LOGGER 
    15         select BUSYBOX_CONFIG_LS 
    16         select BUSYBOX_CONFIG_MD5SUM 
    17         select BUSYBOX_CONFIG_MKDIR 
    18         select BUSYBOX_CONFIG_MOUNT 
    19         select BUSYBOX_CONFIG_PRINTF 
    20         select BUSYBOX_CONFIG_RM 
    21         select BUSYBOX_CONFIG_SED 
    22         select BUSYBOX_CONFIG_SORT 
    23         select BUSYBOX_CONFIG_TAR 
    24         select BUSYBOX_CONFIG_UMOUNT 
    25         select BUSYBOX_CONFIG_XARGS 
    26         select BUSYBOX_CONFIG_FEATURE_FIND_TYPE 
    27         select BUSYBOX_CONFIG_FEATURE_FWCF_REBOOT 
    28         select BUSYBOX_CONFIG_FEATURE_GREP_FGREP_ALIAS 
    29         select BUSYBOX_CONFIG_FEATURE_MOUNT_FLAGS 
    30         select BUSYBOX_CONFIG_FEATURE_SORT_BIG 
    317        select FWRT_PACKAGE_MTD 
    328        help 
  • trunk/freewrt/package/fwifupdown/Config.in

    r2743 r3234  
    77        select FWIFUPDOWN_CONFIG_IFACE if FWRT_PACKAGE_FWIFUPDOWN 
    88        select FWIFUPDOWN_CONFIG_TUNTAP if FWRT_PACKAGE_TUNCTL || FWRT_PACKAGE_OPENVPN && FWRT_PACKAGE_FWIFUPDOWN = y 
    9         select FWIFUPDOWN_CONFIG_VLAN if BUSYBOX_CONFIG_VCONFIG && FWRT_PACKAGE_FWIFUPDOWN = y 
     9        select FWIFUPDOWN_CONFIG_VLAN 
    1010 
    1111        help 
  • trunk/freewrt/package/gpsd/Config.in

    r2521 r3234  
    55        select FWRT_PACKAGE_LIBPTHREAD 
    66        select FWRT_PACKAGE_UCLIBCXX 
    7         select BUSYBOX_CONFIG_STTY 
    87        help 
    98          gpsd is a monitor daemon that watches a TCP/IP port (2947 by default), 
  • trunk/freewrt/package/iproute2/Config.in

    r2713 r3234  
    88        default n 
    99        select FWRT_COMPILE_IPROUTE2 
    10         depends on ! BUSYBOX_CONFIG_IP 
    11  
    12 comment  "ip................................ Already provided by Busybox" 
    13         depends on BUSYBOX_CONFIG_IP 
    1410 
    1511config FWRT_PACKAGE_TC 
  • trunk/freewrt/package/mrd6/Config.in

    r2519 r3234  
    33        depends on FWRT_IPV6 
    44        tristate 
    5         select BUSYBOX_CONFIG_FEATURE_IPV6 
    65        default n 
    76        help 
  • trunk/freewrt/package/mysql/Config.in

    r3164 r3234  
    2020        tristate 
    2121        default n 
    22         select BUSYBOX_CONFIG_HOSTNAME 
    2322        select FWRT_PACKAGE_MYSQL_CLIENT 
    2423        select FWRT_PACKAGE_LIBSTDCXX 
  • trunk/freewrt/package/ndisc/Config.in

    r2519 r3234  
    1313        depends FWRT_IPV6 
    1414        select FWRT_COMPILE_NDISC6 
    15         select BUSYBOX_CONFIG_FEATURE_IPV6 
    1615        help 
    1716           
     
    2625        depends FWRT_IPV6 
    2726        select FWRT_COMPILE_NDISC6 
    28         select BUSYBOX_CONFIG_FEATURE_IPV6 
    2927        help 
    3028           
     
    3937        depends FWRT_IPV6 
    4038        select FWRT_COMPILE_NDISC6 
    41         select BUSYBOX_CONFIG_FEATURE_IPV6 
    4239        help 
    4340           
  • trunk/freewrt/package/radvd/Config.in

    r2519 r3234  
    55        default n 
    66        select FWRT_KPACKAGE_KMOD_IPV6 
    7         select BUSYBOX_CONFIG_FEATURE_IPV6 
    87        help 
    98          Routing Advertisement Daemon for IPv6 
  • trunk/freewrt/package/samba/Config.in

    r2628 r3234  
    7070        default n 
    7171        depends on FWRT_PACKAGE_SAMBA 
    72         select BUSYBOX_CONFIG_INETD 
    7372        help 
    7473         The Samba software suite is a collection of programs that implements the  
  • trunk/freewrt/package/wdfs/Config.in

    r2845 r3234  
    33        tristate 
    44        default n 
    5         select BUSYBOX_CONFIG_INSMOD 
    65        select FWRT_PACKAGE_FUSE_UTILS 
    76        select FWRT_PACKAGE_NEON 
  • trunk/freewrt/target/Config.in

    r3227 r3234  
    182182        depends on FWRT_TARGET_CAN_LINUX_2_6 
    183183        select FWRT_LINUX_2_6 
    184         select BUSYBOX_CONFIG_MDEV 
    185         select BUSYBOX_CONFIG_FEATURE_MDEV_CONF 
    186         select BUSYBOX_CONFIG_FEATURE_MDEV_EXEC 
    187184 
    188185endchoice 
  • trunk/freewrt/target/linux/x86-2.4/Config.in

    r3227 r3234  
    55        select FWRT_i386 
    66        select FWRT_LINUX_2_4_X86 
    7         select BUSYBOX_CONFIG_MDEV 
    8         select BUSYBOX_CONFIG_FEATURE_MDEV_CONF 
    9         select BUSYBOX_CONFIG_FEATURE_MDEV_EXEC