- spelling
[oweals/busybox.git] / Config.in
index 33f6d9aee3d2d71190e9bed2da4cf8a2b521bc64..85d61652c4419df6c7aecc3cee58ebc7dc7bc754 100644 (file)
--- a/Config.in
+++ b/Config.in
@@ -13,6 +13,22 @@ menu "Busybox Settings"
 
 menu "General Configuration"
 
 
 menu "General Configuration"
 
+config CONFIG_NITPICK
+       bool "See lots more (probably unnecessary) configuration options."
+       default n
+       help
+         Some BusyBox applets have more configuration options than anyone
+         will ever care about.  To avoid drowining people in complexity, most
+         of the applet features that can be set to a sane default value are
+         hidden, unless you hit the above switch.
+
+         This is better than to telling people to edit the busybox source
+         code, but not by much.
+
+         See http://en.wikipedia.org/wiki/Fibber_McGee_and_Molly#The_Closet
+
+         You have been warned.
+
 choice
        prompt "Buffer allocation policy"
        default CONFIG_FEATURE_BUFFERS_USE_MALLOC
 choice
        prompt "Buffer allocation policy"
        default CONFIG_FEATURE_BUFFERS_USE_MALLOC
@@ -37,15 +53,33 @@ config CONFIG_FEATURE_BUFFERS_GO_IN_BSS
 
 endchoice
 
 
 endchoice
 
+config CONFIG_SHOW_USAGE
+       bool "Show terse applet usage messages"
+       default y
+       help
+         All BusyBox applets will show help messages when invoked with
+         wrong arguments. You can turn off printing these terse usage
+         messages if you say no here.
+         This will save you up to 7k.
+
 config CONFIG_FEATURE_VERBOSE_USAGE
        bool "Show verbose applet usage messages"
        default n
 config CONFIG_FEATURE_VERBOSE_USAGE
        bool "Show verbose applet usage messages"
        default n
+       select CONFIG_SHOW_USAGE
        help
          All BusyBox applets will show more verbose help messages when
          busybox is invoked with --help.  This will add a lot of text to the
          busybox binary.  In the default configuration, this will add about
          13k, but it can add much more depending on your configuration.
 
        help
          All BusyBox applets will show more verbose help messages when
          busybox is invoked with --help.  This will add a lot of text to the
          busybox binary.  In the default configuration, this will add about
          13k, but it can add much more depending on your configuration.
 
+config CONFIG_FEATURE_COMPRESS_USAGE
+       bool "Store applet usage messages in compressed form"
+       default y
+       depends on CONFIG_SHOW_USAGE
+       help
+         Store usage messages in compressed form, uncompress them on-the-fly
+         when <applet> --help is called.
+
 config CONFIG_FEATURE_INSTALLER
        bool "Support --install [-s] to install applet links at runtime"
        default n
 config CONFIG_FEATURE_INSTALLER
        bool "Support --install [-s] to install applet links at runtime"
        default n
@@ -62,11 +96,13 @@ config CONFIG_LOCALE_SUPPORT
          Enable this if your system has locale support and you would like
          busybox to support locale settings.
 
          Enable this if your system has locale support and you would like
          busybox to support locale settings.
 
-config CONFIG_FEATURE_DEVFS
-       bool "Support for devfs"
+config CONFIG_GETOPT_LONG
+       bool "Enable support for --long-options"
        default n
        default n
+       depends on !CONFIG_NO_GETOPT_LONG
        help
        help
-         Enable if you want BusyBox to work with devfs.
+         Enable this if you want busybox applets to use the gnu --long-option
+         style, in addition to single character -a -b -c style options.
 
 config CONFIG_FEATURE_DEVPTS
        bool "Use the devpts filesystem for Unix98 PTYs"
 
 config CONFIG_FEATURE_DEVPTS
        bool "Use the devpts filesystem for Unix98 PTYs"
@@ -76,7 +112,7 @@ config CONFIG_FEATURE_DEVPTS
          busybox will use /dev/ptmx for the master side of the pseudoterminal
          and /dev/pts/<number> for the slave side.  Otherwise, BSD style
          /dev/ttyp<number> will be used. To use this option, you should have
          busybox will use /dev/ptmx for the master side of the pseudoterminal
          and /dev/pts/<number> for the slave side.  Otherwise, BSD style
          /dev/ttyp<number> will be used. To use this option, you should have
-         devpts or devfs mounted.
+         devpts mounted.
 
 config CONFIG_FEATURE_CLEAN_UP
        bool "Clean up all memory before exiting (usually not needed)"
 
 config CONFIG_FEATURE_CLEAN_UP
        bool "Clean up all memory before exiting (usually not needed)"
@@ -94,15 +130,25 @@ config CONFIG_FEATURE_SUID
        bool "Support for SUID/SGID handling"
        default n
        help
        bool "Support for SUID/SGID handling"
        default n
        help
-         Support SUID and SGID binaries.
+         With this option you can install the busybox binary belonging
+         to root with the suid bit set, and it'll and it'll automatically drop
+         priviledges for applets that don't need root access.
+
+         If you're really paranoid and don't want to do this, build two
+         busybox binaries with different applets in them (and the appropriate
+         symlinks pointing to each binary), and only set the suid bit on the
+         one that needs it.  The applets currently marked to need the suid bit
+         are login, passwd, su, ping, traceroute, crontab, dnsd, ipcrm, ipcs,
+         and vlock.
 
 config CONFIG_FEATURE_SUID_CONFIG
        bool "Runtime SUID/SGID configuration via /etc/busybox.conf"
        default n if CONFIG_FEATURE_SUID
        depends on CONFIG_FEATURE_SUID
        help
 
 config CONFIG_FEATURE_SUID_CONFIG
        bool "Runtime SUID/SGID configuration via /etc/busybox.conf"
        default n if CONFIG_FEATURE_SUID
        depends on CONFIG_FEATURE_SUID
        help
