diff options
Diffstat (limited to 'package')
| -rw-r--r-- | package/busybox/config/Config.in | 181 | ||||
| -rw-r--r-- | package/busybox/config/archival/Config.in | 56 | ||||
| -rw-r--r-- | package/busybox/config/console-tools/Config.in | 7 | ||||
| -rw-r--r-- | package/busybox/config/coreutils/Config.in | 202 | ||||
| -rw-r--r-- | package/busybox/config/debianutils/Config.in | 7 | ||||
| -rw-r--r-- | package/busybox/config/e2fsprogs/Config.in | 67 | ||||
| -rw-r--r-- | package/busybox/config/findutils/Config.in | 24 | ||||
| -rw-r--r-- | package/busybox/config/init/Config.in | 54 | ||||
| -rw-r--r-- | package/busybox/config/libbb/Config.in | 22 | ||||
| -rw-r--r-- | package/busybox/config/loginutils/Config.in | 78 | ||||
| -rw-r--r-- | package/busybox/config/miscutils/Config.in | 115 | ||||
| -rw-r--r-- | package/busybox/config/modutils/Config.in | 90 | ||||
| -rw-r--r-- | package/busybox/config/networking/Config.in | 79 | ||||
| -rw-r--r-- | package/busybox/config/procps/Config.in | 48 | ||||
| -rw-r--r-- | package/busybox/config/shell/Config.in | 65 | ||||
| -rw-r--r-- | package/busybox/config/util-linux/Config.in | 182 | 
16 files changed, 1012 insertions, 265 deletions
| diff --git a/package/busybox/config/Config.in b/package/busybox/config/Config.in index e7afb5362..eedb4ba40 100644 --- a/package/busybox/config/Config.in +++ b/package/busybox/config/Config.in @@ -8,6 +8,8 @@ config BUSYBOX_HAVE_DOT_CONFIG  	bool  	default y +menu "Busybox Settings" +  menu "General Configuration"  choice @@ -79,10 +81,12 @@ config BUSYBOX_CONFIG_FEATURE_CLEAN_UP  	bool "Clean up all memory before exiting (usually not needed)"  	default n  	help -	  As a size optimization, busybox by default does not cleanup memory -	  that is dynamically allocated or close files before exiting. This -	  saves space and is usually not needed since the OS will clean up for -	  us.  Don't enable this unless you have a really good reason to clean +	  As a size optimization, busybox normally exits without explicitly +	  freeing dynamically allocated memory or closing files.  This saves +	  space since the OS will clean up for us, but it can confuse debuggers +	  like valgrind, which report tons of memory and resource leaks. + +	  Don't enable this unless you have a really good reason to clean  	  things up manually.  config BUSYBOX_CONFIG_FEATURE_SUID @@ -100,7 +104,7 @@ config BUSYBOX_CONFIG_FEATURE_SUID_CONFIG  	  checking /etc/busybox.conf.  The format of this file is as follows:  	  <applet> = [Ssx-][Ssx-][x-] (<username>|<uid>).(<groupname>|<gid>) -	 +  	  An example might help:  	  [SUID] @@ -112,6 +116,13 @@ config BUSYBOX_CONFIG_FEATURE_SUID_CONFIG  	  cp = --- # disable applet cp for everyone +	  The file has to be owned by user root, group root and has to be +	  writeable only by root: +	  	(chown 0.0 /etc/busybox.conf; chmod 600 /etc/busybox.conf) +	  The busybox executable has to be owned by user root, group +	  root and has to be setuid root for this to work: +	  	(chown 0.0 /bin/busybox; chmod 4755 /bin/busybox) +  	  Robert 'sandman' Griebl has more information here:  	  <url: http://www.softforge.de/bb/suid.html >. @@ -156,6 +167,48 @@ config BUSYBOX_CONFIG_STATIC  	  Most people will leave this set to 'N'. +# The busybox shared library feature is there so make standalone can produce +# smaller applets.  Since make standalone isn't in yet, there's nothing using +# this yet, and so it's disabled. +config BUSYBOX_CONFIG_DISABLE_SHARED +	bool +	default n + +config BUSYBOX_CONFIG_BUILD_LIBBUSYBOX +	bool "Build shared libbusybox" +	default n +	depends on BUSYBOX_CONFIG_DISABLE_SHARED +	help +	  Build a shared library libbusybox.so which contains all +	  libraries used inside busybox. + +config BUSYBOX_CONFIG_FEATURE_FULL_LIBBUSYBOX +	bool "Feature-complete libbusybox" +	default n if !CONFIG_FEATURE_SHARED_BUSYBOX +	depends on BUSYBOX_CONFIG_BUILD_LIBBUSYBOX +	help +	  Build a libbusybox with the complete feature-set, disregarding +	  the actually selected config. + +	  Normally, libbusybox will only contain the features which are +	  used by busybox itself. If you plan to write a separate +	  standalone application which uses libbusybox say 'Y'. + +	  Note: libbusybox is GPL, not LGPL, and exports no stable API that +	  might act as a copyright barrier.  We can and will modify the +	  exported function set between releases (even minor version number +	  changes), and happily break out-of-tree features. + +	  Say 'N' if in doubt. + +config BUSYBOX_CONFIG_FEATURE_SHARED_BUSYBOX +	bool "Use shared libbusybox for busybox" +	default n if BUSYBOX_CONFIG_BUILD_LIBBUSYBOX +	depends on !CONFIG_STATIC && BUSYBOX_CONFIG_BUILD_LIBBUSYBOX +	help +	  Use libbusybox.so also for busybox itself. +	  You need to have a working dynamic linker to use this variant. +  config BUSYBOX_CONFIG_LFS  	bool  	default y @@ -195,43 +248,27 @@ config BUSYBOX_EXTRA_CFLAGS_OPTIONS  	  if you want to add some simple compiler switches (like -march=i686),  	  or check for warnings using -Werror, just those options here. -endmenu - -menu 'Installation Options' - -config BUSYBOX_CONFIG_INSTALL_NO_USR -	bool "Don't use /usr" +config BUSYBOX_CONFIG_BUILD_AT_ONCE +	bool "Compile all sources at once"  	default n  	help -	  Disable use of /usr. Don't activate this option if you don't know -	  that you really want this behaviour. +	  Normally each source-file is compiled with one invocation of +	  the compiler. +	  If you set this option, all sources are compiled at once. +	  This gives the compiler more opportunities to optimize which can +	  result in smaller and/or faster binaries. -config BUSYBOX_PREFIX -	string -	default "./_install" -	help -	  Define your directory to install BusyBox files/subdirs in. +	  Setting this option will consume alot of memory, e.g. if you +	  enable all applets with all features, gcc uses more than 300MB +	  RAM during compilation of busybox. +	  This option is most likely only beneficial for newer compilers +	  such as gcc-4.1 and above. +	  Say 'N' unless you know what you are doing.  endmenu -source package/busybox/config/archival/Config.in -source package/busybox/config/coreutils/Config.in -source package/busybox/config/console-tools/Config.in -source package/busybox/config/debianutils/Config.in -source package/busybox/config/editors/Config.in -source package/busybox/config/findutils/Config.in -source package/busybox/config/init/Config.in -source package/busybox/config/loginutils/Config.in -source package/busybox/config/miscutils/Config.in -source package/busybox/config/modutils/Config.in -source package/busybox/config/networking/Config.in -source package/busybox/config/procps/Config.in -source package/busybox/config/shell/Config.in -source package/busybox/config/sysklogd/Config.in -source package/busybox/config/util-linux/Config.in -  menu 'Debugging Options'  config BUSYBOX_CONFIG_DEBUG @@ -288,6 +325,82 @@ config BUSYBOX_CONFIG_EFENCE  endchoice +config BUSYBOX_CONFIG_DEBUG_YANK_SUSv2 +	bool "Disable obsolete features removed before SUSv3?" +	default y +	help +	  This option will disable backwards compatability with SuSv2, +	  specifically, old-style numeric options ('command -1 <file>') +	  will not be supported in head, tail, and fold.  (Note: should +	  yank from renice too.) + +endmenu + +menu 'Installation Options' + +config BUSYBOX_CONFIG_INSTALL_NO_USR +	bool "Don't use /usr" +	default n +	help +	  Disable use of /usr. Don't activate this option if you don't know +	  that you really want this behaviour. + +choice +       prompt "Applets links" +       default BUSYBOX_CONFIG_INSTALL_APPLET_SYMLINKS +       help +         Choose how you install applets links. + +config BUSYBOX_CONFIG_INSTALL_APPLET_SYMLINKS +       bool "as soft-links" +       help +         Install applets as soft-links to the busybox binary. This needs some +         free inodes on the filesystem, but might help with filesystem +         generators that can't cope with hard-links. + +config BUSYBOX_CONFIG_INSTALL_APPLET_HARDLINKS +       bool "as hard-links" +       help +         Install applets as hard-links to the busybox binary. This might count +         on a filesystem with few inodes. + +config BUSYBOX_CONFIG_INSTALL_APPLET_DONT +       bool +       prompt "not installed" +       depends on BUSYBOX_CONFIG_FEATURE_INSTALLER || BUSYBOX_CONFIG_FEATURE_SH_STANDALONE_SHELL +       help +         Do not install applets links. Usefull when using the -install feature +         or a standalone shell for rescue pruposes. + +endchoice + +config BUSYBOX_PREFIX +	string +	default "./_install" +	help +	  Define your directory to install BusyBox files/subdirs in. + +endmenu + +source package/busybox/config/libbb/Config.in  endmenu +comment "Applets" + +source package/busybox/config/archival/Config.in +source package/busybox/config/coreutils/Config.in +source package/busybox/config/console-tools/Config.in +source package/busybox/config/debianutils/Config.in +source package/busybox/config/editors/Config.in +source package/busybox/config/findutils/Config.in +source package/busybox/config/init/Config.in +source package/busybox/config/loginutils/Config.in +source package/busybox/config/e2fsprogs/Config.in +source package/busybox/config/modutils/Config.in +source package/busybox/config/util-linux/Config.in +source package/busybox/config/miscutils/Config.in +source package/busybox/config/networking/Config.in +source package/busybox/config/procps/Config.in +source package/busybox/config/shell/Config.in +source package/busybox/config/sysklogd/Config.in diff --git a/package/busybox/config/archival/Config.in b/package/busybox/config/archival/Config.in index 909e74648..bd5c4b140 100644 --- a/package/busybox/config/archival/Config.in +++ b/package/busybox/config/archival/Config.in @@ -47,10 +47,10 @@ config BUSYBOX_CONFIG_BUNZIP2  	  is generally considerably better than that achieved by more  	  conventional LZ77/LZ78-based compressors, and approaches the  	  performance of the PPM family of statistical compressors. -	 +  	  The BusyBox bunzip2 applet is limited to de-compression only.  	  On an x86 system, this applet adds about 11K. -	 +  	  Unless you have a specific application which requires bunzip2, you  	  should probably say N here. @@ -73,7 +73,7 @@ config BUSYBOX_CONFIG_DPKG  	default n  	help  	  dpkg is a medium-level tool to install, build, remove and manage Debian packages. -	 +  	  This implementation of dpkg has a number of limitations, you should use the  	  official dpkg if possible. @@ -82,9 +82,9 @@ config BUSYBOX_CONFIG_DPKG_DEB  	default n  	help  	  dpkg-deb packs, unpacks and provides information about Debian archives. -	 +  	  This implementation of dpkg-deb cannot pack archives. -	 +  	  Unless you have a specific application which requires dpkg-deb, you should  	  probably say N here. @@ -165,6 +165,14 @@ config BUSYBOX_CONFIG_FEATURE_TAR_BZIP2  	  If you enable this option you'll be able to extract  	  archives compressed with bzip2. +config BUSYBOX_CONFIG_FEATURE_TAR_LZMA +	bool "  Enable -a option to handle .tar.lzma files" +	default n +	depends on BUSYBOX_CONFIG_TAR +	help +	  If you enable this option you'll be able to extract +	  archives compressed with lzma. +  config BUSYBOX_CONFIG_FEATURE_TAR_FROM  	bool "  Enable -X (exclude from) and -T (include from) options)"  	default y @@ -220,6 +228,29 @@ config BUSYBOX_CONFIG_UNCOMPRESS  	  uncompress is used to decompress archives created by compress.  	  Not much used anymore, replaced by gzip/gunzip. +config BUSYBOX_CONFIG_UNLZMA +	bool "unlzma" +	default n +	help +	  unlzma is a compression utility using the Lempel-Ziv-Markov chain +	  compression algorithm, and range coding.  Compression +	  is generally considerably better than that achieved by the bzip2 +	  compressors. + +	  The BusyBox unlzma applet is limited to de-compression only. +	  On an x86 system, this applet adds about 4K. + +	  Unless you have a specific application which requires unlzma, you +	  should probably say N here. + +config BUSYBOX_CONFIG_FEATURE_LZMA_FAST +	bool "  Optimze unlzma for speed" +	default n +	depends on BUSYBOX_CONFIG_UNLZMA +	help +	  This option reduce decompression time by about 33% at the cost of +	  a 2K bigger binary. +  config BUSYBOX_CONFIG_UNZIP  	bool "unzip"  	default n @@ -249,7 +280,7 @@ config BUSYBOX_CONFIG_FEATURE_DEB_TAR_GZ  	depends on BUSYBOX_CONFIG_DPKG || BUSYBOX_CONFIG_DPKG_DEB  	help  	  This is the default compression method inside the debian ar file. -	 +  	  If you want compatibility with standard .deb's you should say yes here.  config BUSYBOX_CONFIG_FEATURE_DEB_TAR_BZ2 @@ -259,8 +290,19 @@ config BUSYBOX_CONFIG_FEATURE_DEB_TAR_BZ2  	help  	  This allows dpkg and dpkg-deb to extract deb's that are compressed internally  	  with bzip2 instead of gzip. -	 +  	  You only want this if you are creating your own custom debian packages that  	  use an internal control.tar.bz2 or data.tar.bz2. +config BUSYBOX_CONFIG_FEATURE_DEB_TAR_LZMA +	bool "  lzma debian packages" +	default n +	depends on BUSYBOX_CONFIG_DPKG || BUSYBOX_CONFIG_DPKG_DEB +	help +	  This allows dpkg and dpkg-deb to extract deb's that are compressed +          internally with lzma instead of gzip. + +	  You only want this if you are creating your own custom debian +          packages that use an internal control.tar.lzma or data.tar.lzma. +  endmenu diff --git a/package/busybox/config/console-tools/Config.in b/package/busybox/config/console-tools/Config.in index 207e2df21..4faaeb44b 100644 --- a/package/busybox/config/console-tools/Config.in +++ b/package/busybox/config/console-tools/Config.in @@ -58,6 +58,13 @@ config BUSYBOX_CONFIG_RESET  	  This program is used to reset the terminal screen, if it  	  gets messed up. +config BUSYBOX_CONFIG_SETCONSOLE +	bool "setconsole" +	default n +	help +	  This program redirects the system console to another device, +	  like the current tty while logged in via telnet. +  config BUSYBOX_CONFIG_SETKEYCODES  	bool "setkeycodes"  	default n diff --git a/package/busybox/config/coreutils/Config.in b/package/busybox/config/coreutils/Config.in index 9d97e3c58..53984e395 100644 --- a/package/busybox/config/coreutils/Config.in +++ b/package/busybox/config/coreutils/Config.in @@ -59,6 +59,13 @@ config BUSYBOX_CONFIG_CMP  	  cmp is used to compare two files and returns the result  	  to standard output. +config BUSYBOX_CONFIG_COMM +	bool "comm" +	default n +	help +	  comm is used to compare two files line by line and return +	  a three-column output. +  config BUSYBOX_CONFIG_CP  	bool "cp"  	default y @@ -72,20 +79,12 @@ config BUSYBOX_CONFIG_CUT  	  cut is used to print selected parts of lines from  	  each file to stdout. -if BUSYBOX_CONFIG_WATCH -	config BUSYBOX_CONFIG_DATE -		default y -	comment "date (forced enabled for use with watch)" -endif - -if !CONFIG_WATCH -    config BUSYBOX_CONFIG_DATE -	    bool "date" -	    default y -	    help -	      date is used to set the system date or display the -	      current time in the given format. -endif +config BUSYBOX_CONFIG_DATE +	bool "date" +	default y +	help +	  date is used to set the system date or display the +	  current time in the given format.  config BUSYBOX_CONFIG_FEATURE_DATE_ISOFMT  	bool "  Enable ISO date format output (-I)" @@ -144,11 +143,12 @@ config BUSYBOX_CONFIG_FEATURE_DU_DEFALT_BLOCKSIZE_1K  	  Use a blocksize of (1K) instead of the default 512b.  config BUSYBOX_CONFIG_ECHO -	bool "echo (basic SUSv3 version taking no options)" +	bool "echo (basic SuSv3 version taking no options)"  	default y  	help  	  echo is used to print a specified string to stdout. +# this entry also appears in shell/Config.in, next to the echo builtin  config BUSYBOX_CONFIG_FEATURE_FANCY_ECHO  	bool "  Enable echo options (-n and -e)"  	default y @@ -171,19 +171,20 @@ config BUSYBOX_CONFIG_EXPR  	  expr is used to calculate numbers and print the result  	  to standard output. -if BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_LASH || BUSYBOX_CONFIG_MSH -	config BUSYBOX_CONFIG_FALSE -		default y -	comment "false (forced enabled for use with shell)" -endif +config BUSYBOX_CONFIG_EXPR_MATH_SUPPORT_64 +	bool "    Extend Posix numbers support to 64 bit" +	default n +	depends on BUSYBOX_CONFIG_EXPR +	help +	  Enable 64-bit math support in the expr applet.  This will make +	  the applet slightly larger, but will allow computation with very +	  large numbers. -if !CONFIG_HUSH && !CONFIG_LASH && !CONFIG_MSH -    config BUSYBOX_CONFIG_FALSE -	    bool "false" -	    default y -	    help -	      false returns an exit code of FALSE (1). -endif +config BUSYBOX_CONFIG_FALSE +	bool "false" +	default y +	help +	  false returns an exit code of FALSE (1).  config BUSYBOX_CONFIG_FOLD  	bool "fold" @@ -291,11 +292,22 @@ config BUSYBOX_CONFIG_FEATURE_LS_USERNAME  	  Allow ls to display username/groupname for files.  config BUSYBOX_CONFIG_FEATURE_LS_COLOR -	bool "  Use color to identify file types" +	bool "  Allow use of color to identify file types"  	default y  	depends on BUSYBOX_CONFIG_LS  	help -	  Allow ls to use color when displaying files. +	  This enables the --color option to ls. + +config BUSYBOX_CONFIG_FEATURE_LS_COLOR_IS_DEFAULT +	bool "  Produce colored ls output by default" +	default y +	depends on BUSYBOX_CONFIG_FEATURE_LS_COLOR +	help +	  Saying yes here will turn coloring on by default, +	  even if no "--color" option is given to the ls command. +	  This is not recommended, since the colors are not +	  configurable, and the output may not be legible on +	  many output screens.  config BUSYBOX_CONFIG_MD5SUM  	bool "md5sum" @@ -329,12 +341,30 @@ config BUSYBOX_CONFIG_MV  	help  	  mv is used to move or rename files or directories. +config BUSYBOX_CONFIG_NICE +	bool "nice" +	default n +	help +	  nice runs a program with modified scheduling priority. + +config BUSYBOX_CONFIG_NOHUP +	bool "nohup" +	default n +	help +	  run a command immune to hangups, with output to a non-tty. +  config BUSYBOX_CONFIG_OD  	bool "od"  	default n  	help  	  od is used to dump binary files in octal and other formats. +config BUSYBOX_CONFIG_PRINTENV +	bool "printenv" +	default n +	help +	  printenv is used to print all or part of environment. +  config BUSYBOX_CONFIG_PRINTF  	bool "printf"  	default y @@ -398,12 +428,45 @@ config BUSYBOX_CONFIG_SORT  	help  	  sort is used to sort lines of text in specified files. +config BUSYBOX_CONFIG_FEATURE_SORT_BIG +	bool "  full SuSv3 compliant sort (Support -ktcsbdfiozgM)" +	default n +	depends on BUSYBOX_CONFIG_SORT +	help +	  Without this, sort only supports  -r, -u, and an integer version +	  of -n.  Selecting this adds sort keys, floating point support, and +	  more.  This adds a little over 3k to a nonstatic build on x86. + +	  The SuSv3 sort standard is available at: +	  http://www.opengroup.org/onlinepubs/007904975/utilities/sort.html + +config BUSYBOX_CONFIG_STAT +	bool "stat" +	default n +	help +	  display file or filesystem status. + +config BUSYBOX_CONFIG_FEATURE_STAT_FORMAT +	bool "  Enable custom formats (-c)" +	default n +	depends on BUSYBOX_CONFIG_STAT +	help +	  Without this, stat will not support the '-c format' option where +	  users can pass a custom format string for output.  This adds about +	  7k to a nonstatic build on amd64. +  config BUSYBOX_CONFIG_STTY  	bool "stty"  	default n  	help  	  stty is used to change and print terminal line settings. +config BUSYBOX_CONFIG_SUM +	bool "sum" +	default n +	help +	  checksum and count the blocks in a file +  config BUSYBOX_CONFIG_SYNC  	bool "sync"  	default y @@ -439,21 +502,13 @@ config BUSYBOX_CONFIG_FEATURE_TEE_USE_BLOCK_IO  	help  	  Enable this option for a faster tee, at expense of size. -if BUSYBOX_CONFIG_ASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_LASH || BUSYBOX_CONFIG_MSH -	config BUSYBOX_CONFIG_TEST -		default y -	comment "test (forced enabled for use with shell)" -endif - -if !CONFIG_ASH && !CONFIG_HUSH && !CONFIG_LASH && !CONFIG_MSH -    config BUSYBOX_CONFIG_TEST -	    bool "test" -	    default y -	    help -	      test is used to check file types and compare values, -	      returning an appropriate exit code. The shells (ash -	      and bash) have test builtin. -endif +config BUSYBOX_CONFIG_TEST +	bool "test" +	default y +	help +	  test is used to check file types and compare values, +	  returning an appropriate exit code. The shells (ash +	  and bash) have test builtin.  config BUSYBOX_CONFIG_FEATURE_TEST_64  	bool "  Extend test to 64 bit" @@ -476,20 +531,30 @@ config BUSYBOX_CONFIG_TR  	  tr is used to squeeze, and/or delete characters from standard  	  input, writing to standard output. -if BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_LASH || BUSYBOX_CONFIG_MSH -	config BUSYBOX_CONFIG_TRUE -		default y -	comment "true (forced enabled for use with shell)" -endif +config BUSYBOX_CONFIG_FEATURE_TR_CLASSES +	bool "  Enable character classes (such as [:upper:])" +	default n +	depends on BUSYBOX_CONFIG_TR +	help +	  Enable character classes, enabling commands such as: +	  tr [:upper:] [:lower:] to convert input into lowercase. -if !CONFIG_HUSH && !CONFIG_LASH && !CONFIG_MSH -    config BUSYBOX_CONFIG_TRUE -	    bool "true" -	    default y -	    help -	      true returns an exit code of TRUE (0). +config BUSYBOX_CONFIG_FEATURE_TR_EQUIV +	bool "  Enable equivalence classes" +	default n +	depends on BUSYBOX_CONFIG_TR +	help +	  Enable equivalence classes, which essentially add the enclosed +	  character to the current set. For instance, tr [=a=] xyz would +	  replace all instances of 'a' with 'xyz'. This option is mainly +	  useful for cases when no other way of expressing a character +	  is possible. -endif +config BUSYBOX_CONFIG_TRUE +	bool "true" +	default y +	help +	  true returns an exit code of TRUE (0).  config BUSYBOX_CONFIG_TTY  	bool "tty" @@ -531,6 +596,7 @@ config BUSYBOX_CONFIG_UUENCODE  config BUSYBOX_CONFIG_WATCH  	bool "watch"  	default n +	select BUSYBOX_CONFIG_DATE  	help  	  watch is used to execute a program periodically, showing  	  output to the screen. @@ -545,7 +611,7 @@ config BUSYBOX_CONFIG_WC  config BUSYBOX_CONFIG_WHO  	bool "who"  	default n -	select BUSYBOX_CONFIG_FEATURE_U_W_TMP +	select BUSYBOX_CONFIG_FEATURE_UTMP  	help  	  who is used to show who is logged on. @@ -564,7 +630,7 @@ config BUSYBOX_CONFIG_YES  	  the default string `y'.  comment "Common options for cp and mv" -    depends on BUSYBOX_CONFIG_CP || BUSYBOX_CONFIG_MV +	depends on BUSYBOX_CONFIG_CP || BUSYBOX_CONFIG_MV  config BUSYBOX_CONFIG_FEATURE_PRESERVE_HARDLINKS  	bool "  Preserve hard links" @@ -573,22 +639,22 @@ config BUSYBOX_CONFIG_FEATURE_PRESERVE_HARDLINKS  	help  	  Allow cp and mv to preserve hard links. -comment "Common options for ls and more" -	depends on BUSYBOX_CONFIG_LS || BUSYBOX_CONFIG_MORE +comment "Common options for ls, more and telnet" +	depends on BUSYBOX_CONFIG_LS || BUSYBOX_CONFIG_MORE || BUSYBOX_CONFIG_TELNET  config BUSYBOX_CONFIG_FEATURE_AUTOWIDTH  	bool "  Calculate terminal & column widths"  	default y -	depends on BUSYBOX_CONFIG_LS || BUSYBOX_CONFIG_MORE +	depends on BUSYBOX_CONFIG_LS || BUSYBOX_CONFIG_MORE || BUSYBOX_CONFIG_TELNET  	help -	  This option allows utilities such as 'ls' and 'more' to determine the -	  width of the screen, which can allow them to display additional text -	  or avoid wrapping text onto the next line.  If you leave this -	  disabled, your utilities will be especially primitive and will be -	  unable to determine the current screen width. +	  This option allows utilities such as 'ls', 'more' and 'telnet' +	  to determine the width of the screen, which can allow them to  +	  display additional text or avoid wrapping text onto the next line. +	  If you leave this disabled, your utilities will be especially  +	  primitive and will be unable to determine the current screen width.  comment "Common options for df, du, ls" -    depends on BUSYBOX_CONFIG_DF || BUSYBOX_CONFIG_DU || BUSYBOX_CONFIG_LS +	depends on BUSYBOX_CONFIG_DF || BUSYBOX_CONFIG_DU || BUSYBOX_CONFIG_LS  config BUSYBOX_CONFIG_FEATURE_HUMAN_READABLE  	bool "  Support for human readable output (example 13k, 23M, 235G)" @@ -598,7 +664,7 @@ config BUSYBOX_CONFIG_FEATURE_HUMAN_READABLE  	  Allow df, du, and ls to have human readable output.  comment "Common options for md5sum, sha1sum" -    depends on BUSYBOX_CONFIG_MD5SUM || BUSYBOX_CONFIG_SHA1SUM +	depends on BUSYBOX_CONFIG_MD5SUM || BUSYBOX_CONFIG_SHA1SUM  config BUSYBOX_CONFIG_FEATURE_MD5_SHA1_SUM_CHECK  	bool "  Enable -c, -s and -w options" diff --git a/package/busybox/config/debianutils/Config.in b/package/busybox/config/debianutils/Config.in index b62499eb1..71f2bf38a 100644 --- a/package/busybox/config/debianutils/Config.in +++ b/package/busybox/config/debianutils/Config.in @@ -24,6 +24,13 @@ config BUSYBOX_CONFIG_READLINK  	  This program reads a symbolic link and returns the name  	  of the file it points to +config BUSYBOX_CONFIG_FEATURE_READLINK_FOLLOW +	bool "  Enable canonicalization by following all symlinks (-f)" +	default n +	depends on BUSYBOX_CONFIG_READLINK +	help +	  Enable the readlink option (-f). +  config BUSYBOX_CONFIG_RUN_PARTS  	bool "run-parts"  	default n diff --git a/package/busybox/config/e2fsprogs/Config.in b/package/busybox/config/e2fsprogs/Config.in new file mode 100644 index 000000000..e9ef3dc04 --- /dev/null +++ b/package/busybox/config/e2fsprogs/Config.in @@ -0,0 +1,67 @@ +# +# For a description of the syntax of this configuration file, +# see scripts/kbuild/config-language.txt. +# + +menu "Linux Ext2 FS Progs" + +config BUSYBOX_CONFIG_CHATTR +	bool "chattr" +	default n +	help +	  chattr changes the file attributes on a second extended file system. + +config BUSYBOX_CONFIG_E2FSCK +	bool "e2fsck" +	default n +	help +	  e2fsck is used to check Linux second extended file systems (ext2fs). +	  e2fsck also supports ext2 filesystems countaining a journal (ext3). +	  The normal compat symlinks 'fsck.ext2' and 'fsck.ext3' are also +	  provided. + +config BUSYBOX_CONFIG_FSCK +	bool "fsck" +	default n +	help +	  fsck is used to check and optionally repair one or more filesystems. +	  In actuality, fsck is simply a front-end for the various file system +	  checkers (fsck.fstype) available under Linux. + +config BUSYBOX_CONFIG_LSATTR +	bool "lsattr" +	default n +	help +	  lsattr lists the file attributes on a second extended file system. + +config BUSYBOX_CONFIG_MKE2FS +	bool "mke2fs" +	default n +	help +	  mke2fs is used to create an ext2/ext3 filesystem.  The normal compat +	  symlinks 'mkfs.ext2' and 'mkfs.ext3' are also provided. + +config BUSYBOX_CONFIG_TUNE2FS +	bool "tune2fs" +	default n +	help +	  tune2fs allows the system administrator to adjust various tunable +	  filesystem parameters on Linux ext2/ext3 filesystems. + +config BUSYBOX_CONFIG_E2LABEL +	bool "e2label" +	default n +	depends on BUSYBOX_CONFIG_TUNE2FS +	help +	  e2label will display or change the filesystem label on the ext2 +	  filesystem located on device. + +config BUSYBOX_CONFIG_FINDFS +	bool "findfs" +	default n +	depends on BUSYBOX_CONFIG_TUNE2FS +	help +	  findfs will search the disks in the system looking for a filesystem +	  which has a label matching label or a UUID equal to uuid. + +endmenu diff --git a/package/busybox/config/findutils/Config.in b/package/busybox/config/findutils/Config.in index fb5a8c05f..9667bfba8 100644 --- a/package/busybox/config/findutils/Config.in +++ b/package/busybox/config/findutils/Config.in @@ -17,7 +17,15 @@ config BUSYBOX_CONFIG_FEATURE_FIND_MTIME  	depends on BUSYBOX_CONFIG_FIND  	help  	  Allow searching based on the modification time of -	  files. +	  files, in days. + +config BUSYBOX_CONFIG_FEATURE_FIND_MMIN +	bool "  Enable modified time matching (-min) option" +	default n +	depends on BUSYBOX_CONFIG_FIND +	help +	  Allow searching based on the modification time of +	  files, in minutes.  config BUSYBOX_CONFIG_FEATURE_FIND_PERM  	bool "  Enable permissions matching (-perm) option" @@ -57,6 +65,14 @@ config BUSYBOX_CONFIG_FEATURE_FIND_INUM  	help  	  Support the 'find -inum' option for searching by inode number. +config BUSYBOX_CONFIG_FEATURE_FIND_EXEC +	bool "  Enable (-exec) option allowing execution of commands" +	default y +	depends on BUSYBOX_CONFIG_FIND +	help +	  Support the 'find -exec' option for executing commands based upon +	  the files matched. +  config BUSYBOX_CONFIG_GREP  	bool "grep"  	default y @@ -73,13 +89,13 @@ config BUSYBOX_CONFIG_FEATURE_GREP_EGREP_ALIAS  	  and various repetition operators.  config BUSYBOX_CONFIG_FEATURE_GREP_FGREP_ALIAS -	bool "  Alias fgrep to grep -f" +	bool "  Alias fgrep to grep -F"  	default y  	depends on BUSYBOX_CONFIG_GREP  	help -          fgrep sees the search pattern as a normal string rather than +	  fgrep sees the search pattern as a normal string rather than  	  regular expressions. -	  grep -f is always builtin, this just creates the fgrep alias. +	  grep -F is always builtin, this just creates the fgrep alias.  config BUSYBOX_CONFIG_FEATURE_GREP_CONTEXT  	bool "  Enable before and after context flags (-A, -B and -C)" diff --git a/package/busybox/config/init/Config.in b/package/busybox/config/init/Config.in index 087d836bf..88dcaca2d 100644 --- a/package/busybox/config/init/Config.in +++ b/package/busybox/config/init/Config.in @@ -12,21 +12,32 @@ config BUSYBOX_CONFIG_INIT  	  init is the first program run when the system boots.  config BUSYBOX_CONFIG_FEATURE_USE_INITTAB -	bool "  Support reading an inittab file?" +	bool "  Support reading an inittab file"  	default y  	depends on BUSYBOX_CONFIG_INIT  	help  	  Allow init to read an inittab file when the system boot. -config BUSYBOX_CONFIG_FEATURE_INITRD -	bool "  Support running init from within an initrd?" +config BUSYBOX_CONFIG_FEATURE_INIT_SCTTY +	bool "  Support running commands with a controlling-tty" +	default n +	depends on BUSYBOX_CONFIG_INIT +	help +	  If this option is enabled a command starting with hyphen (-) +	  is run in its own session (setsid(2)) and possibly with a +	  controlling tty (TIOCSCTTY).  This is not the traditional init +	  behavour, but is often what you want in an embedded system where +	  the console is only accessed during development or for maintenance. + +config BUSYBOX_CONFIG_FEATURE_EXTRA_QUIET +	bool "  Be _extra_ quiet on boot"  	default n  	depends on BUSYBOX_CONFIG_INIT  	help -	  Allow init to be called from an initrd as linuxrc. +	  Prevent init from logging some messages to the console during boot.  config BUSYBOX_CONFIG_FEATURE_INIT_COREDUMPS -	bool "  Support dumping core for child processes (debugging only)?" +	bool "  Support dumping core for child processes (debugging only)"  	default n  	depends on BUSYBOX_CONFIG_INIT  	help @@ -35,31 +46,24 @@ config BUSYBOX_CONFIG_FEATURE_INIT_COREDUMPS  	  core file sizes.  If this option is disabled, processes  	  will not generate any core files. -config BUSYBOX_CONFIG_FEATURE_EXTRA_QUIET -	bool "  Should init be _extra_ quiet on boot?" -	default n -	depends on BUSYBOX_CONFIG_INIT -	help -	  Prevent init from logging some messages to the console -	  during boot. -config BUSYBOX_CONFIG_HALT -	bool "halt" -	default n -	help -	  Stop all processes and halt the system. -config BUSYBOX_CONFIG_POWEROFF -	bool "poweroff" +config BUSYBOX_CONFIG_FEATURE_INITRD +	bool "  Support running init from within an initrd (not initramfs)"  	default n +	depends on BUSYBOX_CONFIG_INIT  	help -	  Stop all processes and (try to) power off the system. +	  Legacy support for running init under the old-style initrd.  Allows +	  the name linuxrc to act as init, and it doesn't assume init is PID 1. + +	  This does not apply to initramfs, which runs /init as PID 1 and +	  requires no special support. -config BUSYBOX_CONFIG_REBOOT -	bool "reboot" +config BUSYBOX_CONFIG_HALT +	bool "poweroff, halt, and reboot"  	default y  	help -	  Stop all processes and reboot the system. +	  Stop all processes and either halt, reboot, or power off the system.  config BUSYBOX_CONFIG_MESG  	bool "mesg" @@ -68,5 +72,9 @@ config BUSYBOX_CONFIG_MESG  	  Mesg controls access to your terminal by others.  It is typically  	  used to allow or disallow other users to write to your terminal +	default y +	help +	  Stop all processes and (try to) power off the system. +  endmenu diff --git a/package/busybox/config/libbb/Config.in b/package/busybox/config/libbb/Config.in new file mode 100644 index 000000000..7d84a7596 --- /dev/null +++ b/package/busybox/config/libbb/Config.in @@ -0,0 +1,22 @@ +# +# For a description of the syntax of this configuration file, +# see scripts/kbuild/config-language.txt. +# + +menu "Busybox Library Tuning" + +config BUSYBOX_CONFIG_MD5_SIZE_VS_SPEED +	int " MD5: Trade Bytes for Speed" +	default 2 +	range 0 3 +	help +	  Trade binary size versus speed for the md5sum algorithm. +	  Approximate values running uClibc and hashing +	  linux-2.4.4.tar.bz2 were: +	                    user times (sec)  text size (386) +	  0 (fastest)         1.1                6144 +	  1                   1.4                5392 +	  2                   3.0                5088 +	  3 (smallest)        5.1                4912 + +endmenu diff --git a/package/busybox/config/loginutils/Config.in b/package/busybox/config/loginutils/Config.in index 7ab724f5c..621d57643 100644 --- a/package/busybox/config/loginutils/Config.in +++ b/package/busybox/config/loginutils/Config.in @@ -5,6 +5,33 @@  menu "Login/Password Management Utilities" +config BUSYBOX_CONFIG_FEATURE_SHADOWPASSWDS +	bool "Support for shadow passwords" +	default n +	help +	  Build support for shadow password in /etc/shadow.  This file is only +	  readable by root and thus the encrypted passwords are no longer +	  publicly readable. + +config BUSYBOX_CONFIG_USE_BB_SHADOW +	bool #"  Use busybox shadow password functions" +	default n +	depends on BUSYBOX_CONFIG_USE_BB_PWD_GRP && BUSYBOX_CONFIG_FEATURE_SHADOWPASSWDS +	help +	    If you leave this disabled, busybox will use the system's shadow +	    password handling functions.  And if you are using the GNU C library +	    (glibc), you will then need to install the /etc/nsswitch.conf +	    configuration file and the required /lib/libnss_* libraries in +	    order for the shadow password functions to work.  This generally +	    makes your embedded system quite a bit larger. + +	    Enabling this option will cause busybox to directly access the +	    system's /etc/shadow file when handling shadow passwords.  This +	    makes your system smaller and I will get fewer emails asking about +	    how glibc NSS works).  When this option is enabled, you will not be +	    able to use PAM to access shadow passwords from remote LDAP +	    password servers and whatnot. +  config BUSYBOX_CONFIG_USE_BB_PWD_GRP  	bool "Use internal password and group functions rather than system functions"  	default n @@ -26,7 +53,6 @@ config BUSYBOX_CONFIG_USE_BB_PWD_GRP  	    If you enable this option, it will add about 1.5k to busybox. -  config BUSYBOX_CONFIG_ADDGROUP  	bool "addgroup"  	default n @@ -57,14 +83,21 @@ config BUSYBOX_CONFIG_GETTY  	help  	  getty lets you log in on a tty, it is normally invoked by init. -config BUSYBOX_CONFIG_FEATURE_U_W_TMP -	bool "  Support utmp and wtmp files" -	depends on BUSYBOX_CONFIG_GETTY || BUSYBOX_CONFIG_LOGIN || BUSYBOX_CONFIG_SU || BUSYBOX_CONFIG_WHO || BUSYBOX_CONFIG_LAST +config BUSYBOX_CONFIG_FEATURE_UTMP +	bool "  Support utmp file" +	depends on BUSYBOX_CONFIG_GETTY || BUSYBOX_CONFIG_LOGIN || BUSYBOX_CONFIG_SU || BUSYBOX_CONFIG_WHO  	default n  	help -	  The files /var/run/utmp and /var/run/wtmp can be used to track when -	  user's have logged into and logged out of the system, allowing programs -	  such as 'who' and 'last' to list who is currently logged in. +	  The file /var/run/utmp is used to track who is currently logged in. + +config BUSYBOX_CONFIG_FEATURE_WTMP +	bool "  Support wtmp file" +	depends on BUSYBOX_CONFIG_GETTY || BUSYBOX_CONFIG_LOGIN || BUSYBOX_CONFIG_SU || BUSYBOX_CONFIG_LAST +	default n +	select BUSYBOX_CONFIG_FEATURE_UTMP +	help +	  The file /var/run/wtmp is used to track when user's have logged into +	  and logged out of the system.  config BUSYBOX_CONFIG_LOGIN  	bool "login" @@ -126,36 +159,5 @@ config BUSYBOX_CONFIG_VLOCK  	  Note that Busybox binary must be setuid root for this applet to  	  work properly. -comment "Common options for adduser, deluser, login, su" -	depends on BUSYBOX_CONFIG_ADDUSER || BUSYBOX_CONFIG_DELUSER || BUSYBOX_CONFIG_LOGIN || BUSYBOX_CONFIG_SU - -config BUSYBOX_CONFIG_FEATURE_SHADOWPASSWDS -	bool "Support for shadow passwords" -	default n -	depends on BUSYBOX_CONFIG_ADDUSER || BUSYBOX_CONFIG_DELUSER || BUSYBOX_CONFIG_LOGIN || BUSYBOX_CONFIG_SU -	help -	  Build support for shadow password in /etc/shadow.  This file is only -	  readable by root and thus the encrypted passwords are no longer -	  publicly readable. - -config BUSYBOX_CONFIG_USE_BB_SHADOW -	bool "  Use busybox shadow password functions" -	default n -	depends on BUSYBOX_CONFIG_USE_BB_PWD_GRP && BUSYBOX_CONFIG_FEATURE_SHADOWPASSWDS -	help -	    If you leave this disabled, busybox will use the system's shadow -	    password handling functions.  And if you are using the GNU C library -	    (glibc), you will then need to install the /etc/nsswitch.conf -	    configuration file and the required /lib/libnss_* libraries in -	    order for the shadow password functions to work.  This generally -	    makes your embedded system quite a bit larger. - -	    Enabling this option will cause busybox to directly access the -	    system's /etc/shadow file when handling shadow passwords.  This -	    makes your system smaller and I will get fewer emails asking about -	    how glibc NSS works).  When this option is enabled, you will not be -	    able to use PAM to access shadow passwords from remote LDAP -	    password servers and whatnot. -  endmenu diff --git a/package/busybox/config/miscutils/Config.in b/package/busybox/config/miscutils/Config.in index 77dc85cd0..1ffb8c653 100644 --- a/package/busybox/config/miscutils/Config.in +++ b/package/busybox/config/miscutils/Config.in @@ -12,6 +12,13 @@ config BUSYBOX_CONFIG_ADJTIMEX  	  Adjtimex reads and optionally sets adjustment parameters for  	  the Linux clock adjustment algorithm. +config BUSYBOX_CONFIG_BBCONFIG +	bool "bbconfig" +	default n +	help +	  The bbconfig applet will print the config file with which +	  busybox was built. +  config BUSYBOX_CONFIG_CROND  	bool "crond"  	default y @@ -37,6 +44,7 @@ config BUSYBOX_CONFIG_FEATURE_CROND_CALL_SENDMAIL  config BUSYBOX_CONFIG_CRONTAB  	bool "crontab"  	default y +	select BUSYBOX_CONFIG_FEATURE_SUID  	help  	  Crontab manipulates the crontab for a particular user.  Only  	  the superuser may specify a different user and/or crontab directory. @@ -83,13 +91,66 @@ config BUSYBOX_CONFIG_DEVFSD_VERBOSE  	help  	  Increases logging to stderr or syslog. +config BUSYBOX_CONFIG_EJECT +	bool "eject" +	default n +	help +	  Used to eject cdroms.  (defaults to /dev/cdrom) +  config BUSYBOX_CONFIG_LAST  	bool "last"  	default n -	select BUSYBOX_CONFIG_FEATURE_U_W_TMP +	select BUSYBOX_CONFIG_FEATURE_WTMP  	help  	  'last' displays a list of the last users that logged into the system. +config BUSYBOX_CONFIG_LESS +	bool "less" +	default n +	help +	  'less' is a pager, meaning that it displays text files. It possesses +	  a wide array of features, and is an improvement over 'more'. + +config BUSYBOX_CONFIG_FEATURE_LESS_BRACKETS +	bool "  Enable bracket searching" +	default n +	depends on BUSYBOX_CONFIG_LESS +	help +	  This option adds the capability to search for matching left and right +	  brackets, facilitating programming. + +config BUSYBOX_CONFIG_FEATURE_LESS_FLAGS +	bool "  Enable extra flags" +	default n +	depends on BUSYBOX_CONFIG_LESS +	help +	  The extra flags provided do the following: + +	  The -M flag enables a more sophisticated status line. +	  The -m flag enables a simpler status line with a percentage. + +config BUSYBOX_CONFIG_FEATURE_LESS_FLAGCS +	bool "  Enable flag changes" +	default n +	depends on BUSYBOX_CONFIG_LESS +	help +	  This enables the ability to change command-line flags within +	  less itself. + +config BUSYBOX_CONFIG_FEATURE_LESS_MARKS +	bool "  Enable marks" +	default n +	depends on BUSYBOX_CONFIG_LESS +	help +	  Marks enable positions in a file to be stored for easy reference. + +config BUSYBOX_CONFIG_FEATURE_LESS_REGEXP +	bool "  Enable regular expressions" +	default n +	depends on BUSYBOX_CONFIG_LESS +	help +	  Enable regular expressions, allowing complex file searches. +  config BUSYBOX_CONFIG_HDPARM  	bool "hdparm"  	default n @@ -152,10 +213,39 @@ config BUSYBOX_CONFIG_MAKEDEVS  	bool "makedevs"  	default n  	help -	  'makedevs' is a utility used and created by the Linux Router Project. -	  It creates a large number of device special files (/dev devices) -	  rather quickly, and can be considerably faster then running mknod a -	  zillion times. +	  'makedevs' is a utility used to create a batch of devices with +	  one command. +	  . +	  There are two choices for command line behaviour, the interface +	  as used by LEAF/Linux Router Project, or a device table file. +	  . +	  'leaf' is traditionally what busybox follows, it allows multiple +	  devices of a particluar type to be created per command. +	  e.g. /dev/hda[0-9] +          Device properties are passed as command line arguments. +	  . +	  'table' reads device properties from a file or stdin, allowing +	  a batch of unrelated devices to be makde with one command. +          User/group names are allowed as an alternative to uid/gid. + +choice +	prompt "Choose makedevs behaviour" +	depends BUSYBOX_CONFIG_MAKEDEVS +	default BUSYBOX_CONFIG_FEATURE_MAKEDEVS_TABLE + +config BUSYBOX_CONFIG_FEATURE_MAKEDEVS_LEAF +        bool "leaf" + +config BUSYBOX_CONFIG_FEATURE_MAKEDEVS_TABLE +	bool "table" + +endchoice + +config BUSYBOX_CONFIG_MOUNTPOINT +	bool "mountpoint" +	default n +	help +	  mountpoint checks if the directory is a mountpoint.  config BUSYBOX_CONFIG_MT  	bool "mt" @@ -165,6 +255,15 @@ config BUSYBOX_CONFIG_MT  	  to advance or rewind a tape past a specified number of archive  	  files on the tape. +config BUSYBOX_CONFIG_RUNLEVEL +        bool "runlevel" +	default n +	help + 	  find the current and previous system runlevel. + +	  This applet uses utmp but does not rely on busybox supporing +	  utmp on purpose. It is used by e.g. emdebian via /etc/init.d/rc. +  config BUSYBOX_CONFIG_RX          bool "rx"  	default n @@ -178,6 +277,12 @@ config BUSYBOX_CONFIG_STRINGS  	  strings prints the printable character sequences for each file  	  specified. +config BUSYBOX_CONFIG_SETSID +	bool "setsid" +	default n +	help +	  setsid runs a program in a new session +  config BUSYBOX_CONFIG_TIME  	bool "time"  	default y diff --git a/package/busybox/config/modutils/Config.in b/package/busybox/config/modutils/Config.in index ee348f6fd..7c9f50f16 100644 --- a/package/busybox/config/modutils/Config.in +++ b/package/busybox/config/modutils/Config.in @@ -11,22 +11,8 @@ config BUSYBOX_CONFIG_INSMOD  	help  	  insmod is used to load specified modules in the running kernel. -config BUSYBOX_CONFIG_FEATURE_2_4_MODULES -	bool "  Support version 2.2.x to 2.4.x Linux kernels" -	default y -	depends on BUSYBOX_CONFIG_INSMOD -	help -	  Support module loading for 2.2.x and 2.4.x Linux kernels. - -config BUSYBOX_CONFIG_FEATURE_2_6_MODULES -	bool "  Support version 2.6.x Linux kernels" -	default y -	depends on BUSYBOX_CONFIG_INSMOD -	help -	  Support module loading for newer 2.6.x Linux kernels. -  config BUSYBOX_CONFIG_FEATURE_INSMOD_VERSION_CHECKING -	bool "  Module version checking" +	bool "Module version checking"  	default n  	depends on BUSYBOX_CONFIG_INSMOD && BUSYBOX_CONFIG_FEATURE_2_4_MODULES  	help @@ -34,7 +20,7 @@ config BUSYBOX_CONFIG_FEATURE_INSMOD_VERSION_CHECKING  	  ensure that the kernel and module are made for each other.  config BUSYBOX_CONFIG_FEATURE_INSMOD_KSYMOOPS_SYMBOLS -	bool "  Add module symbols to kernel symbol table" +	bool "Add module symbols to kernel symbol table"  	default n  	depends on BUSYBOX_CONFIG_INSMOD && BUSYBOX_CONFIG_FEATURE_2_4_MODULES  	help @@ -45,7 +31,7 @@ config BUSYBOX_CONFIG_FEATURE_INSMOD_KSYMOOPS_SYMBOLS  	  Oops messages from kernel modules, say N.  config BUSYBOX_CONFIG_FEATURE_INSMOD_LOADINKMEM -	bool "  In kernel memory optimization (uClinux only)" +	bool "In kernel memory optimization (uClinux only)"  	default n  	depends on BUSYBOX_CONFIG_INSMOD && BUSYBOX_CONFIG_FEATURE_2_4_MODULES  	help @@ -55,7 +41,7 @@ config BUSYBOX_CONFIG_FEATURE_INSMOD_LOADINKMEM  	  being loaded into memory.  config BUSYBOX_CONFIG_FEATURE_INSMOD_LOAD_MAP -	bool "  Enable load map (-m) option" +	bool "Enable load map (-m) option"  	default n  	depends on BUSYBOX_CONFIG_INSMOD && BUSYBOX_CONFIG_FEATURE_2_4_MODULES  	help @@ -66,7 +52,7 @@ config BUSYBOX_CONFIG_FEATURE_INSMOD_LOAD_MAP  	  don't need this option.  config BUSYBOX_CONFIG_FEATURE_INSMOD_LOAD_MAP_FULL -	bool "  Symbols in load map" +	bool "Symbols in load map"  	default n  	depends on BUSYBOX_CONFIG_FEATURE_INSMOD_LOAD_MAP  	help @@ -74,16 +60,25 @@ config BUSYBOX_CONFIG_FEATURE_INSMOD_LOAD_MAP_FULL  	  load map.  With this option, -m will also output  	  symbols load map. +config BUSYBOX_CONFIG_RMMOD +	bool "rmmod" +	default y +	help +	  rmmod is used to unload specified modules from the kernel. +  config BUSYBOX_CONFIG_LSMOD  	bool "lsmod"  	default y  	help  	  lsmod is used to display a list of loaded modules. -config BUSYBOX_CONFIG_FEATURE_QUERY_MODULE_INTERFACE -	bool -	default y -	depends on BUSYBOX_CONFIG_FEATURE_2_4_MODULES && !CONFIG_FEATURE_2_6_MODULES +config BUSYBOX_CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT +	bool "lsmod pretty output for 2.6.x Linux kernels " +	default n +	depends on BUSYBOX_CONFIG_LSMOD +	help +	  This option makes output format of lsmod adjusted to +	  the format of module-init-tools for Linux kernel 2.6.  config BUSYBOX_CONFIG_MODPROBE  	bool "modprobe" @@ -92,14 +87,31 @@ config BUSYBOX_CONFIG_MODPROBE  	  Handle the loading of modules, and their dependancies on a high  	  level. -config BUSYBOX_CONFIG_RMMOD -	bool "rmmod" -	default y +	  Note that in the state, modprobe does not understand multiple +	  module options from the configuration file. See option below. + +config BUSYBOX_CONFIG_FEATURE_MODPROBE_MULTIPLE_OPTIONS +	bool "Multiple options parsing" +	default n +	depends on BUSYBOX_CONFIG_MODPROBE  	help -	  rmmod is used to unload specified modules from the kernel. +	  Allow modprobe to understand more than one option to pass to +	  modules. + +	  This is a WIP, while waiting for a common argument parsing +	  common amongst all BB applets (shell, modprobe, etc...) and +	  adds around 600 bytes on x86, 700 bytes on ARM. The code is +	  biggish and uggly, but just works. + +	  Saying Y here is not a bad idea if you're not that short +	  on storage capacity. + +comment "Options common to multiple modutils" +	depends on BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_RMMOD || BUSYBOX_CONFIG_MODPROBE || BUSYBOX_CONFIG_LSMOD  config BUSYBOX_CONFIG_FEATURE_CHECK_TAINTED_MODULE -	bool "Support tainted module checking with new kernels" +	# Simulate indentation +	bool "  Support tainted module checking with new kernels"  	default n  	depends on BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_LSMOD  	help @@ -108,6 +120,28 @@ config BUSYBOX_CONFIG_FEATURE_CHECK_TAINTED_MODULE  	  support request.  	  This option is required to support GPLONLY modules. +config BUSYBOX_CONFIG_FEATURE_2_4_MODULES +	# Simulate indentation +	bool "  Support version 2.2.x to 2.4.x Linux kernels" +	default y +	depends on BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_RMMOD +	help +	  Support module loading for 2.2.x and 2.4.x Linux kernels. + +config BUSYBOX_CONFIG_FEATURE_2_6_MODULES +	# Simulate indentation +	bool "  Support version 2.6.x Linux kernels" +	default y +	depends on BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_RMMOD || BUSYBOX_CONFIG_MODPROBE +	help +	  Support module loading for newer 2.6.x Linux kernels. + + +config BUSYBOX_CONFIG_FEATURE_QUERY_MODULE_INTERFACE +	bool +	default n +	depends on BUSYBOX_CONFIG_FEATURE_2_4_MODULES && !CONFIG_FEATURE_2_6_MODULES +  endmenu diff --git a/package/busybox/config/networking/Config.in b/package/busybox/config/networking/Config.in index 996afb447..14e6b5f79 100644 --- a/package/busybox/config/networking/Config.in +++ b/package/busybox/config/networking/Config.in @@ -18,6 +18,25 @@ config BUSYBOX_CONFIG_ARPING  	help  	  Ping hosts by ARP packets +config BUSYBOX_CONFIG_DNSD +	bool "dnsd" +	default n +	help +	  Small and static DNS server deamon.  + +config BUSYBOX_CONFIG_ETHER_WAKE +	bool "ether-wake" +	default n +	help +	  Send a magic packet to wake up sleeping machines. + +config BUSYBOX_CONFIG_FAKEIDENTD +	bool "fakeidentd" +	default n +	help +	  fakeidentd listens to the ident port and returns a set fake +	  value whatever it gets. +  config BUSYBOX_CONFIG_FTPGET  	bool "ftpget"  	default n @@ -66,7 +85,6 @@ config BUSYBOX_CONFIG_FEATURE_HTTPD_AUTH_MD5  	  Enables basic per url authentication from /etc/httpd.conf  	  using md5 passwords. -  if !CONFIG_FEATURE_HTTPD_USAGE_FROM_INETD_ONLY  config BUSYBOX_CONFIG_FEATURE_HTTPD_RELOAD_CONFIG_SIGHUP  	bool "  Support reloading the global config file using hup signal" @@ -101,7 +119,18 @@ config BUSYBOX_CONFIG_FEATURE_HTTPD_CGI  	depends on BUSYBOX_CONFIG_HTTPD  	help  	  This option allows scripts and executables to be invoked -  	  when specific urls are requested. +	  when specific urls are requested. + +config BUSYBOX_CONFIG_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR +	bool "  Enable support for running scripts through an interpreter" +	default n +	depends on BUSYBOX_CONFIG_FEATURE_HTTPD_CGI +	help +	  This option enables support for running scripts through an  +	  interpreter. Turn this on, if you want PHP scripts to work  +	  properly. You need to supply an addition line in your httpd  +	  config file: +	  *.php:/path/to/your/php  config BUSYBOX_CONFIG_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV  	bool "  Support the REMOTE_PORT environment variable for CGI" @@ -171,6 +200,7 @@ config BUSYBOX_CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS  config BUSYBOX_CONFIG_IFUPDOWN  	bool "ifupdown"  	default n +	select BUSYBOX_CONFIG_RUN_PARTS  	help  	  Activate or deactivate the specified interfaces.  This applet makes  	  use of either "ifconfig" and "route" or the "ip" command to actually @@ -291,6 +321,13 @@ config BUSYBOX_CONFIG_FEATURE_INETD_SUPPORT_BILTIN_CHARGEN  	help  	  Familiar character generator internal inetd service +config BUSYBOX_CONFIG_FEATURE_INETD_RPC +	bool "  Support RPC services" +	default n +	depends on BUSYBOX_CONFIG_INETD +	help +	  Suuport Sun-RPC based services +  config BUSYBOX_CONFIG_IP  	bool "ip" @@ -406,7 +443,7 @@ config BUSYBOX_CONFIG_NAMEIF  	  File fields are separated by space or tab.  	  File format:  	  # Comment -	  new_interface_name	XX:XX:XX:XX:XX:XX +	  new_interface_name    XX:XX:XX:XX:XX:XX  config BUSYBOX_CONFIG_NC  	bool "nc" @@ -421,6 +458,14 @@ config BUSYBOX_CONFIG_NETMSG  	help  	  simple program for sending udp broadcast messages +config BUSYBOX_CONFIG_NC_GAPING_SECURITY_HOLE +	bool "gaping security hole" +	default n +	depends on BUSYBOX_CONFIG_NC +	help +	  Add support for executing a program after making or receiving a +	  successful connection (-e option). +  config BUSYBOX_CONFIG_NETSTAT  	bool "netstat"  	default y @@ -498,7 +543,6 @@ config BUSYBOX_CONFIG_FEATURE_TELNET_AUTOLOGIN  config BUSYBOX_CONFIG_TELNETD  	bool "telnetd"  	default y -	#select BUSYBOX_CONFIG_LOGIN  	help  	  A daemon for the TELNET protocol, allowing you to log onto the host  	  running the daemon.  Please keep in mind that the TELNET protocol @@ -600,6 +644,22 @@ config BUSYBOX_CONFIG_FEATURE_TRACEROUTE_VERBOSE  	  Add some verbosity to traceroute.  This includes amongst other things  	  hostnames and ICMP response types. +config BUSYBOX_CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE +	bool "  Enable loose source route" +	default n +	depends on BUSYBOX_CONFIG_TRACEROUTE +	help +	  Add option to specify a loose source route gateway +	  (8 maximum). + +config BUSYBOX_CONFIG_FEATURE_TRACEROUTE_USE_ICMP +	bool "  Use ICMP instead of UDP" +	default n +	depends on BUSYBOX_CONFIG_TRACEROUTE +	help +	  Add feature to allow for ICMP ECHO instead of UDP datagrams. + +  config BUSYBOX_CONFIG_VCONFIG  	bool "vconfig"  	default y @@ -636,5 +696,16 @@ config BUSYBOX_CONFIG_FEATURE_WGET_IP6_LITERAL  source package/busybox/config/networking/udhcp/Config.in +config BUSYBOX_CONFIG_ZCIP +	bool "zcip" +	default n +	help +	  ZCIP provides ZeroConf IPv4 address selection, according to RFC 3927. +	  It's a daemon that allocates and defends a dynamically assigned +	  address on the 169.254/16 network, requiring no system administrator. + +	  See http://www.zeroconf.org for further details, and "zcip.script" +	  in the busybox examples. +  endmenu diff --git a/package/busybox/config/procps/Config.in b/package/busybox/config/procps/Config.in index 85328564a..b94632b46 100644 --- a/package/busybox/config/procps/Config.in +++ b/package/busybox/config/procps/Config.in @@ -13,6 +13,14 @@ config BUSYBOX_CONFIG_FREE  	  memory in the system, as well as the buffers used by the kernel.  	  The shared memory column should be ignored; it is obsolete. +config BUSYBOX_CONFIG_FUSER +	bool "fuser" +	default n +	help +	  fuser lists all PIDs (Process IDs) that currently have a given +	  file open.  fuser can also list all PIDs that have a given network +	  (TCP or UDP) port open. +  config BUSYBOX_CONFIG_KILL  	bool "kill"  	default y @@ -42,12 +50,37 @@ config BUSYBOX_CONFIG_PIDOF  	  Pidof finds the process id's (pids) of the named programs. It prints  	  those id's on the standard output. +config BUSYBOX_CONFIG_FEATURE_PIDOF_SINGLE +	bool "  Enable argument for single shot (-s)" +	default n +	depends on BUSYBOX_CONFIG_PIDOF +	help +	  Support argument '-s' for returning only the first pid found. + +config BUSYBOX_CONFIG_FEATURE_PIDOF_OMIT +	bool "  Enable argument for omitting pids (-o)" +	default n +	depends on BUSYBOX_CONFIG_PIDOF +	help +	  Support argument '-o' for omitting the given pids in output. +	  The special pid %PPID can be used to name the parent process +	  of the pidof, in other words the calling shell or shell script. +  config BUSYBOX_CONFIG_PS  	bool "ps"  	default y  	help  	  ps gives a snapshot of the current processes. +config BUSYBOX_CONFIG_FEATURE_PS_WIDE +	bool "  Enable argument for wide output (-w)" +	default n +	depends on BUSYBOX_CONFIG_PS +	help +	  Support argument 'w' for wide output. +	  If given once, 132 chars are printed and given more than +	  one, the length is unlimited. +  config BUSYBOX_CONFIG_RENICE  	bool "renice"  	default n @@ -55,6 +88,12 @@ config BUSYBOX_CONFIG_RENICE  	  Renice alters the scheduling priority of one or more running  	  processes. +config BUSYBOX_CONFIG_BB_SYSCTL +	bool "sysctl" +	default y +	help +	  Configure kernel parameters at runtime. +  config BUSYBOX_CONFIG_TOP  	bool "top"  	default y @@ -62,8 +101,8 @@ config BUSYBOX_CONFIG_TOP  	  The top program provides a dynamic real-time view of a running  	  system. -config BUSYBOX_FEATURE_CPU_USAGE_PERCENTAGE -	bool +config BUSYBOX_CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE +	bool "  Support showing CPU usage percentage (add 2k bytes)"  	default y  	depends on BUSYBOX_CONFIG_TOP  	help @@ -77,11 +116,6 @@ config BUSYBOX_CONFIG_UPTIME  	  the system has been running, how many users are currently logged  	  on, and the system load averages for the past 1, 5, and 15 minutes. -config BUSYBOX_CONFIG_BB_SYSCTL -	bool "sysctl" -	default y -	help -	  sysctl - configure kernel parameters at runtime  endmenu diff --git a/package/busybox/config/shell/Config.in b/package/busybox/config/shell/Config.in index 6ac4f6971..b9a1b4d7a 100644 --- a/package/busybox/config/shell/Config.in +++ b/package/busybox/config/shell/Config.in @@ -3,7 +3,7 @@  # see scripts/kbuild/config-language.txt.  # -menu "Another Bourne-like Shell" +menu "Shells"  choice  	prompt "Choose your default shell" @@ -36,6 +36,7 @@ endchoice  config BUSYBOX_CONFIG_ASH  	bool "ash"  	default y +	select BUSYBOX_CONFIG_TEST  	help  	  Tha 'ash' shell adds about 60k in the default configuration and is  	  the most complete and most pedantically correct shell included with @@ -53,6 +54,23 @@ config BUSYBOX_CONFIG_ASH_JOB_CONTROL  	help  	  Enable job control in the ash shell. +config BUSYBOX_CONFIG_ASH_READ_NCHARS +	bool "  Enable 'read -n N' and 'read -s' support" +	default n +	depends on BUSYBOX_CONFIG_ASH +	help +	  'read -n N' will return a value after N characters have been read. +	  'read -s' will read without echoing the user's input. + +config BUSYBOX_CONFIG_ASH_READ_TIMEOUT +	bool "  Enable 'read -t S' support." +	default y +	depends on BUSYBOX_CONFIG_ASH +	help +	  'read -t S' will return a value after S seconds have passed. +	  This implementation will allow fractional seconds, expressed +	  as a decimal fraction, e.g. 'read -t 2.5 foo'. +  config BUSYBOX_CONFIG_ASH_ALIAS  	bool "  Enable alias support"  	default y @@ -92,6 +110,21 @@ config BUSYBOX_CONFIG_ASH_CMDCMD  	  you to run the specified command with the specified arguments,  	  even when there is an ash builtin command with the same name. +config BUSYBOX_CONFIG_ASH_BUILTIN_ECHO +	bool "  Enable builtin version of 'echo'" +	default y +	depends on BUSYBOX_CONFIG_ASH +	help +	  Enable support for echo, built in to ash. + +# this entry also appears in coreutils/Config.in, next to the echo applet +config BUSYBOX_CONFIG_FEATURE_FANCY_ECHO +	bool "  Enable echo options (-n and -e)" +	default y +	depends on BUSYBOX_CONFIG_ASH_BUILTIN_ECHO +	help +	  This adds options (-n and -e) to echo. +  config BUSYBOX_CONFIG_ASH_MAIL  	bool "  Check for new mail on interactive shells"  	default n @@ -104,7 +137,7 @@ config BUSYBOX_CONFIG_ASH_OPTIMIZE_FOR_SIZE  	default y  	depends on BUSYBOX_CONFIG_ASH  	help -	  Compile ash for reduced size at price of speed. +	  Compile ash for reduced size at the price of speed.  config BUSYBOX_CONFIG_ASH_RANDOM_SUPPORT  	bool "  Enable pseudorandom generator and variable $RANDOM" @@ -117,9 +150,21 @@ config BUSYBOX_CONFIG_ASH_RANDOM_SUPPORT  	  After "unset RANDOM" then generator will switch off and this  	  variable will no longer have special treatment. +config BUSYBOX_CONFIG_ASH_EXPAND_PRMT +	bool "  Expand prompt string" +	default n +	depends on BUSYBOX_CONFIG_ASH +	help +	  "PS#" may be contain volatile content, such as backquote commands. +	  This option recreates the prompt string from the environment +	  variable each time it is displayed. +  config BUSYBOX_CONFIG_HUSH  	bool "hush"  	default n +	select BUSYBOX_CONFIG_TRUE +	select BUSYBOX_CONFIG_FALSE +	select BUSYBOX_CONFIG_TEST  	help  	  hush is a very small shell (just 18k) and it has fairly complete  	  Bourne shell grammar.  It even handles all the normal flow control @@ -134,6 +179,9 @@ config BUSYBOX_CONFIG_HUSH  config BUSYBOX_CONFIG_LASH  	bool "lash"  	default n +	select BUSYBOX_CONFIG_TRUE +	select BUSYBOX_CONFIG_FALSE +	select BUSYBOX_CONFIG_TEST  	help  	  lash is the very smallest shell (adds just 10k) and it is quite  	  usable as a command prompt, but it is not suitable for any but the @@ -146,6 +194,9 @@ config BUSYBOX_CONFIG_LASH  config BUSYBOX_CONFIG_MSH  	bool "msh"  	default n +	select BUSYBOX_CONFIG_TRUE +	select BUSYBOX_CONFIG_FALSE +	select BUSYBOX_CONFIG_TEST  	help  	  The minix shell (adds just 30k) is quite complete and handles things  	  like for/do/done, case/esac and all the things you expect a Bourne @@ -175,7 +226,7 @@ config BUSYBOX_CONFIG_FEATURE_SH_STANDALONE_SHELL  	  busybox to use the ifconfig busybox applet.  Specifying the fully  	  qualified executable name, such as '/sbin/ifconfig' will still  	  execute the /sbin/ifconfig executable on the filesystem.  This option -	  is generally used when creating a staticly linked version of busybox +	  is generally used when creating a statically linked version of busybox  	  for use as a rescue shell, in the event that you screw up your system.  	  Note that when using this option, the shell will attempt to directly @@ -190,6 +241,14 @@ config BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING  	help  	  Enable command editing in shell. +config BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING_VI +	bool "vi-style line editing commands" +	default n +	depends on BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING +	help +	  Enable vi-style line editing in the shell.  This mode can be +	  turned on and off with "set -o vi" and "set +o vi". +  config BUSYBOX_CONFIG_FEATURE_COMMAND_HISTORY  	int "history size"  	default 15 diff --git a/package/busybox/config/util-linux/Config.in b/package/busybox/config/util-linux/Config.in index af4735857..474ef02f0 100644 --- a/package/busybox/config/util-linux/Config.in +++ b/package/busybox/config/util-linux/Config.in @@ -5,7 +5,6 @@  menu "Linux System Utilities" -  config BUSYBOX_CONFIG_DMESG  	bool "dmesg"  	default y @@ -27,7 +26,6 @@ config BUSYBOX_CONFIG_FBSET  	  interface to access a graphics display.  Enable this option  	  if you wish to enable the 'fbset' utility. -  config BUSYBOX_CONFIG_FEATURE_FBSET_FANCY  	bool "  Turn on extra fbset options"  	default n @@ -210,6 +208,35 @@ config BUSYBOX_CONFIG_FEATURE_HWCLOCK_LONGOPTIONS  	  are overly fond of its long options, such as --hctosys, --utc, etc)  	  then enable this option. +config BUSYBOX_CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS +	bool "  Use FHS /var/lib/hwclock/adjtime" +	default n +	depends on BUSYBOX_CONFIG_HWCLOCK +	help +	  Starting with FHS 2.3, the adjtime state file is supposed to exist +	  at /var/lib/hwclock/adjtime instead of /etc/adjtime.  If you wish +	  to use the FHS behavior, answer Y here, otherwise answer N for the +	  classic /etc/adjtime path. + +	  http://www.pathname.com/fhs/pub/fhs-2.3.html#VARLIBHWCLOCKSTATEDIRECTORYFORHWCLO + +config BUSYBOX_CONFIG_IPCRM +	bool "ipcrm" +	default n +	select BUSYBOX_CONFIG_FEATURE_SUID +	help +	  The ipcrm utility allows the removal of System V interprocess +	  communication (IPC) objects and the associated data structures +	  from the system. + +config BUSYBOX_CONFIG_IPCS +	bool "ipcs" +	default n +	select BUSYBOX_CONFIG_FEATURE_SUID +	help +	  The ipcs utility is used to provide information on the currently +	  allocated System V interprocess (IPC) objects in the system. +  config BUSYBOX_CONFIG_LOSETUP  	bool "losetup"  	default n @@ -218,6 +245,36 @@ config BUSYBOX_CONFIG_LOSETUP  	  file or block device, and to query the status of a loop device.  This  	  version does not currently support enabling data encryption. +config BUSYBOX_CONFIG_MDEV +	bool "mdev" +	default n +	help +	  mdev is a mini-udev implementation: call it with -s to populate +	  /dev from /sys, then "echo /sbin/mdev > /proc/sys/kernel/hotplug" to +	  have it handle hotplug events afterwards.  Device names are taken +	  from sysfs. + +config BUSYBOX_CONFIG_FEATURE_MDEV_CONF +	bool "  Support /etc/mdev.conf" +	default n +	depends on BUSYBOX_CONFIG_MDEV +	help +	  The mdev config file contains lines that look like: + +	    hd[a-z][0-9]* 0:3 660 + +	  That's device name (with regex match), uid:gid, and permissions. + +	  Optionally, that can be followed (on the same line) by an asterisk +	  and a command line to run after creating the corresponding device(s), +	  ala: + +	    hdc root:cdrom 660  *ln -s hdc cdrom + +	  Config file parsing stops on the first matching line.  If no config +	  entry is matched, devices are created with default 0:0 660.  (Make +	  the last line match .* to override this.) +  config BUSYBOX_CONFIG_MKSWAP  	bool "mkswap"  	default n @@ -252,6 +309,24 @@ config BUSYBOX_CONFIG_FEATURE_USE_TERMIOS  	  will be unable to determine the current screen size, and will be  	  unable to move the cursor. +config BUSYBOX_CONFIG_MOUNT +	bool "mount" +	default y +	help +	  All files and filesystems in Unix are arranged into one big directory +	  tree.  The 'mount' utility is used to graft a filesystem onto a +	  particular part of the tree.  A filesystem can either live on a block +	  device, or it can be accessible over the network, as is the case with +	  NFS filesystems.  Most people using BusyBox will also want to enable +	  the 'mount' utility. + +config BUSYBOX_CONFIG_FEATURE_MOUNT_NFS +	bool "  Support mounting NFS file systems" +	default y +	depends on BUSYBOX_CONFIG_MOUNT +	help +	 Enable mounting of NFS file systems. +  config BUSYBOX_CONFIG_PIVOT_ROOT  	bool "pivot_root"  	default y @@ -261,6 +336,9 @@ config BUSYBOX_CONFIG_PIVOT_ROOT  	  of wild and crazy things with your Linux system and is far more  	  powerful than 'chroot'. +	  Note: This is for initrd in linux 2.4.  Under initramfs (introduced +	  in linux 2.6) use switch_root instead. +  config BUSYBOX_CONFIG_RDATE  	bool "rdate"  	default y @@ -270,6 +348,21 @@ config BUSYBOX_CONFIG_RDATE  	  the RFC868 protocol, which is built into the inetd daemon on most  	  systems. +config BUSYBOX_CONFIG_READPROFILE +	bool "readprofile" +	default n +	help +	  This allows you to parse /proc/profile for basic profiling. + +config BUSYBOX_CONFIG_SETARCH +	bool "setarch" +	default n +	help +	  The linux32 utility is used to create a 32bit environment for the +	  specified program (usually a shell).  It only makes sense to have +	  this util on a system that supports both 64bit and 32bit userland +	  (like amd64/x86, ppc64/ppc, sparc64/sparc, etc...). +  config BUSYBOX_CONFIG_SWAPONOFF  	bool "swaponoff"  	default n @@ -281,23 +374,24 @@ config BUSYBOX_CONFIG_SWAPONOFF  	  space.  If you are not using any swap space, you can leave this  	  option disabled. -config BUSYBOX_CONFIG_MOUNT -	bool "mount" +config BUSYBOX_CONFIG_SWITCH_ROOT +	bool "switch_root"  	default y  	help -	  All files and filesystems in Unix are arranged into one big directory -	  tree.  The 'mount' utility is used to graft a filesystem onto a -	  particular part of the tree.  A filesystem can either live on a block -	  device, or it can be accessible over the network, as is the case with -	  NFS filesystems.  Most people using BusyBox will also want to enable -	  the 'mount' utility. +	  The switch_root utility is used from initramfs to select a new +	  root device.  Under initramfs, you have to use this instead of +	  pivot_root.  (Stop reading here if you don't care why.) -config BUSYBOX_FEATURE_MOUNT_NFS -	bool "  Support mounting NFS file systems" -	default y -	depends on BUSYBOX_CONFIG_MOUNT -	help -	 Enable mounting of NFS file systems. +	  Booting with initramfs extracts a gzipped cpio archive into rootfs +	  (which is a variant of ramfs/tmpfs).  Because rootfs can't be moved +	  or unmounted*, pivot_root will not work from initramfs.  Instead, +	  switch_root deletes everything out of rootfs (including itself), +	  does a mount --move that overmounts rootfs with the new root, and +	  then execs the specified init program. + +	  * Because the Linux kernel uses rootfs internally as the starting +	  and ending point for searching through the kernel's doubly linked +	  list of active mount points.  That's why.  config BUSYBOX_CONFIG_UMOUNT  	bool "umount" @@ -308,50 +402,50 @@ config BUSYBOX_CONFIG_UMOUNT  	  the tool to use.  If you enabled the 'mount' utility, you almost certainly  	  also want to enable 'umount'. -config BUSYBOX_CONFIG_FEATURE_MOUNT_FORCE -	bool "  Support forced filesystem unmounting" +config BUSYBOX_CONFIG_FEATURE_UMOUNT_ALL +	bool "  umount -a option"  	default y  	depends on BUSYBOX_CONFIG_UMOUNT  	help -	  This allows you to _force_ a filesystem to be umounted.  This is generally -	  only useful when you want to get rid of an unreachable NFS system. +	  Support -a option to unmount all currently mounted filesystems.  comment "Common options for mount/umount"  	depends on BUSYBOX_CONFIG_MOUNT || BUSYBOX_CONFIG_UMOUNT  config BUSYBOX_CONFIG_FEATURE_MOUNT_LOOP -	bool "  Support for loop devices" +	bool "  Support loopback mounts"  	default y  	depends on BUSYBOX_CONFIG_MOUNT || BUSYBOX_CONFIG_UMOUNT  	help -	  Enabling this feature allows mount to use the '-o' loop options, -	  which lets you loop mount files.  Mount will automagically setup and -	  free the necessary loop devices so you do not need to mess with the -	  'losetup' utility unless you really want to.  This is really -	  only useful if you plan to loop mount files. +	  Enabling this feature allows automatic mounting of files (containing +	  filesystem images) via the linux kernel's loopback devices.  The mount +	  command will detect you are trying to mount a file instead of a block +	  device, and transparently associate the file with a loopback device. +	  The umount command will also free that loopback device. + +	  You can still use the 'losetup' utility (to manually associate files +          with loop devices) if you need to do something advanced, such as +	  specify an offset or cryptographic options to the loopback device. +	  (If you don't want umount to free the loop device, use "umount -D".)  config BUSYBOX_CONFIG_FEATURE_MTAB_SUPPORT -	bool "  Support for a real /etc/mtab (instead of /proc/mounts)" +	bool "  Support for the old /etc/mtab file"  	default n  	depends on BUSYBOX_CONFIG_MOUNT || BUSYBOX_CONFIG_UMOUNT  	help -	  If your root filesystem is writable and you wish to have the 'mount' -	  utility create an mtab file listing the filesystems which have been -	  mounted then you should enable this option.  Most people that use -	  BusyBox have a read-only root filesystem, so they will leave this -	  option disabled and BusyBox will use the /proc/mounts file. - -config BUSYBOX_CONFIG_FEATURE_MTAB_FILENAME -	string "  mtab file location" -	default n -	depends on BUSYBOX_CONFIG_FEATURE_MTAB_SUPPORT -	help -	  Some people have a read only root filesystem, but they also wish to -	  have the 'mount' utility create an mtab file listing the filesystems -	  which have been mounted.  This option allows you to specify an alternative -	  location for the mtab file, such as /var/mtab, or /tmp/mtab.  The default -	  value is /etc/mtab, which is where this file is located on most desktop -	  Linux systems. +	  Historically, Unix systems kept track of the currently mounted +	  partitions in the file "/etc/mtab".  These days, the kernel exports +	  the list of currently mounted partitions in "/proc/mounts", rendering +	  the old mtab file obsolete.  (In modern systems, /etc/mtab should be +	  a symlink to /proc/mounts.) + +	  The only reason to have mount maintain an /etc/mtab file itself is if +	  your stripped-down embedded system does not have a /proc directory. +	  If you must use this, keep in mind it's inherently brittle (for +	  example a mount under chroot won't update it), can't handle modern +	  features like separate per-process filesystem namespaces, requires +	  that your /etc directory be writeable, tends to get easily confused +	  by --bind or --move mounts, and so on.  (In brief: avoid.)  endmenu | 
