summaryrefslogtreecommitdiff
path: root/Config.in
diff options
context:
space:
mode:
authorRob Landley2006-01-20 17:47:09 +0000
committerRob Landley2006-01-20 17:47:09 +0000
commit7a43bd07e64e6db795d4661321da1cab14d9c4f6 (patch)
tree13fe6950993f732a0cb06a09398a415d3e3bd597 /Config.in
parentc8e41157a2b6486397ded716846c6cd8c8edac8e (diff)
downloadbusybox-7a43bd07e64e6db795d4661321da1cab14d9c4f6.zip
busybox-7a43bd07e64e6db795d4661321da1cab14d9c4f6.tar.gz
Zap sysdeps directory, moving Config.in and defconfig to top of tree.
(Busybox should not be system dependent enough to have different default configurations for different platforms. We're not a kernel.)
Diffstat (limited to 'Config.in')
-rw-r--r--Config.in345
1 files changed, 345 insertions, 0 deletions
diff --git a/Config.in b/Config.in
new file mode 100644
index 0000000..3501ff7
--- /dev/null
+++ b/Config.in
@@ -0,0 +1,345 @@
+#
+# For a description of the syntax of this configuration file,
+# see scripts/kbuild/config-language.txt.
+#
+
+mainmenu "BusyBox Configuration"
+
+config HAVE_DOT_CONFIG
+ bool
+ default y
+
+menu "General Configuration"
+
+choice
+ prompt "Buffer allocation policy"
+ default CONFIG_FEATURE_BUFFERS_USE_MALLOC
+ help
+ There are 3 ways BusyBox can handle buffer allocations:
+ - Use malloc. This costs code size for the call to xmalloc.
+ - Put them on stack. For some very small machines with limited stack
+ space, this can be deadly. For most folks, this works just fine.
+ - Put them in BSS. This works beautifully for computers with a real
+ MMU (and OS support), but wastes runtime RAM for uCLinux. This
+ behavior was the only one available for BusyBox versions 0.48 and
+ earlier.
+
+config CONFIG_FEATURE_BUFFERS_USE_MALLOC
+ bool "Allocate with Malloc"
+
+config CONFIG_FEATURE_BUFFERS_GO_ON_STACK
+ bool "Allocate on the Stack"
+
+config CONFIG_FEATURE_BUFFERS_GO_IN_BSS
+ bool "Allocate in the .bss section"
+
+endchoice
+
+config CONFIG_FEATURE_VERBOSE_USAGE
+ bool "Show verbose applet usage messages"
+ default n
+ 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_INSTALLER
+ bool "Support --install [-s] to install applet links at runtime"
+ default n
+ help
+ Enable 'busybox --install [-s]' support. This will allow you to use
+ busybox at runtime to create hard links or symlinks for all the
+ applets that are compiled into busybox. This feature requires the
+ /proc filesystem.
+
+config CONFIG_LOCALE_SUPPORT
+ bool "Enable locale support (system needs locale for this to work)"
+ default n
+ help
+ 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"
+ default n
+ help
+ Enable if you want BusyBox to work with devfs.
+
+config CONFIG_FEATURE_DEVPTS
+ bool "Use the devpts filesystem for Unix98 PTYs"
+ default y if CONFIG_FEATURE_DEVFS
+ help
+ Enable if you want BusyBox to use Unix98 PTY support. If enabled,
+ 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.
+
+config 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
+ things up manually.
+
+config CONFIG_FEATURE_SUID
+ bool "Support for SUID/SGID handling"
+ default n
+ help
+ Support SUID and SGID binaries.
+
+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:
+
+ <applet> = [Ssx-][Ssx-][x-] (<username>|<uid>).(<groupname>|<gid>)
+
+ An example might help:
+
+ [SUID]
+ su = ssx root.0 # applet su can be run by anyone and runs with euid=0/egid=0
+ su = ssx # exactly the same
+
+ mount = sx- root.disk # applet mount can be run by root and members of group disk
+ # and runs with euid=0
+
+ 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 >.
+
+config CONFIG_FEATURE_SUID_CONFIG_QUIET
+ bool "Suppress warning message if /etc/busybox.conf is not readable"
+ default n
+ depends on CONFIG_FEATURE_SUID_CONFIG
+ help
+ /etc/busybox.conf should be readable by the user needing the SUID, check
+ this option to avoid users to be notified about missing permissions.
+
+config CONFIG_SELINUX
+ 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.
+
+ If you do not have a complete SE Linux Full Userland installed, this
+ stuff will not compile. Go visit
+ http://www.nsa.gov/selinux/index.html
+ to download the necessary stuff to allow busybox to compile with this
+ option enabled.
+
+ Most people will leave this set to 'N'.
+
+endmenu
+
+menu 'Build Options'
+
+config CONFIG_STATIC
+ bool "Build BusyBox as a static binary (no shared libs)"
+ default n
+ help
+ If you want to build a static BusyBox binary, which does not
+ use or require any shared libraries, then enable this option.
+ This can cause BusyBox to be considerably larger, so you should
+ leave this option false unless you have a good reason (i.e.
+ your target platform does not support shared libraries, or
+ you are building an initrd which doesn't need anything but
+ BusyBox, etc).
+
+ Most people will leave this set to 'N'.
+
+config CONFIG_LFS
+ bool "Build with Large File Support (for accessing files > 2 GB)"
+ default n
+ select FDISK_SUPPORT_LARGE_DISKS
+ help
+ If you want to build BusyBox with large file support, then enable
+ this option. This will have no effect if your kernel or your C
+ library lacks large file support for large files. Some of the
+ programs that can benefit from large file support include dd, gzip,
+ cp, mount, tar, and many others. If you want to access files larger
+ than 2 Gigabytes, enable this option. Otherwise, leave it set to 'N'.
+
+config USING_CROSS_COMPILER
+ bool "Do you want to build BusyBox with a Cross Compiler?"
+ default n
+ help
+ Do you want to build BusyBox with a Cross Compiler? If so,
+ then enable this option. Otherwise leave it set to 'N'.
+
+config CROSS_COMPILER_PREFIX
+ string "Cross Compiler prefix"
+ default "/usr/i386-linux-uclibc/bin/i386-uclibc-"
+ depends on USING_CROSS_COMPILER
+ help
+ If you want to build BusyBox with a cross compiler, then you
+ will need to set this to the cross-compiler prefix. For example,
+ if my cross-compiler is /usr/i386-linux-uclibc/bin/i386-uclibc-gcc
+ then I would enter '/usr/i386-linux-uclibc/bin/i386-uclibc-' here,
+ which will ensure the correct compiler is used.
+
+config EXTRA_CFLAGS_OPTIONS
+ string "Any extra CFLAGS options for the compiler?"
+ default ""
+ help
+ Do you want to pass any extra CFLAGS options to the compiler as
+ you build BusyBox? If so, this is the option for you... For example,
+ if you want to add some simple compiler switches (like -march=i686),
+ or check for warnings using -Werror, just those options here.
+
+config CONFIG_FEATURE_SUSv2
+ bool "Enable features that are in SuSv2 but not SuSv3?"
+ default y
+ help
+ This option will enable backwards compatability with SuSv2,
+ specifically, numeric options such as 'head -1 <file>' will be
+ supported.
+
+config CONFIG_FEATURE_SUSv2_OBSOLETE
+ bool "Enable features that are obsolete in SuSv2"
+ depends on CONFIG_FEATURE_SUSv2
+ default y
+ help
+ Disables support for numeric arguments in fold.
+
+endmenu
+
+menu 'Installation Options'
+
+config 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 CONFIG_INSTALL_APPLET_SYMLINKS
+ help
+ Choose how you install applets links.
+
+config 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 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 CONFIG_INSTALL_APPLET_DONT
+ bool
+ prompt "not installed"
+ depends on CONFIG_FEATURE_INSTALLER || 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 PREFIX
+ string "BusyBox installation prefix"
+ default "./_install"
+ help
+ Define your directory to install BusyBox files/subdirs in.
+
+
+
+endmenu
+
+source archival/Config.in
+source coreutils/Config.in
+source console-tools/Config.in
+source debianutils/Config.in
+source e2fsprogs/Config.in
+source editors/Config.in
+source findutils/Config.in
+source init/Config.in
+source loginutils/Config.in
+source miscutils/Config.in
+source modutils/Config.in
+source networking/Config.in
+source procps/Config.in
+source shell/Config.in
+source sysklogd/Config.in
+source util-linux/Config.in
+
+menu 'Debugging Options'
+
+config CONFIG_DEBUG
+ bool "Build BusyBox with Debugging symbols"
+ 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.
+
+ Most people should answer N.
+
+choice
+ prompt "Additional debugging library"
+ default CONFIG_NO_DEBUG_LIB
+ depends on CONFIG_DEBUG
+ help
+ Using an additional debugging library will make BusyBox become
+ considerable larger and will cause it to run more slowly. You
+ should always leave this option disabled for production use.
+
+ dmalloc support:
+ ----------------
+ This enables compiling with dmalloc ( http://dmalloc.com/ )
+ which is an excellent public domain mem leak and malloc problem
+ detector. To enable dmalloc, before running busybox you will
+ want to properly set your environment, for example:
+ export DMALLOC_OPTIONS=debug=0x34f47d83,inter=100,log=logfile
+ The 'debug=' value is generated using the following command
+ dmalloc -p log-stats -p log-non-free -p log-bad-space -p log-elapsed-time \
+ -p check-fence -p check-heap -p check-lists -p check-blank \
+ -p check-funcs -p realloc-copy -p allow-free-null
+
+ Electric-fence support:
+ -----------------------
+ This enables compiling with Electric-fence support. Electric
+ fence is another very useful malloc debugging library which uses
+ your computer's virtual memory hardware to detect illegal memory
+ accesses. This support will make BusyBox be considerable larger
+ and run slower, so you should leave this option disabled unless
+ you are hunting a hard to find memory problem.
+
+
+config CONFIG_NO_DEBUG_LIB
+ bool "None"
+
+config CONFIG_DMALLOC
+ bool "Dmalloc"
+
+config CONFIG_EFENCE
+ bool "Electric-fence"
+
+endchoice
+
+
+endmenu