config BUSYBOX_CONFIG_HAVE_DOT_CONFIG
bool
- default y
+ default BUSYBOX_DEFAULT_HAVE_DOT_CONFIG
menu "Busybox Settings"
config BUSYBOX_CONFIG_DESKTOP
bool "Enable options for full-blown desktop systems"
- default n
+ default BUSYBOX_DEFAULT_DESKTOP
help
Enable options and features which are not essential.
Select this only if you plan to use busybox on full-blown
config BUSYBOX_CONFIG_EXTRA_COMPAT
bool "Provide compatible behavior for rare corner cases (bigger code)"
- default n
+ default BUSYBOX_DEFAULT_EXTRA_COMPAT
help
This option makes grep, sed etc handle rare corner cases
(embedded NUL bytes and such). This makes code bigger and uses
config BUSYBOX_CONFIG_INCLUDE_SUSv2
bool "Enable obsolete features removed before SUSv3"
- default y
+ default BUSYBOX_DEFAULT_INCLUDE_SUSv2
help
This option will enable backwards compatibility with SuSv2,
specifically, old-style numeric options ('command -1 <file>')
config BUSYBOX_CONFIG_USE_PORTABLE_CODE
bool "Avoid using GCC-specific code constructs"
- default n
+ default BUSYBOX_DEFAULT_USE_PORTABLE_CODE
help
Use this option if you are trying to compile busybox with
compiler other than gcc.
config BUSYBOX_CONFIG_PLATFORM_LINUX
bool "Enable Linux-specific applets and features"
- default y
+ default BUSYBOX_DEFAULT_PLATFORM_LINUX
help
For the most part, busybox requires only POSIX compatibility
from the target system, but some applets and features use
endchoice
config BUSYBOX_CONFIG_SHOW_USAGE
- bool "Show terse applet usage messages"
- default y
+ bool "Show applet usage messages"
+ default BUSYBOX_DEFAULT_SHOW_USAGE
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.
+ Enabling this option, BusyBox applets will show terse help messages
+ when invoked with wrong arguments.
+ If you do not want to show any (helpful) usage message when
+ issuing wrong command syntax, you can say 'N' here,
+ saving approximately 7k.
config BUSYBOX_CONFIG_FEATURE_VERBOSE_USAGE
bool "Show verbose applet usage messages"
- default y
+ default BUSYBOX_DEFAULT_FEATURE_VERBOSE_USAGE
depends on BUSYBOX_CONFIG_SHOW_USAGE
help
- All BusyBox applets will show more verbose help messages when
+ All BusyBox applets will show 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 BUSYBOX_CONFIG_FEATURE_COMPRESS_USAGE
bool "Store applet usage messages in compressed form"
- default y
+ default BUSYBOX_DEFAULT_FEATURE_COMPRESS_USAGE
depends on BUSYBOX_CONFIG_SHOW_USAGE
help
- Store usage messages in compressed form, uncompress them on-the-fly
- when <applet> --help is called.
+ Store usage messages in .bz compressed form, uncompress them
+ on-the-fly when <applet> --help is called.
If you have a really tiny busybox with few applets enabled (and
bunzip2 isn't one of them), the overhead of the decompressor might
config BUSYBOX_CONFIG_FEATURE_INSTALLER
bool "Support --install [-s] to install applet links at runtime"
- default n
+ default BUSYBOX_DEFAULT_FEATURE_INSTALLER
help
Enable 'busybox --install [-s]' support. This will allow you to use
busybox at runtime to create hard links or symlinks for all the
config BUSYBOX_CONFIG_INSTALL_NO_USR
bool "Don't use /usr"
- default n
+ default BUSYBOX_DEFAULT_INSTALL_NO_USR
help
Disable use of /usr. busybox --install and "make install"
will install applets only to /bin and /sbin,
config BUSYBOX_CONFIG_LOCALE_SUPPORT
bool "Enable locale support (system needs locale for this to work)"
- default n
+ default BUSYBOX_DEFAULT_LOCALE_SUPPORT
help
Enable this if your system has locale support and you would like
busybox to support locale settings.
config BUSYBOX_CONFIG_UNICODE_SUPPORT
bool "Support Unicode"
- default n
+ default BUSYBOX_DEFAULT_UNICODE_SUPPORT
help
This makes various applets aware that one byte is not
one character on screen.
config BUSYBOX_CONFIG_UNICODE_USING_LOCALE
bool "Use libc routines for Unicode (else uses internal ones)"
- default n
+ default BUSYBOX_DEFAULT_UNICODE_USING_LOCALE
depends on BUSYBOX_CONFIG_UNICODE_SUPPORT && BUSYBOX_CONFIG_LOCALE_SUPPORT
help
With this option on, Unicode support is implemented using libc
Internal implementation is smaller.
config BUSYBOX_CONFIG_FEATURE_CHECK_UNICODE_IN_ENV
- bool "Check $LANG environment variable"
- default n
+ bool "Check $LC_ALL, $LC_CTYPE and $LANG environment variables"
+ default BUSYBOX_DEFAULT_FEATURE_CHECK_UNICODE_IN_ENV
depends on BUSYBOX_CONFIG_UNICODE_SUPPORT && !BUSYBOX_CONFIG_UNICODE_USING_LOCALE
help
With this option on, Unicode support is activated
- only if LANG variable has the value of the form "xxxx.utf8"
+ only if locale-related variables have the value of the form
+ "xxxx.utf8"
Otherwise, Unicode support will be always enabled and active.
config BUSYBOX_CONFIG_SUBST_WCHAR
int "Character code to substitute unprintable characters with"
depends on BUSYBOX_CONFIG_UNICODE_SUPPORT
- default 63
+ default BUSYBOX_DEFAULT_SUBST_WCHAR
help
Typical values are 63 for '?' (works with any output device),
30 for ASCII substitute control code,
config BUSYBOX_CONFIG_LAST_SUPPORTED_WCHAR
int "Range of supported Unicode characters"
depends on BUSYBOX_CONFIG_UNICODE_SUPPORT
- default 767
+ default BUSYBOX_DEFAULT_LAST_SUPPORTED_WCHAR
help
Any character with Unicode value bigger than this is assumed
to be non-printable on output device. Many applets replace
config BUSYBOX_CONFIG_UNICODE_COMBINING_WCHARS
bool "Allow zero-width Unicode characters on output"
- default n
+ default BUSYBOX_DEFAULT_UNICODE_COMBINING_WCHARS
depends on BUSYBOX_CONFIG_UNICODE_SUPPORT
help
With this option off, any Unicode char with width of 0
config BUSYBOX_CONFIG_UNICODE_WIDE_WCHARS
bool "Allow wide Unicode characters on output"
- default n
+ default BUSYBOX_DEFAULT_UNICODE_WIDE_WCHARS
depends on BUSYBOX_CONFIG_UNICODE_SUPPORT
help
With this option off, any Unicode char with width > 1
config BUSYBOX_CONFIG_UNICODE_BIDI_SUPPORT
bool "Bidirectional character-aware line input"
- default n
+ default BUSYBOX_DEFAULT_UNICODE_BIDI_SUPPORT
depends on BUSYBOX_CONFIG_UNICODE_SUPPORT && !BUSYBOX_CONFIG_UNICODE_USING_LOCALE
help
With this option on, right-to-left Unicode characters
config BUSYBOX_CONFIG_UNICODE_NEUTRAL_TABLE
bool "In bidi input, support non-ASCII neutral chars too"
- default n
+ default BUSYBOX_DEFAULT_UNICODE_NEUTRAL_TABLE
depends on BUSYBOX_CONFIG_UNICODE_BIDI_SUPPORT
help
In most cases it's enough to treat only ASCII non-letters
config BUSYBOX_CONFIG_UNICODE_PRESERVE_BROKEN
bool "Make it possible to enter sequences of chars which are not Unicode"
- default n
+ default BUSYBOX_DEFAULT_UNICODE_PRESERVE_BROKEN
depends on BUSYBOX_CONFIG_UNICODE_SUPPORT
help
With this option on, on line-editing input (such as used by shells)
config BUSYBOX_CONFIG_LONG_OPTS
bool "Support for --long-options"
- default y
+ default BUSYBOX_DEFAULT_LONG_OPTS
help
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 BUSYBOX_CONFIG_FEATURE_DEVPTS
bool "Use the devpts filesystem for Unix98 PTYs"
- default y
+ default BUSYBOX_DEFAULT_FEATURE_DEVPTS
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
config BUSYBOX_CONFIG_FEATURE_CLEAN_UP
bool "Clean up all memory before exiting (usually not needed)"
- default n
+ default BUSYBOX_DEFAULT_FEATURE_CLEAN_UP
help
As a size optimization, busybox normally exits without explicitly
freeing dynamically allocated memory or closing files. This saves
config BUSYBOX_CONFIG_FEATURE_UTMP
bool "Support utmp file"
- default n
+ default BUSYBOX_DEFAULT_FEATURE_UTMP
help
The file /var/run/utmp is used to track who is currently logged in.
With this option on, certain applets (getty, login, telnetd etc)
config BUSYBOX_CONFIG_FEATURE_WTMP
bool "Support wtmp file"
- default n
+ default BUSYBOX_DEFAULT_FEATURE_WTMP
depends on BUSYBOX_CONFIG_FEATURE_UTMP
help
The file /var/run/wtmp is used to track when users have logged into
config BUSYBOX_CONFIG_FEATURE_PIDFILE
bool "Support writing pidfiles"
- default y
+ default BUSYBOX_DEFAULT_FEATURE_PIDFILE
help
This option makes some applets (e.g. crond, syslogd, inetd) write
- a pidfile in /var/run. Some applications rely on them.
+ a pidfile at the configured PID_FILE_PATH. It has no effect
+ on applets which require pidfiles to run.
+
+config BUSYBOX_CONFIG_PID_FILE_PATH
+ string "Path to directory for pidfile"
+ default BUSYBOX_DEFAULT_PID_FILE_PATH
+ depends on BUSYBOX_CONFIG_FEATURE_PIDFILE
+ help
+ This is the default path where pidfiles are created. Applets which
+ allow you to set the pidfile path on the command line will override
+ this value. The option has no effect on applets that require you to
+ specify a pidfile path.
config BUSYBOX_CONFIG_FEATURE_SUID
bool "Support for SUID/SGID handling"
- default y
+ default BUSYBOX_DEFAULT_FEATURE_SUID
help
With this option you can install the busybox binary belonging
to root with the suid bit set, enabling some applets to perform
root-level operations even when run by ordinary users
(for example, mounting of user mounts in fstab needs this).
- Busybox will automatically drop priviledges for applets
+ Busybox will automatically drop privileges for applets
that don't need root access.
If you are really paranoid and don't want to do this, build two
config BUSYBOX_CONFIG_FEATURE_SUID_CONFIG
bool "Runtime SUID/SGID configuration via /etc/busybox.conf"
- default n
+ default BUSYBOX_DEFAULT_FEATURE_SUID_CONFIG
depends on BUSYBOX_CONFIG_FEATURE_SUID
help
Allow the SUID / SGID state of an applet to be determined at runtime
config BUSYBOX_CONFIG_FEATURE_SUID_CONFIG_QUIET
bool "Suppress warning message if /etc/busybox.conf is not readable"
- default n
+ default BUSYBOX_DEFAULT_FEATURE_SUID_CONFIG_QUIET
depends on BUSYBOX_CONFIG_FEATURE_SUID_CONFIG
help
/etc/busybox.conf should be readable by the user needing the SUID,
config BUSYBOX_CONFIG_SELINUX
bool "Support NSA Security Enhanced Linux"
- default n
+ default BUSYBOX_DEFAULT_SELINUX
select BUSYBOX_CONFIG_PLATFORM_LINUX
help
Enable support for SELinux in applets ls, ps, and id. Also provide
config BUSYBOX_CONFIG_FEATURE_PREFER_APPLETS
bool "exec prefers applets"
- default y
+ default BUSYBOX_DEFAULT_FEATURE_PREFER_APPLETS
help
This is an experimental option which directs applets about to
call 'exec' to try and find an applicable busybox applet before
config BUSYBOX_CONFIG_BUSYBOX_EXEC_PATH
string "Path to BusyBox executable"
- default "/proc/self/exe"
+ default BUSYBOX_DEFAULT_BUSYBOX_EXEC_PATH
help
When Busybox applets need to run other busybox applets, BusyBox
sometimes needs to exec() itself. When the /proc filesystem is
config BUSYBOX_CONFIG_FEATURE_SYSLOG
bool #No description makes it a hidden option
- default y
+ default BUSYBOX_DEFAULT_FEATURE_SYSLOG
#help
# This option is auto-selected when you select any applet which may
# send its output to syslog. You do not need to select it manually.
config BUSYBOX_CONFIG_FEATURE_HAVE_RPC
bool #No description makes it a hidden option
- default n
+ default BUSYBOX_DEFAULT_FEATURE_HAVE_RPC
#help
# This is automatically selected if any of enabled applets need it.
# You do not need to select it manually.
config BUSYBOX_CONFIG_STATIC
bool "Build BusyBox as a static binary (no shared libs)"
- default n
+ default BUSYBOX_DEFAULT_STATIC
help
If you want to build a static BusyBox binary, which does not
use or require any shared libraries, then enable this option.
config BUSYBOX_CONFIG_PIE
bool "Build BusyBox as a position independent executable"
- default n
+ default BUSYBOX_DEFAULT_PIE
depends on !BUSYBOX_CONFIG_STATIC
help
Hardened code option. PIE binaries are loaded at a different
config BUSYBOX_CONFIG_NOMMU
bool "Force NOMMU build"
- default n
+ default BUSYBOX_DEFAULT_NOMMU
help
Busybox tries to detect whether architecture it is being
built against supports MMU or not. If this detection fails,
# build system does not support that
config BUSYBOX_CONFIG_BUILD_LIBBUSYBOX
bool "Build shared libbusybox"
- default n
+ default BUSYBOX_DEFAULT_BUILD_LIBBUSYBOX
depends on !BUSYBOX_CONFIG_FEATURE_PREFER_APPLETS && !BUSYBOX_CONFIG_PIE && !BUSYBOX_CONFIG_STATIC
help
Build a shared library libbusybox.so.N.N.N which contains all
config BUSYBOX_CONFIG_FEATURE_INDIVIDUAL
bool "Produce a binary for each applet, linked against libbusybox"
- default n
+ default BUSYBOX_DEFAULT_FEATURE_INDIVIDUAL
depends on BUSYBOX_CONFIG_BUILD_LIBBUSYBOX
help
If your CPU architecture doesn't allow for sharing text/rodata
config BUSYBOX_CONFIG_FEATURE_SHARED_BUSYBOX
bool "Produce additional busybox binary linked against libbusybox"
- default n
+ default BUSYBOX_DEFAULT_FEATURE_SHARED_BUSYBOX
depends on BUSYBOX_CONFIG_BUILD_LIBBUSYBOX
help
Build busybox, dynamically linked against libbusybox.so.N.N.N.
config BUSYBOX_CONFIG_LFS
bool
- default y
+ default BUSYBOX_DEFAULT_LFS
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
config BUSYBOX_CONFIG_CROSS_COMPILER_PREFIX
string "Cross Compiler prefix"
- default ""
+ default BUSYBOX_DEFAULT_CROSS_COMPILER_PREFIX
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,
Native builds leave this empty.
+config BUSYBOX_CONFIG_SYSROOT
+ string "Path to sysroot"
+ default BUSYBOX_DEFAULT_SYSROOT
+ help
+ If you want to build BusyBox with a cross compiler, then you
+ might also need to specify where /usr/include and /usr/lib
+ will be found.
+
+ For example, BusyBox can be built against an installed
+ Android NDK, platform version 9, for ARM ABI with
+
+ CONFIG_SYSROOT=/opt/android-ndk/platforms/android-9/arch-arm
+
+ Native builds leave this empty.
+
config BUSYBOX_CONFIG_EXTRA_CFLAGS
string "Additional CFLAGS"
- default ""
+ default BUSYBOX_DEFAULT_EXTRA_CFLAGS
help
Additional CFLAGS to pass to the compiler verbatim.
+config BUSYBOX_CONFIG_EXTRA_LDFLAGS
+ string "Additional LDFLAGS"
+ default BUSYBOX_DEFAULT_EXTRA_LDFLAGS
+ help
+ Additional LDFLAGS to pass to the linker verbatim.
+
+config BUSYBOX_CONFIG_EXTRA_LDLIBS
+ string "Additional LDLIBS"
+ default BUSYBOX_DEFAULT_EXTRA_LDLIBS
+ help
+ Additional LDLIBS to pass to the linker with -l.
+
endmenu
menu 'Debugging Options'
config BUSYBOX_CONFIG_DEBUG
bool "Build BusyBox with extra Debugging symbols"
- default n
+ default BUSYBOX_DEFAULT_DEBUG
help
Say Y here if you wish to examine BusyBox internals while applets are
running. This increases the size of the binary considerably, and
config BUSYBOX_CONFIG_DEBUG_PESSIMIZE
bool "Disable compiler optimizations"
- default n
+ default BUSYBOX_DEFAULT_DEBUG_PESSIMIZE
depends on BUSYBOX_CONFIG_DEBUG
help
The compiler's optimization of source code can eliminate and reorder
config BUSYBOX_CONFIG_WERROR
bool "Abort compilation on any warning"
- default n
+ default BUSYBOX_DEFAULT_WERROR
help
Selecting this will add -Werror to gcc command line.
config BUSYBOX_CONFIG_PREFIX
string "BusyBox installation prefix"
- default "./_install"
+ default BUSYBOX_DEFAULT_PREFIX
help
Define your directory to install BusyBox files/subdirs in.