diff options
Diffstat (limited to 'package/busybox/config/Config.in')
-rw-r--r-- | package/busybox/config/Config.in | 418 |
1 files changed, 216 insertions, 202 deletions
diff --git a/package/busybox/config/Config.in b/package/busybox/config/Config.in index 0426f7288..6da769cc0 100644 --- a/package/busybox/config/Config.in +++ b/package/busybox/config/Config.in @@ -30,18 +30,6 @@ config BUSYBOX_EXTRA_COMPAT some GNU extensions in libc. You probably only need this option if you plan to run busybox on desktop. -config BUSYBOX_FEATURE_ASSUME_UNICODE - bool "Assume that 1:1 char/glyph correspondence is not true" - default n - help - This makes various applets aware that one byte is not - one character on screen. - - Busybox aims to eventually work correctly with Unicode displays. - Any older encodings are not guaranteed to work. - Probably by the time when busybox will be fully Unicode-clean, - other encodings will be mainly of historic interest. - choice prompt "Buffer allocation policy" default FEATURE_BUFFERS_USE_MALLOC @@ -77,7 +65,7 @@ config BUSYBOX_SHOW_USAGE config BUSYBOX_FEATURE_VERBOSE_USAGE bool "Show verbose applet usage messages" - default y + default n select BUSYBOX_SHOW_USAGE help All BusyBox applets will show more verbose help messages when @@ -114,7 +102,29 @@ config BUSYBOX_LOCALE_SUPPORT Enable this if your system has locale support and you would like busybox to support locale settings. -config BUSYBOX_GETOPT_LONG +config BUSYBOX_FEATURE_ASSUME_UNICODE + bool "Support Unicode" + default n + help + This makes various applets aware that one byte is not + one character on screen. + + Busybox aims to eventually work correctly with Unicode displays. + Any older encodings are not guaranteed to work. + Probably by the time when busybox will be fully Unicode-clean, + other encodings will be mainly of historic interest. + +config BUSYBOX_FEATURE_CHECK_UNICODE_IN_ENV + bool "Check $LANG environment variable" + default y + depends on BUSYBOX_FEATURE_ASSUME_UNICODE && !BUSYBOX_LOCALE_SUPPORT + help + With this option on, Unicode support is activated + only if LANG variable has the value of the form "xxxx.utf8" + + Otherwise, Unicode support will be always enabled and active. + +config BUSYBOX_LONG_OPTS bool "Support for --long-options" default y help @@ -131,17 +141,17 @@ config BUSYBOX_FEATURE_DEVPTS /dev/ttyp<number> will be used. To use this option, you should have devpts mounted. -#config BUSYBOX_FEATURE_CLEAN_UP -# bool "Clean up all memory before exiting (usually not needed)" -# default n -# help -# 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_FEATURE_CLEAN_UP + bool "Clean up all memory before exiting (usually not needed)" + default n + help + 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_FEATURE_PIDFILE bool "Support writing pidfiles" @@ -152,7 +162,7 @@ config BUSYBOX_FEATURE_PIDFILE config BUSYBOX_FEATURE_SUID bool "Support for SUID/SGID handling" - default y + default n help With this option you can install the busybox binary belonging to root with the suid bit set, and it will automatically drop @@ -167,91 +177,91 @@ config BUSYBOX_FEATURE_SUID crontab, dnsd, findfs, ipcrm, ipcs, login, passwd, ping, su, traceroute, vlock. -#config BUSYBOX_FEATURE_SUID_CONFIG -# bool "Runtime SUID/SGID configuration via /etc/busybox.conf" -# default n if FEATURE_SUID -# depends on BUSYBOX_FEATURE_SUID -# help -# 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>) -# -# 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 BUSYBOX_FEATURE_SUID_CONFIG_QUIET -# bool "Suppress warning message if /etc/busybox.conf is not readable" -# default y -# depends on BUSYBOX_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 BUSYBOX_SELINUX -# bool "Support NSA Security Enhanced Linux" -# default n -# help -# 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 SELinux 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. 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'. - -#config BUSYBOX_FEATURE_PREFER_APPLETS -## bool "exec prefers applets" -# default n -# help -# This is an experimental option which directs applets about to -# call 'exec' to try and find an applicable busybox applet before -# searching the PATH. This is typically done by exec'ing -# /proc/self/exe. -# This may affect shell, find -exec, xargs and similar applets. -# They will use applets even if /bin/<applet> -> busybox link -# is missing (or is not a link to busybox). However, this causes -# problems in chroot jails without mounted /proc and with ps/top -# (command name can be shown as 'exe' for applets started this way). - -#config BUSYBOX_BUSYBOX_EXEC_PATH -# string "Path to BusyBox executable" -# default "/proc/self/exe" -# help -# When Busybox applets need to run other busybox applets, BusyBox -# sometimes needs to exec() itself. When the /proc filesystem is -# mounted, /proc/self/exe always points to the currently running -# executable. If you haven't got /proc, set this to wherever you -# want to run BusyBox from. +config BUSYBOX_FEATURE_SUID_CONFIG + bool "Runtime SUID/SGID configuration via /etc/busybox.conf" + default n if FEATURE_SUID + depends on BUSYBOX_FEATURE_SUID + help + 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>) + + 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 BUSYBOX_FEATURE_SUID_CONFIG_QUIET + bool "Suppress warning message if /etc/busybox.conf is not readable" + default y + depends on BUSYBOX_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 BUSYBOX_SELINUX + bool "Support NSA Security Enhanced Linux" + default n + help + 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 SELinux 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. 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'. + +config BUSYBOX_FEATURE_PREFER_APPLETS + bool "exec prefers applets" + default n + help + This is an experimental option which directs applets about to + call 'exec' to try and find an applicable busybox applet before + searching the PATH. This is typically done by exec'ing + /proc/self/exe. + This may affect shell, find -exec, xargs and similar applets. + They will use applets even if /bin/<applet> -> busybox link + is missing (or is not a link to busybox). However, this causes + problems in chroot jails without mounted /proc and with ps/top + (command name can be shown as 'exe' for applets started this way). + +config BUSYBOX_BUSYBOX_EXEC_PATH + string "Path to BusyBox executable" + default "/proc/self/exe" + help + When Busybox applets need to run other busybox applets, BusyBox + sometimes needs to exec() itself. When the /proc filesystem is + mounted, /proc/self/exe always points to the currently running + executable. If you haven't got /proc, set this to wherever you + want to run BusyBox from. # These are auto-selected by other options @@ -287,39 +297,39 @@ config BUSYBOX_STATIC Most people will leave this set to 'N'. -#config BUSYBOX_PIE -# bool "Build BusyBox as a position independent executable" -# default n -# depends on !BUSYBOX_STATIC -# help -# (TODO: what is it and why/when is it useful?) -# Most people will leave this set to 'N'. -# -#config BUSYBOX_NOMMU -# bool "Force NOMMU build" -# default n -# help -# Busybox tries to detect whether architecture it is being -# built against supports MMU or not. If this detection fails, -# or if you want to build NOMMU version of busybox for testing, -# you may force NOMMU build here. -# -# Most people will leave this set to 'N'. +config BUSYBOX_PIE + bool "Build BusyBox as a position independent executable" + default n + depends on !BUSYBOX_STATIC + help + (TODO: what is it and why/when is it useful?) + Most people will leave this set to 'N'. + +config BUSYBOX_NOMMU + bool "Force NOMMU build" + default n + help + Busybox tries to detect whether architecture it is being + built against supports MMU or not. If this detection fails, + or if you want to build NOMMU version of busybox for testing, + you may force NOMMU build here. + + Most people will leave this set to 'N'. # PIE can be made to work with BUILD_LIBBUSYBOX, but currently # build system does not support that -#config BUSYBOX_BUILD_LIBBUSYBOX -# bool "Build shared libbusybox" -# default n -# depends on !BUSYBOX_FEATURE_PREFER_APPLETS && !BUSYBOX_PIE && !BUSYBOX_STATIC -# help -# Build a shared library libbusybox.so.N.N.N which contains all -# busybox code. -# -# This feature allows every applet to be built as a tiny -# separate executable. Enabling it for "one big busybox binary" -# approach serves no purpose and increases code size. -# You should almost certainly say "no" to this. +config BUSYBOX_BUILD_LIBBUSYBOX + bool "Build shared libbusybox" + default n + depends on !BUSYBOX_FEATURE_PREFER_APPLETS && !BUSYBOX_PIE && !BUSYBOX_STATIC + help + Build a shared library libbusybox.so.N.N.N which contains all + busybox code. + + This feature allows every applet to be built as a tiny + separate executable. Enabling it for "one big busybox binary" + approach serves no purpose and increases code size. + You should almost certainly say "no" to this. ### config FEATURE_FULL_LIBBUSYBOX ### bool "Feature-complete libbusybox" @@ -340,32 +350,32 @@ config BUSYBOX_STATIC ### ### Say 'N' if in doubt. -#config BUSYBOX_FEATURE_INDIVIDUAL -# bool "Produce a binary for each applet, linked against libbusybox" -# default y -# depends on BUSYBOX_BUILD_LIBBUSYBOX -# help -# If your CPU architecture doesn't allow for sharing text/rodata -# sections of running binaries, but allows for runtime dynamic -# libraries, this option will allow you to reduce memory footprint -# when you have many different applets running at once. -# -# If your CPU architecture allows for sharing text/rodata, -# having single binary is more optimal. -# -# Each applet will be a tiny program, dynamically linked -# against libbusybox.so.N.N.N. -# -# You need to have a working dynamic linker. - -#config BUSYBOX_FEATURE_SHARED_BUSYBOX -# bool "Produce additional busybox binary linked against libbusybox" -# default y -# depends on BUSYBOX_BUILD_LIBBUSYBOX -# help -# Build busybox, dynamically linked against libbusybox.so.N.N.N. -# -# You need to have a working dynamic linker. +config BUSYBOX_FEATURE_INDIVIDUAL + bool "Produce a binary for each applet, linked against libbusybox" + default y + depends on BUSYBOX_BUILD_LIBBUSYBOX + help + If your CPU architecture doesn't allow for sharing text/rodata + sections of running binaries, but allows for runtime dynamic + libraries, this option will allow you to reduce memory footprint + when you have many different applets running at once. + + If your CPU architecture allows for sharing text/rodata, + having single binary is more optimal. + + Each applet will be a tiny program, dynamically linked + against libbusybox.so.N.N.N. + + You need to have a working dynamic linker. + +config BUSYBOX_FEATURE_SHARED_BUSYBOX + bool "Produce additional busybox binary linked against libbusybox" + default y + depends on BUSYBOX_BUILD_LIBBUSYBOX + help + Build busybox, dynamically linked against libbusybox.so.N.N.N. + + You need to have a working dynamic linker. ### config BUILD_AT_ONCE ### bool "Compile all sources at once" @@ -411,6 +421,12 @@ config BUSYBOX_CROSS_COMPILER_PREFIX Native builds leave this empty. +config BUSYBOX_EXTRA_CFLAGS + string "Additional CFLAGS" + default "" + help + Additional CFLAGS to pass to the compiler verbatim. + endmenu menu 'Debugging Options' @@ -426,25 +442,24 @@ config BUSYBOX_DEBUG Most people should answer N. -#config BUSYBOX_DEBUG_PESSIMIZE -# bool "Disable compiler optimizations" -# default n -# depends on BUSYBOX_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. - -# triggers problems on cris with __attribute__((packed)) -#config BUSYBOX_WERROR -# bool "Abort compilation on any warning" -# default n -# help -# Selecting this will add -Werror to gcc command line. -# -# Most people should answer N. +config BUSYBOX_DEBUG_PESSIMIZE + bool "Disable compiler optimizations" + default n + depends on BUSYBOX_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. + +config BUSYBOX_WERROR + bool "Abort compilation on any warning" + default n + help + Selecting this will add -Werror to gcc command line. + + Most people should answer N. choice prompt "Additional debugging library" @@ -488,14 +503,14 @@ config BUSYBOX_EFENCE endchoice -#config BUSYBOX_INCLUDE_SUSv2 -# bool "Enable obsolete features removed before SUSv3?" -# default y -# help -# This option will enable backwards compatibility with SuSv2, -# specifically, old-style numeric options ('command -1 <file>') -# will be supported in head, tail, and fold. (Note: should -# affect renice too.) +config BUSYBOX_INCLUDE_SUSv2 + bool "Enable obsolete features removed before SUSv3?" + default y + help + This option will enable backwards compatibility with SuSv2, + specifically, old-style numeric options ('command -1 <file>') + will be supported in head, tail, and fold. (Note: should + affect renice too.) ### config PARSE ### bool "Uniform config file parser debugging applet: parse" @@ -504,12 +519,12 @@ endmenu menu 'Installation Options' -#config BUSYBOX_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. +config BUSYBOX_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" @@ -599,8 +614,7 @@ source package/busybox/config/networking/Config.in source package/busybox/config/printutils/Config.in source package/busybox/config/mailutils/Config.in source package/busybox/config/procps/Config.in -# disable, gcc 4.4.0 problems -#source package/busybox/config/runit/Config.in +source package/busybox/config/runit/Config.in source package/busybox/config/selinux/Config.in source package/busybox/config/shell/Config.in source package/busybox/config/sysklogd/Config.in |