-         Allow the SUID / SGID state of an applet to be determined runtime by
-         checking /etc/busybox.conf.  The format of this file is as follows:
+         Allow the SUID / SGID state of an applet to be determined at runtime
+         by checking /etc/busybox.conf.  (This is sort of a poor man's sudo.)
+         The format of this file is as follows:
 
          <applet> = [Ssx-][Ssx-][x-] (<username>|<uid>).(<groupname>|<gid>)
 
 
          <applet> = [Ssx-][Ssx-][x-] (<username>|<uid>).(<groupname>|<gid>)
 
@@ -129,7 +175,7 @@ config CONFIG_FEATURE_SUID_CONFIG
 
 config CONFIG_FEATURE_SUID_CONFIG_QUIET
        bool "Suppress warning message if /etc/busybox.conf is not readable"
 
 config CONFIG_FEATURE_SUID_CONFIG_QUIET
        bool "Suppress warning message if /etc/busybox.conf is not readable"
-       default n
+       default y
        depends on CONFIG_FEATURE_SUID_CONFIG
        help
          /etc/busybox.conf should be readable by the user needing the SUID, check
        depends on CONFIG_FEATURE_SUID_CONFIG
        help
          /etc/busybox.conf should be readable by the user needing the SUID, check
@@ -139,14 +185,19 @@ config CONFIG_SELINUX
        bool "Support NSA Security Enhanced Linux"
        default n
        help
        bool "Support NSA Security Enhanced Linux"
        default n
        help
-         Enable support for SE Linux in applets ls, ps, and id.  Also provide
-         the option of compiling in SE Linux applets.
+         Enable support for SELinux in applets ls, ps, and id.  Also provide
+         the option of compiling in SELinux applets.
 
 
-         If you do not have a complete SE Linux Full Userland installed, this
-         stuff will not compile.  Go visit
+         If you do not have a complete SELinux userland installed, this stuff
+         will not compile. Go visit
                http://www.nsa.gov/selinux/index.html
                http://www.nsa.gov/selinux/index.html
-         to download the necessary stuff to allow busybox to compile with this
-         option enabled.
+         to download the necessary stuff to allow busybox to compile with
+         this option enabled. Specifially, libselinux 1.28 or better is
+         directly required by busybox. If the installation is located in a
+         non-standard directory, provide it by invoking make as follows:
+               CFLAGS=-I<libselinux-include-path> \
+               LDFLAGS=-L<libselinux-lib-path> \
+               make
 
          Most people will leave this set to 'N'.
 
 
          Most people will leave this set to 'N'.
 
@@ -265,17 +316,27 @@ endmenu
 menu 'Debugging Options'
 
 config CONFIG_DEBUG
 menu 'Debugging Options'
 
 config CONFIG_DEBUG
-       bool "Build BusyBox with Debugging symbols"
+       bool "Build BusyBox with extra Debugging symbols"
        default n
        help
        default n
        help
-         Say Y here if you wish to compile BusyBox with debugging symbols.
-         This will allow you to use a debugger to examine BusyBox internals
-         while applets are running.  This increases the size of the binary
-         considerably and should only be used when doing development.
-         If you are doing development and want to debug BusyBox, answer Y.
+         Say Y here if you wish to examine BusyBox internals while applets are
+         running.  This increases the size of the binary considerably, and
+         should only be used when doing development.  If you are doing
+         development and want to debug BusyBox, answer Y.
 
          Most people should answer N.
 
 
          Most people should answer N.
 
+config CONFIG_DEBUG_PESSIMIZE
+       bool "Disable compiler optimizations."
+       default n
+       depends on CONFIG_DEBUG
+       help
+         The compiler's optimization of source code can eliminate and reorder
+         code, resulting in an executable that's hard to understand when
+         stepping through it with a debugger.  This switches it off, resulting
+         in a much bigger executable that more closely matches the source
+         code.
+
 choice
        prompt "Additional debugging library"
        default CONFIG_NO_DEBUG_LIB
 choice
        prompt "Additional debugging library"
        default CONFIG_NO_DEBUG_LIB
@@ -318,18 +379,11 @@ config CONFIG_EFENCE
 
 endchoice
 
 
 endchoice
 
-config CONFIG_STRIP_BINARIES
-       bool "Strip busybox objects"
-       default y if !CONFIG_DEBUG
-       default n if CONFIG_DEBUG
-       help
-         Whether or not we strip the busybox binary and such.
-
 config CONFIG_DEBUG_YANK_SUSv2
        bool "Disable obsolete features removed before SUSv3?"
        default y
        help
 config CONFIG_DEBUG_YANK_SUSv2
        bool "Disable obsolete features removed before SUSv3?"
        default y
        help
-         This option will disable backwards compatability with SuSv2,
+         This option will disable backwards compatibility 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.)
          specifically, old-style numeric options ('command -1 <file>')
          will not be supported in head, tail, and fold.  (Note: should
          yank from renice too.)