From f77b88d124ea1c900f9cf5e04046939aad48bbe1 Mon Sep 17 00:00:00 2001 From: mbm Date: Sun, 6 Mar 2005 03:34:52 +0000 Subject: nbd's makefile/menuconfig rewrite git-svn-id: svn://svn.openwrt.org/openwrt/trunk/openwrt@307 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- package/busybox/Config.in | 7 + package/busybox/Makefile | 9 + package/busybox/busybox.config | 4 +- package/busybox/busybox.mk | 35 +- package/busybox/config/Config.in | 293 ++++++++++ package/busybox/config/archival/Config.in | 258 +++++++++ package/busybox/config/console-tools/Config.in | 68 +++ package/busybox/config/coreutils/Config.in | 613 +++++++++++++++++++++ package/busybox/config/debianutils/Config.in | 58 ++ package/busybox/config/editors/Config.in | 123 +++++ package/busybox/config/findutils/Config.in | 133 +++++ package/busybox/config/init/Config.in | 72 +++ package/busybox/config/loginutils/Config.in | 161 ++++++ package/busybox/config/miscutils/Config.in | 201 +++++++ package/busybox/config/modutils/Config.in | 113 ++++ package/busybox/config/networking/Config.in | 634 ++++++++++++++++++++++ package/busybox/config/networking/udhcp/Config.in | 62 +++ package/busybox/config/procps/Config.in | 87 +++ package/busybox/config/shell/Config.in | 229 ++++++++ package/busybox/config/sysklogd/Config.in | 109 ++++ package/busybox/config/util-linux/Config.in | 357 ++++++++++++ 21 files changed, 3603 insertions(+), 23 deletions(-) create mode 100644 package/busybox/Makefile create mode 100644 package/busybox/config/Config.in create mode 100644 package/busybox/config/archival/Config.in create mode 100644 package/busybox/config/console-tools/Config.in create mode 100644 package/busybox/config/coreutils/Config.in create mode 100644 package/busybox/config/debianutils/Config.in create mode 100644 package/busybox/config/editors/Config.in create mode 100644 package/busybox/config/findutils/Config.in create mode 100644 package/busybox/config/init/Config.in create mode 100644 package/busybox/config/loginutils/Config.in create mode 100644 package/busybox/config/miscutils/Config.in create mode 100644 package/busybox/config/modutils/Config.in create mode 100644 package/busybox/config/networking/Config.in create mode 100644 package/busybox/config/networking/udhcp/Config.in create mode 100644 package/busybox/config/procps/Config.in create mode 100644 package/busybox/config/shell/Config.in create mode 100644 package/busybox/config/sysklogd/Config.in create mode 100644 package/busybox/config/util-linux/Config.in (limited to 'package/busybox') diff --git a/package/busybox/Config.in b/package/busybox/Config.in index 9420f5369..4f72994af 100644 --- a/package/busybox/Config.in +++ b/package/busybox/Config.in @@ -17,3 +17,10 @@ config BR2_PACKAGE_BUSYBOX_SNAPSHOT Use the latest busybox CVS snapshot instead of release. For fun, you should say Y. + +menu "Busybox Configuration" + depends BR2_PACKAGE_BUSYBOX + +source package/busybox/config/Config.in + +endmenu diff --git a/package/busybox/Makefile b/package/busybox/Makefile new file mode 100644 index 000000000..8877c373c --- /dev/null +++ b/package/busybox/Makefile @@ -0,0 +1,9 @@ +include $(TOPDIR)/rules.mk + +include ./busybox.mk + +source: busybox-source +prepare: $(BUSYBOX_DIR)/.unpacked +compile: $(BUSYBOX_DIR)/busybox +install: busybox +clean: busybox-dirclean diff --git a/package/busybox/busybox.config b/package/busybox/busybox.config index 1b78d20c2..c79c7ec76 100644 --- a/package/busybox/busybox.config +++ b/package/busybox/busybox.config @@ -26,7 +26,7 @@ CONFIG_FEATURE_SUID=y CONFIG_LFS=y USING_CROSS_COMPILER=y CROSS_COMPILER_PREFIX="mipsel-uclibc-" -EXTRA_CFLAGS_OPTIONS="-Os " +EXTRA_CFLAGS_OPTIONS="-Os -pipe -mips2" # # Installation Options @@ -189,7 +189,7 @@ CONFIG_MKTEMP=y # CONFIG_PIPE_PROGRESS is not set # CONFIG_READLINK is not set CONFIG_RUN_PARTS=y -# CONFIG_START_STOP_DAEMON is not set +CONFIG_START_STOP_DAEMON=y CONFIG_WHICH=y # diff --git a/package/busybox/busybox.mk b/package/busybox/busybox.mk index e19aa7bc4..76de2548a 100644 --- a/package/busybox/busybox.mk +++ b/package/busybox/busybox.mk @@ -16,7 +16,7 @@ BUSYBOX_SOURCE:=busybox-$(BUSYBOX_VER).tar.bz2 BUSYBOX_SITE:=http://www.busybox.net/downloads endif BUSYBOX_UNZIP=bzcat -BUSYBOX_CONFIG:=package/busybox/busybox.config +BUSYBOX_CONFIG:=./busybox.config $(DL_DIR)/$(BUSYBOX_SOURCE): $(WGET) -P $(DL_DIR) $(BUSYBOX_SITE)/$(BUSYBOX_SOURCE) @@ -26,19 +26,20 @@ busybox-source: $(DL_DIR)/$(BUSYBOX_SOURCE) $(BUSYBOX_CONFIG) $(BUSYBOX_DIR)/.unpacked: $(DL_DIR)/$(BUSYBOX_SOURCE) $(BUSYBOX_UNZIP) $(DL_DIR)/$(BUSYBOX_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) - # Allow busybox patches. - toolchain/patch-kernel.sh $(BUSYBOX_DIR) package/busybox/patches + $(PATCH) $(BUSYBOX_DIR) ./patches touch $(BUSYBOX_DIR)/.unpacked $(BUSYBOX_DIR)/.configured: $(BUSYBOX_DIR)/.unpacked $(BUSYBOX_CONFIG) - cp $(BUSYBOX_CONFIG) $(BUSYBOX_DIR)/.config - $(SED) "s,^CROSS.*,CROSS=$(TARGET_CROSS)\n\ - PREFIX=$(TARGET_DIR),;" $(BUSYBOX_DIR)/Rules.mak -ifeq ($(BR2_LARGEFILE),y) - $(SED) "s/^.*CONFIG_LFS.*/CONFIG_LFS=y/;" $(BUSYBOX_DIR)/.config -else - $(SED) "s/^.*CONFIG_LFS.*/CONFIG_LFS=n/;" $(BUSYBOX_DIR)/.config - $(SED) "s/^.*FDISK_SUPPORT_LARGE_DISKS.*/FDISK_SUPPORT_LARGE_DISKS=n/;" $(BUSYBOX_DIR)/.config -endif + $(SCRIPT_DIR)/gen_busybox_config.pl $(TOPDIR)/.config > $(BUSYBOX_DIR)/.config +# cp $(BUSYBOX_CONFIG) $(BUSYBOX_DIR)/.config +# $(SED) "s,^CROSS.*,CROSS=$(TARGET_CROSS)\n\ +# PREFIX=$(TARGET_DIR),;" $(BUSYBOX_DIR)/Rules.mak +#ifeq ($(BR2_LARGEFILE),y) +# $(SED) "s/^.*CONFIG_LFS.*/CONFIG_LFS=y/;" $(BUSYBOX_DIR)/.config +#else +# $(SED) "s/^.*CONFIG_LFS.*/CONFIG_LFS=n/;" $(BUSYBOX_DIR)/.config +# $(SED) "s/^.*FDISK_SUPPORT_LARGE_DISKS.*/FDISK_SUPPORT_LARGE_DISKS=n/;" $(BUSYBOX_DIR)/.config +#endif $(MAKE) CC=$(TARGET_CC) CROSS="$(TARGET_CROSS)" -C $(BUSYBOX_DIR) oldconfig touch $(BUSYBOX_DIR)/.configured @@ -49,10 +50,11 @@ $(BUSYBOX_DIR)/busybox: $(BUSYBOX_DIR)/.configured $(TARGET_DIR)/bin/busybox: $(BUSYBOX_DIR)/busybox $(MAKE) CC=$(TARGET_CC) CROSS="$(TARGET_CROSS)" PREFIX="$(TARGET_DIR)" \ EXTRA_CFLAGS="$(TARGET_CFLAGS)" -C $(BUSYBOX_DIR) install + $(STRIP) $(TARGET_DIR)/bin/busybox # Just in case -chmod a+x $(TARGET_DIR)/usr/share/udhcpc/default.script -busybox: uclibc $(TARGET_DIR)/bin/busybox +busybox: $(TARGET_DIR)/bin/busybox busybox-clean: rm -f $(TARGET_DIR)/bin/busybox @@ -60,12 +62,3 @@ busybox-clean: busybox-dirclean: rm -rf $(BUSYBOX_DIR) - -############################################################# -# -# Toplevel Makefile options -# -############################################################# -ifeq ($(strip $(BR2_PACKAGE_BUSYBOX)),y) -TARGETS+=busybox -endif diff --git a/package/busybox/config/Config.in b/package/busybox/config/Config.in new file mode 100644 index 000000000..e7afb5362 --- /dev/null +++ b/package/busybox/config/Config.in @@ -0,0 +1,293 @@ +# +# For a description of the syntax of this configuration file, +# see scripts/kbuild/config-language.txt. +# + + +config BUSYBOX_HAVE_DOT_CONFIG + bool + default y + +menu "General Configuration" + +choice + prompt "Buffer allocation policy" + default BUSYBOX_CONFIG_FEATURE_BUFFERS_GO_ON_STACK + 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 BUSYBOX_CONFIG_FEATURE_BUFFERS_USE_MALLOC + bool "Allocate with Malloc" + +config BUSYBOX_CONFIG_FEATURE_BUFFERS_GO_ON_STACK + bool "Allocate on the Stack" + +config BUSYBOX_CONFIG_FEATURE_BUFFERS_GO_IN_BSS + bool "Allocate in the .bss section" + +endchoice + +config BUSYBOX_CONFIG_FEATURE_VERBOSE_USAGE + bool "Show verbose applet usage messages" + default y + 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 BUSYBOX_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 BUSYBOX_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 BUSYBOX_CONFIG_FEATURE_DEVFS + bool "Support for devfs" + default y + help + Enable if you want BusyBox to work with devfs. + +config BUSYBOX_CONFIG_FEATURE_DEVPTS + bool "Use the devpts filesystem for Unix98 PTYs" + default y if BUSYBOX_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/ for the slave side. Otherwise, BSD style + /dev/ttyp will be used. To use this option, you should have + devpts or devfs mounted. + +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 + things up manually. + +config BUSYBOX_CONFIG_FEATURE_SUID + bool "Support for SUID/SGID handling" + default y + help + Support SUID and SGID binaries. + +config BUSYBOX_CONFIG_FEATURE_SUID_CONFIG + bool "Runtime SUID/SGID configuration via /etc/busybox.conf" + default n if BUSYBOX_CONFIG_FEATURE_SUID + depends on BUSYBOX_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: + + = [Ssx-][Ssx-][x-] (|).(|) + + 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 + + Robert 'sandman' Griebl has more information here: + . + +config BUSYBOX_CONFIG_FEATURE_SUID_CONFIG_QUIET + bool "Suppress warning message if /etc/busybox.conf is not readable" + default n + depends on BUSYBOX_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 BUSYBOX_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 BUSYBOX_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 BUSYBOX_CONFIG_LFS + bool + default y + select BUSYBOX_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 BUSYBOX_USING_CROSS_COMPILER + bool + default y + help + Do you want to build BusyBox with a Cross Compiler? If so, + then enable this option. Otherwise leave it set to 'N'. + +config BUSYBOX_CROSS_COMPILER_PREFIX + string + default "mipsel-uclibc-" + depends on BUSYBOX_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 BUSYBOX_EXTRA_CFLAGS_OPTIONS + string + default "-Os " + 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. + +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. + +config BUSYBOX_PREFIX + string + default "./_install" + help + Define your directory to install BusyBox files/subdirs in. + + + +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 + 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 BUSYBOX_CONFIG_NO_DEBUG_LIB + depends on BUSYBOX_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 BUSYBOX_CONFIG_NO_DEBUG_LIB + bool "None" + +config BUSYBOX_CONFIG_DMALLOC + bool "Dmalloc" + +config BUSYBOX_CONFIG_EFENCE + bool "Electric-fence" + +endchoice + + +endmenu + diff --git a/package/busybox/config/archival/Config.in b/package/busybox/config/archival/Config.in new file mode 100644 index 000000000..8bb4886eb --- /dev/null +++ b/package/busybox/config/archival/Config.in @@ -0,0 +1,258 @@ +# +# For a description of the syntax of this configuration file, +# see scripts/kbuild/config-language.txt. +# + +menu "Archival Utilities" + +config BUSYBOX_CONFIG_AR + bool "ar" + default n + help + ar is an archival utility program used to create, modify, and + extract contents from archives. An archive is a single file holding + a collection of other files in a structure that makes it possible to + retrieve the original individual files (called archive members). + The original files' contents, mode (permissions), timestamp, owner, + and group are preserved in the archive, and can be restored on + extraction. + + The stored filename is limited to 15 characters. (for more information + see long filename support). + ar has 60 bytes of overheads for every stored file. + + This implementation of ar can extract archives, it cannot create or + modify them. + On an x86 system, the ar applet adds about 1K. + + Unless you have a specific application which requires ar, you should + probably say N here. + +config BUSYBOX_CONFIG_FEATURE_AR_LONG_FILENAMES + bool " Enable support for long filenames (not need for debs)" + default n + depends on BUSYBOX_CONFIG_AR + help + By default the ar format can only store the first 15 characters of the + filename, this option removes that limitation. + It supports the GNU ar long filename method which moves multiple long + filenames into a the data section of a new ar entry. + +config BUSYBOX_CONFIG_BUNZIP2 + bool "bunzip2" + default y + help + bunzip2 is a compression utility using the Burrows-Wheeler block + sorting text compression algorithm, and Huffman coding. Compression + 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. + +config BUSYBOX_CONFIG_CPIO + bool "cpio" + default n + help + cpio is an archival utility program used to create, modify, and extract + contents from archives. + cpio has 110 bytes of overheads for every stored file. + + This implementation of cpio can extract cpio archives created in the + "newc" or "crc" format, it cannot create or modify them. + + Unless you have a specific application which requires cpio, you should + probably say N here. + +config BUSYBOX_CONFIG_DPKG + bool "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. + +config BUSYBOX_CONFIG_DPKG_DEB + bool "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. + +config BUSYBOX_CONFIG_FEATURE_DPKG_DEB_EXTRACT_ONLY + bool " extract only (-x)" + default n + depends on BUSYBOX_CONFIG_DPKG_DEB + help + This reduces dpkg-deb to the equivalent of "ar -p data.tar.gz | tar -zx". + However it saves space as none of the extra dpkg-deb, ar or tar options are + needed, they are linked to internally. + +config BUSYBOX_CONFIG_GUNZIP + bool "gunzip" + default y + help + gunzip is used to decompress archives created by gzip. + You can use the `-t' option to test the integrity of + an archive, without decompressing it. + +config BUSYBOX_CONFIG_FEATURE_GUNZIP_UNCOMPRESS + bool " Uncompress support" + default y + depends on BUSYBOX_CONFIG_GUNZIP + help + Enable if you want gunzip to have the ability to decompress + archives created by the program compress (not much + used anymore). + +config BUSYBOX_CONFIG_GZIP + bool "gzip" + default y + help + gzip is used to compress files. + It's probably the most widely used UNIX compression program. + +config BUSYBOX_CONFIG_RPM2CPIO + bool "rpm2cpio" + default n + help + Converts an RPM file into a CPIO archive. + +config BUSYBOX_CONFIG_RPM + bool "rpm" + default n + help + Mini RPM applet - queries and extracts + +config BUSYBOX_CONFIG_TAR + bool "tar" + default y + help + tar is an archiving program. It's commonly used with gzip to + create compressed archives. It's probably the most widely used + UNIX archive program. + +config BUSYBOX_CONFIG_FEATURE_TAR_CREATE + bool " Enable archive creation" + default y + depends on BUSYBOX_CONFIG_TAR + help + If you enable this option you'll be able to create + tar archives using the `-c' option. + +config BUSYBOX_CONFIG_FEATURE_TAR_BZIP2 + bool " Enable -j option to handle .tar.bz2 files" + default y + depends on BUSYBOX_CONFIG_TAR + help + If you enable this option you'll be able to extract + archives compressed with bzip2. + +config BUSYBOX_CONFIG_FEATURE_TAR_FROM + bool " Enable -X (exclude from) and -T (include from) options)" + default n + depends on BUSYBOX_CONFIG_TAR + help + If you enable this option you'll be able to specify + a list of files to include or exclude from an archive. + +config BUSYBOX_CONFIG_FEATURE_TAR_GZIP + bool " Enable -z option" + default y + depends on BUSYBOX_CONFIG_TAR + help + If you enable this option tar will be able to call gzip, + when creating or extracting tar gziped archives. + +config BUSYBOX_CONFIG_FEATURE_TAR_COMPRESS + bool " Enable -Z option" + default n + depends on BUSYBOX_CONFIG_TAR + help + If you enable this option tar will be able to call uncompress, + when extracting .tar.Z archives. + +config BUSYBOX_CONFIG_FEATURE_TAR_OLDGNU_COMPATABILITY + bool " Enable support for old tar header format" + default n + depends on BUSYBOX_CONFIG_TAR + help + This option is required to unpack archives created in + the old GNU format; help to kill this old format by + repacking your ancient archives with the new format. + +config BUSYBOX_CONFIG_FEATURE_TAR_GNU_EXTENSIONS + bool " Enable support for some GNU tar extensions" + default y + depends on BUSYBOX_CONFIG_TAR + help + With this option busybox supports GNU long filenames and + linknames. + +config BUSYBOX_CONFIG_FEATURE_TAR_LONG_OPTIONS + bool " Enable long options" + default n + depends on BUSYBOX_CONFIG_TAR + help + Enable use of long options, increases size by about 400 Bytes + +config BUSYBOX_CONFIG_UNCOMPRESS + bool "uncompress" + default n + help + uncompress is used to decompress archives created by compress. + Not much used anymore, replaced by gzip/gunzip. + +config BUSYBOX_CONFIG_UNZIP + bool "unzip" + default n + help + unzip will list or extract files from a ZIP archive, + commonly found on DOS/WIN systems. The default behavior + (with no options) is to extract the archive into the + current directory. Use the `-d' option to extract to a + directory of your choice. + +comment "Common options for cpio and tar" + depends on BUSYBOX_CONFIG_CPIO || BUSYBOX_CONFIG_TAR + +config BUSYBOX_CONFIG_FEATURE_UNARCHIVE_TAPE + bool " Enable tape drive support" + default n + depends on BUSYBOX_CONFIG_CPIO || BUSYBOX_CONFIG_TAR + help + I don't think this is needed anymore. + +comment "Common options for dpkg and dpkg_deb" + depends on BUSYBOX_CONFIG_DPKG || BUSYBOX_CONFIG_DPKG_DEB + +config BUSYBOX_CONFIG_FEATURE_DEB_TAR_GZ + bool " gzip debian packages (normal)" + default n if BUSYBOX_CONFIG_DPKG || BUSYBOX_CONFIG_DPKG_DEB + 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 + bool " bzip2 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 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. + +endmenu diff --git a/package/busybox/config/console-tools/Config.in b/package/busybox/config/console-tools/Config.in new file mode 100644 index 000000000..207e2df21 --- /dev/null +++ b/package/busybox/config/console-tools/Config.in @@ -0,0 +1,68 @@ +# +# For a description of the syntax of this configuration file, +# see scripts/kbuild/config-language.txt. +# + +menu "Console Utilities" + +config BUSYBOX_CONFIG_CHVT + bool "chvt" + default n + help + This program is used to change to another terminal. + Example: chvt 4 (change to terminal /dev/tty4) + +config BUSYBOX_CONFIG_CLEAR + bool "clear" + default y + help + This program clears the terminal screen. + +config BUSYBOX_CONFIG_DEALLOCVT + bool "deallocvt" + default n + help + This program deallocates unused virtual consoles. + +config BUSYBOX_CONFIG_DUMPKMAP + bool "dumpkmap" + default n + help + This program dumps the kernel's keyboard translation table to + stdout, in binary format. You can then use loadkmap to load it. + +config BUSYBOX_CONFIG_LOADFONT + bool "loadfont" + default n + help + This program loads a console font from standard input. + +config BUSYBOX_CONFIG_LOADKMAP + bool "loadkmap" + default n + help + This program loads a keyboard translation table from + standard input. + +config BUSYBOX_CONFIG_OPENVT + bool "openvt" + default n + help + This program is used to start a command on an unused + virtual terminal. + +config BUSYBOX_CONFIG_RESET + bool "reset" + default y + help + This program is used to reset the terminal screen, if it + gets messed up. + +config BUSYBOX_CONFIG_SETKEYCODES + bool "setkeycodes" + default n + help + This program loads entries into the kernel's scancode-to-keycode + map, allowing unusual keyboards to generate usable keycodes. + +endmenu diff --git a/package/busybox/config/coreutils/Config.in b/package/busybox/config/coreutils/Config.in new file mode 100644 index 000000000..1f3da2f10 --- /dev/null +++ b/package/busybox/config/coreutils/Config.in @@ -0,0 +1,613 @@ +# +# For a description of the syntax of this configuration file, +# see scripts/kbuild/config-language.txt. +# + +menu "Coreutils" + +config BUSYBOX_CONFIG_BASENAME + bool "basename" + default y + help + basename is used to strip the directory and suffix from filenames, + leaving just the filename itself. Enable this option if you wish + to enable the 'basename' utility. + +config BUSYBOX_CONFIG_CAL + bool "cal" + default n + help + cal is used to display a monthly calender. + +config BUSYBOX_CONFIG_CAT + bool "cat" + default y + help + cat is used to concatenate files and print them to the standard + output. Enable this option if you wish to enable the 'cat' utility. + +config BUSYBOX_CONFIG_CHGRP + bool "chgrp" + default y + help + chgrp is used to change the group ownership of files. + +config BUSYBOX_CONFIG_CHMOD + bool "chmod" + default y + help + chmod is used to change the access permission of files. + +config BUSYBOX_CONFIG_CHOWN + bool "chown" + default y + help + chown is used to change the user and/or group ownership + of files. + +config BUSYBOX_CONFIG_CHROOT + bool "chroot" + default y + help + chroot is used to change the root directory and run a command. + The default command is `/bin/sh'. + +config BUSYBOX_CONFIG_CMP + bool "cmp" + default n + help + cmp is used to compare two files and returns the result + to standard output. + +config BUSYBOX_CONFIG_CP + bool "cp" + default y + help + cp is used to copy files and directories. + +config BUSYBOX_CONFIG_CUT + bool "cut" + default y + help + 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_FEATURE_DATE_ISOFMT + bool " Enable ISO date format output (-I)" + default y + depends on BUSYBOX_CONFIG_DATE + help + Enable option (-I) to output an ISO-8601 compliant + date/time string. + +config BUSYBOX_CONFIG_DD + bool "dd" + default y + help + dd copies a file (from standard input to standard output, + by default) using specific input and output blocksizes, + while optionally performing conversions on it. + +config BUSYBOX_CONFIG_DF + bool "df" + default y + help + df reports the amount of disk space used and available + on filesystems. + +config BUSYBOX_CONFIG_DIRNAME + bool "dirname" + default n + help + dirname is used to strip a non-directory suffix from + a file name. + +config BUSYBOX_CONFIG_DOS2UNIX + bool "dos2unix/unix2dos" + default n + help + dos2unix is used to convert a text file from DOS format to + UNIX format, and vice versa. + +config BUSYBOX_CONFIG_UNIX2DOS + bool + default n + depends on BUSYBOX_CONFIG_DOS2UNIX + +config BUSYBOX_CONFIG_DU + bool "du (default blocksize of 512 bytes)" + default n + help + du is used to report the amount of disk space used + for specified files. + +config BUSYBOX_CONFIG_FEATURE_DU_DEFALT_BLOCKSIZE_1K + bool " Use a default blocksize of 1024 bytes (1K)" + default n + depends on BUSYBOX_CONFIG_DU + help + Use a blocksize of (1K) instead of the default 512b. + +config BUSYBOX_CONFIG_ECHO + bool "echo (basic SUSv3 version taking no options)" + default y + help + echo is used to print a specified string to stdout. + +config BUSYBOX_CONFIG_FEATURE_FANCY_ECHO + bool " Enable echo options (-n and -e)" + default y + depends on BUSYBOX_CONFIG_ECHO + help + This adds options (-n and -e) to echo. + +config BUSYBOX_CONFIG_ENV + bool "env" + default y + help + env is used to set an environment variable and run + a command; without options it displays the current + environment. + +config BUSYBOX_CONFIG_EXPR + bool "expr" + default y + help + 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 + +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_FOLD + bool "fold" + default n + help + Wrap text to fit a specific width. + +config BUSYBOX_CONFIG_HEAD + bool "head" + default y + help + head is used to print the first specified number of lines + from files. + +config BUSYBOX_CONFIG_FEATURE_FANCY_HEAD + bool " Enable head options (-c, -q, and -v)" + default n + depends on BUSYBOX_CONFIG_HEAD + help + This enables the head options (-c, -q, and -v). + +config BUSYBOX_CONFIG_HOSTID + bool "hostid" + default y + help + hostid prints the numeric identifier (in hexadecimal) for + the current host. + +config BUSYBOX_CONFIG_ID + bool "id" + default n + help + id displays the current user and group ID names. + +config BUSYBOX_CONFIG_INSTALL + bool "install" + default y + help + Copy files and set attributes. + +config BUSYBOX_CONFIG_LENGTH + bool "length" + default y + help + length is used to print out the length of a specified string. + +config BUSYBOX_CONFIG_LN + bool "ln" + default y + help + ln is used to create hard or soft links between files. + +config BUSYBOX_CONFIG_LOGNAME + bool "logname" + default n + help + logname is used to print the current user's login name. + +config BUSYBOX_CONFIG_LS + bool "ls" + default y + help + ls is used to list the contents of directories. + +config BUSYBOX_CONFIG_FEATURE_LS_FILETYPES + bool " Enable filetyping options (-p and -F)" + default y + depends on BUSYBOX_CONFIG_LS + help + Enable the ls options (-p and -F). + +config BUSYBOX_CONFIG_FEATURE_LS_FOLLOWLINKS + bool " Enable symlinks dereferencing (-L)" + default y + depends on BUSYBOX_CONFIG_LS + help + Enable the ls option (-L). + +config BUSYBOX_CONFIG_FEATURE_LS_RECURSIVE + bool " Enable recursion (-R)" + default y + depends on BUSYBOX_CONFIG_LS + help + Enable the ls option (-R). + +config BUSYBOX_CONFIG_FEATURE_LS_SORTFILES + bool " Sort the file names" + default y + depends on BUSYBOX_CONFIG_LS + help + Allow ls to sort file names alphabetically. + +config BUSYBOX_CONFIG_FEATURE_LS_TIMESTAMPS + bool " Show file timestamps" + default y + depends on BUSYBOX_CONFIG_LS + help + Allow ls to display timestamps for files. + +config BUSYBOX_CONFIG_FEATURE_LS_USERNAME + bool " Show username/groupnames" + default y + depends on BUSYBOX_CONFIG_LS + help + Allow ls to display username/groupname for files. + +config BUSYBOX_CONFIG_FEATURE_LS_COLOR + bool " Use color to identify file types" + default y + depends on BUSYBOX_CONFIG_LS + help + Allow ls to use color when displaying files. + +config BUSYBOX_CONFIG_MD5SUM + bool "md5sum" + default y + help + md5sum is used to print or check MD5 checksums. + +config BUSYBOX_CONFIG_MKDIR + bool "mkdir" + default y + help + mkdir is used to create directories with the specified names. + +config BUSYBOX_CONFIG_MKFIFO + bool "mkfifo" + default y + help + mkfifo is used to create FIFOs (named pipes). + The `mknod' program can also create FIFOs. + +config BUSYBOX_CONFIG_MKNOD + bool "mknod" + default n + help + mknod is used to create FIFOs or block/character special + files with the specified names. + +config BUSYBOX_CONFIG_MV + bool "mv" + default y + help + mv is used to move or rename files or directories. + +config BUSYBOX_CONFIG_OD + bool "od" + default n + help + od is used to dump binary files in octal and other formats. + +config BUSYBOX_CONFIG_PRINTF + bool "printf" + default n + help + printf is used to format and print specified strings. + It's similar to `echo' except it has more options. + +config BUSYBOX_CONFIG_PWD + bool "pwd" + default y + help + pwd is used to print the current directory. + +config BUSYBOX_CONFIG_REALPATH + bool "realpath" + default n + help + Return the canonicalized absolute pathname. + This isn't provided by GNU shellutils, but where else does it belong. + +config BUSYBOX_CONFIG_RM + bool "rm" + default y + help + rm is used to remove files or directories. + +config BUSYBOX_CONFIG_RMDIR + bool "rmdir" + default y + help + rmdir is used to remove empty directories. + +config BUSYBOX_CONFIG_SEQ + bool "seq" + default n + help + print a sequence of numbers + +config BUSYBOX_CONFIG_SHA1SUM + bool "sha1sum" + default n + help + Compute and check SHA1 message digest + +config BUSYBOX_CONFIG_SLEEP + bool "sleep (single integer arg with no suffix)" + default y + help + sleep is used to pause for a specified number of seconds, + +config BUSYBOX_CONFIG_FEATURE_FANCY_SLEEP + bool " Enable multiple integer args and optional time suffixes" + default y + depends on BUSYBOX_CONFIG_SLEEP + help + Allow sleep to pause for specified minutes, hours, and days. + +config BUSYBOX_CONFIG_SORT + bool "sort" + default y + help + sort is used to sort lines of text in specified files. + +config BUSYBOX_CONFIG_STTY + bool "stty" + default n + help + stty is used to change and print terminal line settings. + +config BUSYBOX_CONFIG_SYNC + bool "sync" + default y + help + sync is used to flush filesystem buffers. + +config BUSYBOX_CONFIG_TAIL + bool "tail" + default y + help + tail is used to print the last specified number of lines + from files. + +config BUSYBOX_CONFIG_FEATURE_FANCY_TAIL + bool " Enable extra tail options (-q, -s, and -v)" + default y + depends on BUSYBOX_CONFIG_TAIL + help + The options (-q, -s, and -v) are provided by GNU tail, but + are not specific in the SUSv3 standard. + +config BUSYBOX_CONFIG_TEE + bool "tee" + default y + help + tee is used to read from standard input and write + to standard output and files. + +config BUSYBOX_CONFIG_FEATURE_TEE_USE_BLOCK_IO + bool " Enable block i/o (larger/faster) instead of byte i/o." + default y + depends on BUSYBOX_CONFIG_TEE + 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_FEATURE_TEST_64 + bool " Extend test to 64 bit" + default n + depends on BUSYBOX_CONFIG_TEST + help + Enable 64-bit support in test. + +config BUSYBOX_CONFIG_TOUCH + bool "touch" + default y + help + touch is used to create or change the access and/or + modification timestamp of specified files. + +config BUSYBOX_CONFIG_TR + bool "tr" + default n + help + 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 + +if !CONFIG_HUSH && !CONFIG_LASH && !CONFIG_MSH + config BUSYBOX_CONFIG_TRUE + bool "true" + default y + help + true returns an exit code of TRUE (0). + +endif + +config BUSYBOX_CONFIG_TTY + bool "tty" + default n + help + tty is used to print the name of the current terminal to + standard output. + +config BUSYBOX_CONFIG_UNAME + bool "uname" + default y + help + uname is used to print system information. + +config BUSYBOX_CONFIG_UNIQ + bool "uniq" + default y + help + uniq is used to remove duplicate lines from a sorted file. + +config BUSYBOX_CONFIG_USLEEP + bool "usleep" + default n + help + usleep is used to pause for a specified number of microseconds. + +config BUSYBOX_CONFIG_UUDECODE + bool "uudecode" + default n + help + uudecode is used to decode a uuencoded file. + +config BUSYBOX_CONFIG_UUENCODE + bool "uuencode" + default n + help + uuencode is used to uuencode a file. + +config BUSYBOX_CONFIG_WATCH + bool "watch" + default n + help + watch is used to execute a program periodically, showing + output to the screen. + +config BUSYBOX_CONFIG_WC + bool "wc" + default y + help + wc is used to print the number of bytes, words, and lines, + in specified files. + +config BUSYBOX_CONFIG_WHO + bool "who" + default n + select BUSYBOX_CONFIG_FEATURE_U_W_TMP + help + who is used to show who is logged on. + +config BUSYBOX_CONFIG_WHOAMI + bool "whoami" + default n + help + whoami is used to print the username of the current + user id (same as id -un). + +config BUSYBOX_CONFIG_YES + bool "yes" + default y + help + yes is used to repeatedly output a specific string, or + the default string `y'. + +comment "Common options for cp and mv" + depends on BUSYBOX_CONFIG_CP || BUSYBOX_CONFIG_MV + +config BUSYBOX_CONFIG_FEATURE_PRESERVE_HARDLINKS + bool " Preserve hard links" + default y + depends on BUSYBOX_CONFIG_CP || BUSYBOX_CONFIG_MV + help + Allow cp and mv to preserve hard links. + +comment "Common options for ls and more" + depends on BUSYBOX_CONFIG_LS || BUSYBOX_CONFIG_MORE + +config BUSYBOX_CONFIG_FEATURE_AUTOWIDTH + bool " Calculate terminal & column widths" + default y + depends on BUSYBOX_CONFIG_LS || BUSYBOX_CONFIG_MORE + 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. + +comment "Common options for df, du, 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)" + default y + depends on BUSYBOX_CONFIG_DF || BUSYBOX_CONFIG_DU || BUSYBOX_CONFIG_LS + help + Allow df, du, and ls to have human readable output. + +comment "Common options for md5sum, sha1sum" + depends on BUSYBOX_CONFIG_MD5SUM || BUSYBOX_CONFIG_SHA1SUM + +config BUSYBOX_CONFIG_FEATURE_MD5_SHA1_SUM_CHECK + bool " Enable -c, -s and -w options" + default y + depends on BUSYBOX_CONFIG_MD5SUM || BUSYBOX_CONFIG_SHA1SUM + help + Enabling the -c options allows files to be checked + against pre-calculated hash values. + + -s and -w are useful options when verifying checksums. + +endmenu diff --git a/package/busybox/config/debianutils/Config.in b/package/busybox/config/debianutils/Config.in new file mode 100644 index 000000000..c5a07eaec --- /dev/null +++ b/package/busybox/config/debianutils/Config.in @@ -0,0 +1,58 @@ +# +# For a description of the syntax of this configuration file, +# see scripts/kbuild/config-language.txt. +# + +menu "Debian Utilities" + +config BUSYBOX_CONFIG_MKTEMP + bool "mktemp" + default y + help + mktemp is used to create unique temporary files + +config BUSYBOX_CONFIG_PIPE_PROGRESS + bool "pipe_progress" + default n + help + Display a dot to indicate pipe activity. + +config BUSYBOX_CONFIG_READLINK + bool "readlink" + default n + help + This program reads a symbolic link and returns the name + of the file it points to + +config BUSYBOX_CONFIG_RUN_PARTS + bool "run-parts" + default y + help + run-parts is a utility designed to run all the scripts in a directory. + + It is useful to set up a directory like cron.daily, where you need to + execute all the scripts in that directory. + + In this implementation of run-parts some features (such as report mode) + are not implemented. + + Unless you know that run-parts is used in some of your scripts + you can safely say N here. + +config BUSYBOX_CONFIG_START_STOP_DAEMON + bool "start-stop-daemon" + default y + help + start-stop-daemon is used to control the creation and + termination of system-level processes, usually the ones + started during the startup of the system. + +config BUSYBOX_CONFIG_WHICH + bool "which" + default y + help + which is used to find programs in your PATH and + print out their pathnames. + +endmenu + diff --git a/package/busybox/config/editors/Config.in b/package/busybox/config/editors/Config.in new file mode 100644 index 000000000..85074b333 --- /dev/null +++ b/package/busybox/config/editors/Config.in @@ -0,0 +1,123 @@ +# +# For a description of the syntax of this configuration file, +# see scripts/kbuild/config-language.txt. +# + +menu "Editors" + +config BUSYBOX_CONFIG_AWK + bool "awk" + default y + help + Awk is used as a pattern scanning and processing language. This is + the BusyBox implementation of that programming language. + +config BUSYBOX_CONFIG_FEATURE_AWK_MATH + bool " Enable math functions (requires libm)" + default y + depends on BUSYBOX_CONFIG_AWK + help + Enable math functions of the Awk programming language. + NOTE: This will require libm to be present for linking. + +config BUSYBOX_CONFIG_PATCH + bool "patch" + default n + help + Apply a unified diff formatted patch. + +config BUSYBOX_CONFIG_SED + bool "sed" + default y + help + sed is used to perform text transformations on a file + or input from a pipeline. + +config BUSYBOX_CONFIG_VI + bool "vi" + default y + help + 'vi' is a text editor. More specifically, it is the One True + text editor . It does, however, have a rather steep + learning curve. If you are not already comfortable with 'vi' + you may wish to use something else. + +config BUSYBOX_CONFIG_FEATURE_VI_COLON + bool " Enable \":\" colon commands (no \"ex\" mode)" + default y + depends on BUSYBOX_CONFIG_VI + help + Enable a limited set of colon commands for vi. This does not + provide an "ex" mode. + +config BUSYBOX_CONFIG_FEATURE_VI_YANKMARK + bool " Enable yank/put commands and mark cmds" + default y + depends on BUSYBOX_CONFIG_VI + help + This will enable you to use yank and put, as well as mark in + busybox vi. + +config BUSYBOX_CONFIG_FEATURE_VI_SEARCH + bool " Enable search and replace cmds" + default y + depends on BUSYBOX_CONFIG_VI + help + Select this if you wish to be able to do search and replace in + busybox vi. + +config BUSYBOX_CONFIG_FEATURE_VI_USE_SIGNALS + bool " Catch signals" + default y + depends on BUSYBOX_CONFIG_VI + help + Selecting this option will make busybox vi signal aware. This will + make busybox vi support SIGWINCH to deal with Window Changes, catch + Ctrl-Z and Ctrl-C and alarms. + +config BUSYBOX_CONFIG_FEATURE_VI_DOT_CMD + bool " Remember previous cmd and \".\" cmd" + default y + depends on BUSYBOX_CONFIG_VI + help + Make busybox vi remember the last command and be able to repeat it. + +config BUSYBOX_CONFIG_FEATURE_VI_READONLY + bool " Enable -R option and \"view\" mode" + default y + depends on BUSYBOX_CONFIG_VI + help + Enable the read-only command line option, which allows the user to + open a file in read-only mode. + +config BUSYBOX_CONFIG_FEATURE_VI_SETOPTS + bool " Enable set-able options, ai ic showmatch" + default y + depends on BUSYBOX_CONFIG_VI + help + Enable the editor to set some (ai, ic, showmatch) options. + +config BUSYBOX_CONFIG_FEATURE_VI_SET + bool " Support for :set" + default y + depends on BUSYBOX_CONFIG_VI + help + Support for ":set". + +config BUSYBOX_CONFIG_FEATURE_VI_WIN_RESIZE + bool " Handle window resize" + default y + depends on BUSYBOX_CONFIG_VI + help + Make busybox vi behave nicely with terminals that get resized. + +config BUSYBOX_CONFIG_FEATURE_VI_OPTIMIZE_CURSOR + bool " Optimize cursor movement" + default y + depends on BUSYBOX_CONFIG_VI + help + This will make the cursor movement faster, but requires more memory + and it makes the applet a tiny bit larger. + +endmenu + diff --git a/package/busybox/config/findutils/Config.in b/package/busybox/config/findutils/Config.in new file mode 100644 index 000000000..fb5a8c05f --- /dev/null +++ b/package/busybox/config/findutils/Config.in @@ -0,0 +1,133 @@ +# +# For a description of the syntax of this configuration file, +# see scripts/kbuild/config-language.txt. +# + +menu "Finding Utilities" + +config BUSYBOX_CONFIG_FIND + bool "find" + default y + help + find is used to search your system to find specified files. + +config BUSYBOX_CONFIG_FEATURE_FIND_MTIME + bool " Enable modified time matching (-mtime) option" + default n + depends on BUSYBOX_CONFIG_FIND + help + Allow searching based on the modification time of + files. + +config BUSYBOX_CONFIG_FEATURE_FIND_PERM + bool " Enable permissions matching (-perm) option" + default y + depends on BUSYBOX_CONFIG_FIND + help + Enable searching based on file permissions. + +config BUSYBOX_CONFIG_FEATURE_FIND_TYPE + bool " Enable filetype matching (-type) option" + default y + depends on BUSYBOX_CONFIG_FIND + help + Enable searching based on file type (file, + directory, socket, device, etc.). + +config BUSYBOX_CONFIG_FEATURE_FIND_XDEV + bool " Enable stay in filesystem (-xdev) option" + default y + depends on BUSYBOX_CONFIG_FIND + help + This option will allow find to restrict searches to a single + filesystem. + +config BUSYBOX_CONFIG_FEATURE_FIND_NEWER + bool " Enable -newer option for comparing file mtimes" + default n + depends on BUSYBOX_CONFIG_FIND + help + Support the 'find -newer' option for finding any files which have + a modified time that is more recent than the specified FILE. + +config BUSYBOX_CONFIG_FEATURE_FIND_INUM + bool " Enable inode number matching (-inum) option" + default n + depends on BUSYBOX_CONFIG_FIND + help + Support the 'find -inum' option for searching by inode number. + +config BUSYBOX_CONFIG_GREP + bool "grep" + default y + help + grep is used to search files for a specified pattern. + +config BUSYBOX_CONFIG_FEATURE_GREP_EGREP_ALIAS + bool " Support extended regular expressions (egrep & grep -E)" + default y + depends on BUSYBOX_CONFIG_GREP + help + Enabled support for extended regular expressions. Extended + regular expressions allow for alternation (foo|bar), grouping, + and various repetition operators. + +config BUSYBOX_CONFIG_FEATURE_GREP_FGREP_ALIAS + 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 + regular expressions. + 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)" + default y + depends on BUSYBOX_CONFIG_GREP + help + Print the specified number of leading (-B) and/or trailing (-A) + context surrounding our matching lines. + Print the specified number of context lines (-C). + +config BUSYBOX_CONFIG_XARGS + bool "xargs" + default y + help + xargs is used to execute a specified command on + every item from standard input. + +config BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_CONFIRMATION + bool " Enable prompt and confirmation option -p" + default y + depends on BUSYBOX_CONFIG_XARGS + help + Support prompt the user about whether to run each command + line and read a line from the terminal. + +config BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_QUOTES + bool " Enable support single and double quotes and backslash" + default y + depends on BUSYBOX_CONFIG_XARGS + help + Default xargs unsupport single and double quotes + and backslash for can use aruments with spaces. + +config BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_TERMOPT + bool " Enable support options -x" + default y + depends on BUSYBOX_CONFIG_XARGS + help + Enable support exit if the size (see the -s or -n option) + is exceeded. + +config BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM + bool " Enable options -0" + default y + depends on BUSYBOX_CONFIG_XARGS + help + Enable input filenames are terminated by a null character + instead of by whitespace, and the quotes and backslash + are not special. + +endmenu diff --git a/package/busybox/config/init/Config.in b/package/busybox/config/init/Config.in new file mode 100644 index 000000000..087d836bf --- /dev/null +++ b/package/busybox/config/init/Config.in @@ -0,0 +1,72 @@ +# +# For a description of the syntax of this configuration file, +# see scripts/kbuild/config-language.txt. +# + +menu "Init Utilities" + +config BUSYBOX_CONFIG_INIT + bool "init" + default y + help + init is the first program run when the system boots. + +config BUSYBOX_CONFIG_FEATURE_USE_INITTAB + 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?" + default n + depends on BUSYBOX_CONFIG_INIT + help + Allow init to be called from an initrd as linuxrc. + +config BUSYBOX_CONFIG_FEATURE_INIT_COREDUMPS + bool " Support dumping core for child processes (debugging only)?" + default n + depends on BUSYBOX_CONFIG_INIT + help + If this option is enabled and the file /.init_enable_core + exists, then init will call setrlimit() to allow unlimited + 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" + default n + help + Stop all processes and (try to) power off the system. + +config BUSYBOX_CONFIG_REBOOT + bool "reboot" + default y + help + Stop all processes and reboot the system. + +config BUSYBOX_CONFIG_MESG + bool "mesg" + default y + help + Mesg controls access to your terminal by others. It is typically + used to allow or disallow other users to write to your terminal + +endmenu + diff --git a/package/busybox/config/loginutils/Config.in b/package/busybox/config/loginutils/Config.in new file mode 100644 index 000000000..e42140ac2 --- /dev/null +++ b/package/busybox/config/loginutils/Config.in @@ -0,0 +1,161 @@ +# +# For a description of the syntax of this configuration file, +# see scripts/kbuild/config-language.txt. +# + +menu "Login/Password Management Utilities" + +config BUSYBOX_CONFIG_USE_BB_PWD_GRP + bool "Use internal password and group functions rather than system functions" + default n + help + If you leave this disabled, busybox will use the system's password + and group 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 password and group 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/password, /etc/group files (and your system will be + 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 remote LDAP password servers and whatnot. And if you + want hostname resolution to work with glibc, you still need the + /lib/libnss_* libraries. + + If you enable this option, it will add about 1.5k to busybox. + + +config BUSYBOX_CONFIG_ADDGROUP + bool "addgroup" + default n + help + Utility for creating a new group account. + +config BUSYBOX_CONFIG_DELGROUP + bool "delgroup" + default n + help + Utility for deleting a group account. + +config BUSYBOX_CONFIG_ADDUSER + bool "adduser" + default n + help + Utility for creating a new user account. + +config BUSYBOX_CONFIG_DELUSER + bool "deluser" + default n + help + Utility for deleting a user account. + +config BUSYBOX_CONFIG_GETTY + bool "getty" + default n + 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 + 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. + +config BUSYBOX_CONFIG_LOGIN + bool "login" + default n + select BUSYBOX_CONFIG_FEATURE_SUID + help + login is used when signing onto a system. + + Note that Busybox binary must be setuid root for this applet to + work properly. + +config BUSYBOX_CONFIG_FEATURE_SECURETTY + bool " Support for /etc/securetty" + default n + depends on BUSYBOX_CONFIG_LOGIN + help + The file /etc/securetty is used by (some versions of) login(1). + The file contains the device names of tty lines (one per line, + without leading /dev/) on which root is allowed to login. + +config BUSYBOX_CONFIG_PASSWD + bool "passwd" + default n + select BUSYBOX_CONFIG_FEATURE_SUID + help + passwd changes passwords for user and group accounts. A normal user + may only change the password for his/her own account, the super user + may change the password for any account. The administrator of a group + may change the password for the group. + + Note that Busybox binary must be setuid root for this applet to + work properly. + +config BUSYBOX_CONFIG_SU + bool "su" + default n + select BUSYBOX_CONFIG_FEATURE_SUID + help + su is used to become another user during a login session. + Invoked without a username, su defaults to becoming the super user. + + Note that Busybox binary must be setuid root for this applet to + work properly. + +config BUSYBOX_CONFIG_SULOGIN + bool "sulogin" + default n + help + sulogin is invoked when the system goes into single user + mode (this is done through an entry in inittab). + +config BUSYBOX_CONFIG_VLOCK + bool "vlock" + default n + select BUSYBOX_CONFIG_FEATURE_SUID + help + Build the "vlock" applet which allows you to lock (virtual) terminals. + + 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 new file mode 100644 index 000000000..072993b28 --- /dev/null +++ b/package/busybox/config/miscutils/Config.in @@ -0,0 +1,201 @@ +# +# For a description of the syntax of this configuration file, +# see scripts/kbuild/config-language.txt. +# + +menu "Miscellaneous Utilities" + +config BUSYBOX_CONFIG_ADJTIMEX + bool "adjtimex" + default n + help + Adjtimex reads and optionally sets adjustment parameters for + the Linux clock adjustment algorithm. + +config BUSYBOX_CONFIG_CROND + bool "crond" + default y + select BUSYBOX_CONFIG_FEATURE_SUID + help + Crond is a background daemon that parses individual crontab + files and executes commands on behalf of the users in question. + This is a port of dcron from slackware. It uses files of the + format /var/spool/cron/crontabs/ files, for example: + $ cat /var/spool/cron/crontabs/root + # Run daily cron jobs at 4:40 every day: + 40 4 * * * /etc/cron/daily > /dev/null 2>&1 + Note that Busybox binary must be setuid root for this applet to + work properly. + +config BUSYBOX_CONFIG_FEATURE_CROND_CALL_SENDMAIL + bool " Using /usr/sbin/sendmail?" + default n + depends on BUSYBOX_CONFIG_CROND + help + Support calling /usr/sbin/sendmail for send cmd outputs. + +config BUSYBOX_CONFIG_CRONTAB + bool "crontab" + default y + help + Crontab manipulates the crontab for a particular user. Only + the superuser may specify a different user and/or crontab directory. + +config BUSYBOX_CONFIG_DC + bool "dc" + default n + help + Dc is a reverse-polish desk calculator which supports unlimited + precision arithmetic. + +config BUSYBOX_CONFIG_DEVFSD + bool "devfsd" + default n + help + Provides compatibility with old device names on a devfs systems. + You should set it to true if you have devfs enabled. + The following keywords in devsfd.conf are supported: + "CLEAR_CONFIG", "INCLUDE", "OPTIONAL_INCLUDE", "RESTORE", + "PERMISSIONS", "EXECUTE", "COPY", "IGNORE", + "MKOLDCOMPAT", "MKNEWCOMPAT","RMOLDCOMPAT", "RMNEWCOMPAT". + + But only if they are written UPPERCASE!!!!!!!! + +config BUSYBOX_CONFIG_DEVFSD_MODLOAD + bool "Adds support for MODLOAD keyword in devsfd.conf" + default n + depends on BUSYBOX_CONFIG_DEVFSD + help + This actually doesn't work with busybox modutils but needs the real modutils. + +config BUSYBOX_CONFIG_DEVFSD_FG_NP + bool "Enables the -fg and -np options" + default n + depends on BUSYBOX_CONFIG_DEVFSD + help + -fg Run the daemon in the foreground. + -np Exit after parsing the configuration file. Do not poll for events. + +config BUSYBOX_CONFIG_DEVFSD_VERBOSE + bool "Increases logging (and size)" + default n + depends on BUSYBOX_CONFIG_DEVFSD + help + Increases logging to stderr or syslog. + +config BUSYBOX_CONFIG_LAST + bool "last" + default n + select BUSYBOX_CONFIG_FEATURE_U_W_TMP + help + 'last' displays a list of the last users that logged into the system. + +config BUSYBOX_CONFIG_HDPARM + bool "hdparm" + default n + help + Get/Set hard drive parameters. Primarily intended for ATA + drives. Adds about 13k (or around 30k if you enable the + BUSYBOX_CONFIG_FEATURE_HDPARM_GET_IDENTITY option).... + +config BUSYBOX_CONFIG_FEATURE_HDPARM_GET_IDENTITY + bool " Support obtaining detailed information directly from drives" + default n + depends on BUSYBOX_CONFIG_HDPARM + help + Enables the -I and -Istdin options to obtain detailed information + directly from drives about their capabilities and supported ATA + feature set. Enabling this option will add about 16k... + +config BUSYBOX_CONFIG_FEATURE_HDPARM_HDIO_SCAN_HWIF + bool " Register an IDE interface (DANGEROUS)" + default n + depends on BUSYBOX_CONFIG_HDPARM + help + Enables the 'hdparm -R' option to register an IDE interface. + This is dangerous stuff, so you should probably say N. + +config BUSYBOX_CONFIG_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF + bool " Un-register an IDE interface (DANGEROUS)" + default n + depends on BUSYBOX_CONFIG_HDPARM + help + Enables the 'hdparm -U' option to un-register an IDE interface. + This is dangerous stuff, so you should probably say N. + +config BUSYBOX_CONFIG_FEATURE_HDPARM_HDIO_DRIVE_RESET + bool " perform device reset (DANGEROUS)" + default n + depends on BUSYBOX_CONFIG_HDPARM + help + Enables the 'hdparm -w' option to perform a device reset. + This is dangerous stuff, so you should probably say N. + +config BUSYBOX_CONFIG_FEATURE_HDPARM_HDIO_TRISTATE_HWIF + bool " tristate device for hotswap (DANGEROUS)" + default n + depends on BUSYBOX_CONFIG_HDPARM + help + Enables the 'hdparm -x' option to tristate device for hotswap, + and the '-b' option to get/set bus state. This is dangerous + stuff, so you should probably say N. + +config BUSYBOX_CONFIG_FEATURE_HDPARM_HDIO_GETSET_DMA + bool " get/set using_dma flag (DANGEROUS)" + default n + depends on BUSYBOX_CONFIG_HDPARM + help + Enables the 'hdparm -d' option to get/set using_dma flag. + This is dangerous stuff, so you should probably say N. + +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. + +config BUSYBOX_CONFIG_MT + bool "mt" + default n + help + mt is used to control tape devices. You can use the mt utility + to advance or rewind a tape past a specified number of archive + files on the tape. + +config BUSYBOX_CONFIG_RX + bool "rx" + default n + help + Receive files using the Xmodem protocol. + +config BUSYBOX_CONFIG_STRINGS + bool "strings" + default y + help + strings prints the printable character sequences for each file + specified. + +config BUSYBOX_CONFIG_TIME + bool "time" + default y + help + The time command runs the specified program with the given arguments. + When the command finishes, time writes a message to standard output + giving timing statistics about this program run. + +config BUSYBOX_CONFIG_WATCHDOG + bool "watchdog" + default n + help + The watchdog utility is used with hardware or software watchdog + device drivers. It opens the specified watchdog device special file + and periodically writes a magic character to the device. If the + watchdog applet ever fails to write the magic character within a + certain amount of time, the watchdog device assumes the system has + hung, and will cause the hardware to reboot. + +endmenu + diff --git a/package/busybox/config/modutils/Config.in b/package/busybox/config/modutils/Config.in new file mode 100644 index 000000000..536236b7c --- /dev/null +++ b/package/busybox/config/modutils/Config.in @@ -0,0 +1,113 @@ +# +# For a description of the syntax of this configuration file, +# see scripts/kbuild/config-language.txt. +# + +menu "Linux Module Utilities" + +config BUSYBOX_CONFIG_INSMOD + bool "insmod" + default y + 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 n + 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" + default n + depends on BUSYBOX_CONFIG_INSMOD && BUSYBOX_CONFIG_FEATURE_2_4_MODULES + help + Support checking of versions for modules. This is used to + 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" + default n + depends on BUSYBOX_CONFIG_INSMOD && BUSYBOX_CONFIG_FEATURE_2_4_MODULES + help + By adding module symbols to the kernel symbol table, Oops messages + occuring within kernel modules can be properly debugged. By enabling + this feature, module symbols will always be added to the kernel symbol + table for properly debugging support. If you are not interested in + Oops messages from kernel modules, say N. + +config BUSYBOX_CONFIG_FEATURE_INSMOD_LOADINKMEM + bool " In kernel memory optimization (uClinux only)" + default n + depends on BUSYBOX_CONFIG_INSMOD && BUSYBOX_CONFIG_FEATURE_2_4_MODULES + help + This is a special uClinux only memory optimization that lets insmod + load the specified kernel module directly into kernel space, reducing + memory usage by preventing the need for two copies of the module + being loaded into memory. + +config BUSYBOX_CONFIG_FEATURE_INSMOD_LOAD_MAP + bool " Enable load map (-m) option" + default n + depends on BUSYBOX_CONFIG_INSMOD && BUSYBOX_CONFIG_FEATURE_2_4_MODULES + help + Enabling this, one would be able to get a load map + output on stdout. This makes kernel module debugging + easier. + If you don't plan to debug kernel modules, you + don't need this option. + +config BUSYBOX_CONFIG_FEATURE_INSMOD_LOAD_MAP_FULL + bool " Symbols in load map" + default n + depends on BUSYBOX_CONFIG_FEATURE_INSMOD_LOAD_MAP + help + Without this option, -m will only output section + load map. With this option, -m will also output + symbols load map. + +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_MODPROBE + bool "modprobe" + default n + help + Handle the loading of modules, and their dependancies on a high + level. + +config BUSYBOX_CONFIG_RMMOD + bool "rmmod" + default y + help + rmmod is used to unload specified modules from the kernel. + +config BUSYBOX_CONFIG_FEATURE_CHECK_TAINTED_MODULE + bool "Support tainted module checking with new kernels" + default n + depends on BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_LSMOD + help + Support checking for tainted modules. These are usually binary + only modules that will make the linux-kernel list ignore your + support request. + This option is required to support GPLONLY modules. + + +endmenu + diff --git a/package/busybox/config/networking/Config.in b/package/busybox/config/networking/Config.in new file mode 100644 index 000000000..5af65ef4a --- /dev/null +++ b/package/busybox/config/networking/Config.in @@ -0,0 +1,634 @@ +# +# For a description of the syntax of this configuration file, +# see scripts/kbuild/config-language.txt. +# + +menu "Networking Utilities" + +config BUSYBOX_CONFIG_FEATURE_IPV6 + bool "Enable IPv6 support" + default y + help + Enable IPv6 support to busybox. This makes applets that talk IP + able to work with IPv6. + +config BUSYBOX_CONFIG_ARPING + bool "arping" + default y + help + Ping hosts by ARP packets + +config BUSYBOX_CONFIG_FTPGET + bool "ftpget" + default n + help + Retrieve a remote file via FTP. + +config BUSYBOX_CONFIG_FTPPUT + bool "ftpput" + default n + help + Store a remote file via FTP. + +config BUSYBOX_CONFIG_HOSTNAME + bool "hostname" + default n + help + Show or set the system's host name + +config BUSYBOX_CONFIG_HTTPD + bool "httpd" + default y + help + Serve web pages via an HTTP server. + +config BUSYBOX_CONFIG_FEATURE_HTTPD_USAGE_FROM_INETD_ONLY + bool " Support using httpd only from inetd" + default n + depends on BUSYBOX_CONFIG_HTTPD + help + This option disables uid and port options for the httpd applet + but requires inetd server daemon. + +config BUSYBOX_CONFIG_FEATURE_HTTPD_BASIC_AUTH + bool " Enable Basic http Authentication" + default y + depends on BUSYBOX_CONFIG_HTTPD + help + Utilizes password settings from /etc/httpd.conf for basic + authentication on a per url basis. + +config BUSYBOX_CONFIG_FEATURE_HTTPD_AUTH_MD5 + bool " Support MD5 crypted passwords for http Authentication" + default y + depends on BUSYBOX_CONFIG_FEATURE_HTTPD_BASIC_AUTH + help + 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" + default y + depends on BUSYBOX_CONFIG_HTTPD + help + This option enables processing of SIGHUP to reload cached + configuration settings. + +config BUSYBOX_CONFIG_FEATURE_HTTPD_SETUID + bool " Enable support -u option" + default n + depends on BUSYBOX_CONFIG_HTTPD + help + This option allows the server to run as a specific user + rather than defaulting to the user that starts the server. + Use of this option requires special privileges to change to a + different user. +endif + +config BUSYBOX_CONFIG_FEATURE_HTTPD_CONFIG_WITH_MIME_TYPES + bool " Support loading additional MIME types at run-time" + default y + depends on BUSYBOX_CONFIG_HTTPD + help + This option enables support for additional MIME types at + run-time to be specified in the configuration file. + +config BUSYBOX_CONFIG_FEATURE_HTTPD_CGI + bool " Support Common Gateway Interface (CGI)" + default y + depends on BUSYBOX_CONFIG_HTTPD + help + This option allows scripts and executables to be invoked + when specific urls are requested. + +config BUSYBOX_CONFIG_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV + bool " Support the REMOTE_PORT environment variable for CGI" + default y + depends on BUSYBOX_CONFIG_FEATURE_HTTPD_CGI + help + Use of this option can assist scripts in generating + references that contain a unique port number. + +config BUSYBOX_CONFIG_FEATURE_HTTPD_ENCODE_URL_STR + bool " Enable the -e option for shell script CGI simplification." + default y + depends on BUSYBOX_CONFIG_HTTPD + help + After set, this option allows html encoding arbitrary + strings for display of the browser. Output goes to stdout. + For example, httpd -e "" as + "<Hello World>". + +config BUSYBOX_CONFIG_IFCONFIG + bool "ifconfig" + default y + help + Ifconfig is used to configure the kernel-resident network interfaces. + +config BUSYBOX_CONFIG_FEATURE_IFCONFIG_STATUS + bool " Enable status reporting output (+7k)" + default y + depends on BUSYBOX_CONFIG_IFCONFIG + help + If ifconfig is called with no arguments it will display the status + of the currently active interfaces. + +config BUSYBOX_CONFIG_FEATURE_IFCONFIG_SLIP + bool " Enable slip-specific options \"keepalive\" and \"outfill\"" + default n + depends on BUSYBOX_CONFIG_IFCONFIG + help + Allow "keepalive" and "outfill" support for SLIP. If you're not + planning on using serial lines, leave this unchecked. + +config BUSYBOX_CONFIG_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ + bool " Enable options \"mem_start\", \"io_addr\", and \"irq\"" + default n + depends on BUSYBOX_CONFIG_IFCONFIG + help + Allow the start address for shared memory, start address for I/O, + and/or the interrupt line used by the specified device. + +config BUSYBOX_CONFIG_FEATURE_IFCONFIG_HW + bool " Enable option \"hw\" (ether only)" + default y + depends on BUSYBOX_CONFIG_IFCONFIG + help + Set the hardware address of this interface, if the device driver + supports this operation. Currently, we only support the 'ether' + class. + +config BUSYBOX_CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS + bool " Set the broadcast automatically" + default y + depends on BUSYBOX_CONFIG_IFCONFIG + help + Setting this will make ifconfig attempt to find the broadcast + automatically if the value '+' is used. + +config BUSYBOX_CONFIG_IFUPDOWN + bool "ifupdown" + default n + help + Activate or deactivate the specified interfaces. This applet makes + use of either "ifconfig" and "route" or the "ip" command to actually + configure network interfaces. Therefore, you will probably also want + to enable either BUSYBOX_CONFIG_IFCONFIG and BUSYBOX_CONFIG_ROUTE, or enable + BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP and the various BUSYBOX_CONFIG_IP options. Of + course you could use non-busybox versions of these programs, so + against my better judgement (since this will surely result in plenty + of support questions on the mailing list), I do not force you to + enable these additional options. It is up to you to supply either + "ifconfig" and "route" or the "ip" command, either via busybox or via + standalone utilities. + +config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP + bool " Use ip applet" + default n + depends on BUSYBOX_CONFIG_IFUPDOWN + help + Use the iproute "ip" command to implement "ifup" and "ifdown", rather + than the default of using the older 'ifconfig' and 'route' utilities. + +config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN + bool " Use busybox ip applet" + default n + depends on BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP + select BUSYBOX_CONFIG_IP + select BUSYBOX_CONFIG_FEATURE_IP_ADDRESS + select BUSYBOX_CONFIG_FEATURE_IP_LINK + select BUSYBOX_CONFIG_FEATURE_IP_ROUTE + help + Use the busybox iproute "ip" applet to implement "ifupdown". + + If leave this disabled, you must install the full-blown iproute2 + utility or the "ifup" and "ifdown" applets will not work. + +config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN + bool " Use busybox ifconfig and route applets" + default n + depends on BUSYBOX_CONFIG_IFUPDOWN && !CONFIG_FEATURE_IFUPDOWN_IP + select BUSYBOX_CONFIG_IFCONFIG + select BUSYBOX_CONFIG_ROUTE + help + Use the busybox iproute "ifconfig" and "route" applets to + implement the "ifup" and "ifdown" utilities. + + If leave this disabled, you must install the full-blown ifconfig + and route utilities, or the "ifup" and "ifdown" applets will not + work. + +config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IPV4 + bool " Enable support for IPv4" + default n + depends on BUSYBOX_CONFIG_IFUPDOWN + help + If you want busybox to talk IPv4, leave this on. + +config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IPV6 + bool " Enable support for IPv6" + default n + depends on BUSYBOX_CONFIG_IFUPDOWN + help + If you need support for IPv6, turn this option on. + +config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IPX + bool " Enable support for IPX" + default n + depends on BUSYBOX_CONFIG_IFUPDOWN + help + If this option is selected you can use busybox to work with IPX + networks. + +config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_MAPPING + bool " Enable mapping support" + default n + depends on BUSYBOX_CONFIG_IFUPDOWN + help + This enables support for the "mapping" stanza, unless you have + a weird network setup you don't need it. + +config BUSYBOX_CONFIG_INETD + bool "inetd" + default n + help + Internet superserver daemon + +config BUSYBOX_CONFIG_FEATURE_INETD_SUPPORT_BILTIN_ECHO + bool " Support echo service" + default n + depends on BUSYBOX_CONFIG_INETD + help + Echo received data internal inetd service + +config BUSYBOX_CONFIG_FEATURE_INETD_SUPPORT_BILTIN_DISCARD + bool " Support discard service" + default n + depends on BUSYBOX_CONFIG_INETD + help + Internet /dev/null internal inetd service + +config BUSYBOX_CONFIG_FEATURE_INETD_SUPPORT_BILTIN_TIME + bool " Support time service" + default n + depends on BUSYBOX_CONFIG_INETD + help + Return 32 bit time since 1900 internal inetd service + +config BUSYBOX_CONFIG_FEATURE_INETD_SUPPORT_BILTIN_DAYTIME + bool " Support daytime service" + default n + depends on BUSYBOX_CONFIG_INETD + help + Return human-readable time internal inetd service + +config BUSYBOX_CONFIG_FEATURE_INETD_SUPPORT_BILTIN_CHARGEN + bool " Support chargen service" + default n + depends on BUSYBOX_CONFIG_INETD + help + Familiar character generator internal inetd service + + +config BUSYBOX_CONFIG_IP + bool "ip" + default n + help + The "ip" applet is a TCP/IP interface configuration and routing + utility. You generally don't need "ip" to use busybox with + TCP/IP. + +if BUSYBOX_CONFIG_IP && BUSYBOX_CONFIG_IPADDR + config BUSYBOX_CONFIG_FEATURE_IP_ADDRESS + default n + comment " address (forced enabled for ipaddr)" +endif +if ! (CONFIG_IP && BUSYBOX_CONFIG_IPADDR) + config BUSYBOX_CONFIG_FEATURE_IP_ADDRESS + bool " address" + default n + depends on BUSYBOX_CONFIG_IP + help + Address manipulation support for the "ip" applet. +endif + +if BUSYBOX_CONFIG_IP && BUSYBOX_CONFIG_IPLINK + config BUSYBOX_CONFIG_FEATURE_IP_LINK + default n + comment " link (forced enabled for iplink)" +endif +if !(CONFIG_IP && BUSYBOX_CONFIG_IPLINK) + config BUSYBOX_CONFIG_FEATURE_IP_LINK + bool " link" + default n + depends on BUSYBOX_CONFIG_IP + help + Configure network devices with "ip". +endif + +if BUSYBOX_CONFIG_IP && BUSYBOX_CONFIG_IPROUTE + config BUSYBOX_CONFIG_FEATURE_IP_ROUTE + default n + comment " route (forced enabled for iproute)" +endif +if !(CONFIG_IP && BUSYBOX_CONFIG_IPROUTE) + config BUSYBOX_CONFIG_FEATURE_IP_ROUTE + bool " route" + default n + depends on BUSYBOX_CONFIG_IP + help + Add support for routing table management to "ip". +endif + +if BUSYBOX_CONFIG_IP && BUSYBOX_CONFIG_IPTUNNEL + config BUSYBOX_CONFIG_FEATURE_IP_TUNNEL + default n + comment " tunnel (forced enabled for iptunnel)" +endif +if !(CONFIG_IP && BUSYBOX_CONFIG_IPTUNNEL) + config BUSYBOX_CONFIG_FEATURE_IP_TUNNEL + bool " tunnel" + default n + depends on BUSYBOX_CONFIG_IP + help + Add support for tunneling commands to "ip". +endif + +config BUSYBOX_CONFIG_IPCALC + bool "ipcalc" + default y + help + ipcalc takes an IP address and netmask and calculates the + resulting broadcast, network, and host range. + +config BUSYBOX_CONFIG_FEATURE_IPCALC_FANCY + bool " Fancy IPCALC, more options, adds 1 kbyte" + default y + depends on BUSYBOX_CONFIG_IPCALC + help + Adds the options hostname, prefix and silent to the output of "ipcalc". + +config BUSYBOX_CONFIG_IPADDR + bool "ipaddr" + default n + help + Equivalent to selecting address support to "ip", above. + +config BUSYBOX_CONFIG_IPLINK + bool "iplink" + default n + help + Equivalent to selecting link support to "ip", above. + +config BUSYBOX_CONFIG_IPROUTE + bool "iproute" + default n + help + Equivalent to selecting route support to "ip", above. + +config BUSYBOX_CONFIG_IPTUNNEL + bool "iptunnel" + default n + help + Equivalent to selecting tunnel support to "ip", above. + +config BUSYBOX_CONFIG_NAMEIF + bool "nameif" + default n + help + nameif is used to rename network interface by its MAC address. + Renamed interfaces MUST be in the down state. + It is possible to use a file (default: /etc/mactab) + with list of new interface names and MACs. + Maximum interface name length: IF_NAMESIZE = 16 + File fields are separated by space or tab. + File format: + # Comment + new_interface_name XX:XX:XX:XX:XX:XX + +config BUSYBOX_CONFIG_NC + bool "nc" + default y + help + A simple Unix utility which reads and writes data across network + connections. + +config BUSYBOX_CONFIG_NETSTAT + bool "netstat" + default y + help + netstat prints information about the Linux networking subsystem. + +config BUSYBOX_CONFIG_NSLOOKUP + bool "nslookup" + default y + help + nslookup is a tool to query Internet name servers. + +config BUSYBOX_CONFIG_PING + bool "ping" + default y + help + ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to + elicit an ICMP ECHO_RESPONSE from a host or gateway. + +config BUSYBOX_CONFIG_FEATURE_FANCY_PING + bool " Enable fancy ping output" + default y + depends on BUSYBOX_CONFIG_PING + help + Make the output from the ping applet include statistics, and at the + same time provide full support for ICMP packets. + +config BUSYBOX_CONFIG_PING6 + bool "ping6" + default y + depends on BUSYBOX_CONFIG_FEATURE_IPV6 + help + This will give you a ping that can talk IPv6. + +config BUSYBOX_CONFIG_FEATURE_FANCY_PING6 + bool " Enable fancy ping6 output" + default y + depends on BUSYBOX_CONFIG_PING6 + help + Make the output from the ping6 applet include statistics, and at the + same time provide full support for ICMP packets. + +config BUSYBOX_CONFIG_ROUTE + bool "route" + default y + help + Route displays or manipulates the kernel's IP routing tables. + +config BUSYBOX_CONFIG_TELNET + bool "telnet" + default n + help + Telnet is an interface to the TELNET protocol, but is also commonly + used to test other simple protocols. + +config BUSYBOX_CONFIG_FEATURE_TELNET_TTYPE + bool " Pass TERM type to remote host" + default n + depends on BUSYBOX_CONFIG_TELNET + help + Setting this option will forward the TERM environment variable to the + remote host you are connecting to. This is useful to make sure that + things like ANSI colors and other control sequences behave. + +config BUSYBOX_CONFIG_FEATURE_TELNET_AUTOLOGIN + bool " Pass USER type to remote host" + default n + depends on BUSYBOX_CONFIG_TELNET + help + Setting this option will forward the USER environment variable to the + remote host you are connecting to. This is useful when you need to + log into a machine without telling the username (autologin). This + option enables `-a' and `-l USER' arguments. + +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 + sends passwords in plain text. If you can't afford the space for an + SSH daemon and you trust your network, you may say 'y' here. As a + more secure alternative, you should seriously consider installing the + very small Dropbear SSH daemon instead: + http://matt.ucc.asn.au/dropbear/dropbear.html + + Note that for busybox telnetd to work you need several things: + First of all, your kernel needs: + BUSYBOX_CONFIG_UNIX98_PTYS=y + BUSYBOX_CONFIG_DEVPTS_FS=y + + Next, you need a /dev/pts directory on your root filesystem: + + $ ls -ld /dev/pts + drwxr-xr-x 2 root root 0 Sep 23 13:21 /dev/pts/ + + Next you need the pseudo terminal master multiplexer /dev/ptmx: + + $ ls -la /dev/ptmx + crw-rw-rw- 1 root tty 5, 2 Sep 23 13:55 /dev/ptmx + + Any /dev/ttyp[0-9]* files you may have can be removed. + Next, you need to mount the devpts filesystem on /dev/pts using: + + mount -t devpts devpts /dev/pts + + You need to be sure that Busybox has BUSYBOX_CONFIG_LOGIN and + BUSYBOX_CONFIG_FEATURE_SUID enabled. And finally, you should make + certain that Busybox has been installed setuid root: + + chown root.root /bin/busybox + chmod 4755 /bin/busybox + + with all that done, telnetd _should_ work.... + + +config BUSYBOX_CONFIG_FEATURE_TELNETD_INETD + bool " Support call from inetd only" + default n + depends on BUSYBOX_CONFIG_TELNETD + help + Selecting this will make telnetd only callable from inetd, + removing the standalone support. + +config BUSYBOX_CONFIG_TFTP + bool "tftp" + default n + help + This enables the Trivial File Transfer Protocol client program. TFTP + is usually used for simple, small transfers such as a root image + for a network-enabled bootloader. + +config BUSYBOX_CONFIG_FEATURE_TFTP_GET + bool " Enable \"get\" command" + default n + depends on BUSYBOX_CONFIG_TFTP + help + Add support for the GET command within the TFTP client. This allows + a client to retrieve a file from a TFTP server. + +config BUSYBOX_CONFIG_FEATURE_TFTP_PUT + bool " Enable \"put\" command" + default n + depends on BUSYBOX_CONFIG_TFTP + help + Add support for the PUT command within the TFTP client. This allows + a client to transfer a file to a TFTP server. + +config BUSYBOX_CONFIG_FEATURE_TFTP_BLOCKSIZE + bool " Enable \"blocksize\" command" + default n + depends on BUSYBOX_CONFIG_TFTP + help + Allow the client to specify the desired block size for transfers. + +config BUSYBOX_CONFIG_FEATURE_TFTP_DEBUG + bool " Enable debug" + default n + depends on BUSYBOX_CONFIG_TFTP + help + Enable debug settings for tftp. This is useful if you're running + into problems with tftp as the protocol doesn't help you much when + you run into problems. + +config BUSYBOX_CONFIG_TRACEROUTE + bool "traceroute" + default y + help + Utility to trace the route of IP packets + +config BUSYBOX_CONFIG_FEATURE_TRACEROUTE_VERBOSE + bool " Enable verbose output" + default y + depends on BUSYBOX_CONFIG_TRACEROUTE + help + Add some verbosity to traceroute. This includes amongst other things + hostnames and ICMP response types. + +config BUSYBOX_CONFIG_VCONFIG + bool "vconfig" + default y + help + Creates, removes, and configures VLAN interfaces + +config BUSYBOX_CONFIG_WGET + bool "wget" + default y + help + wget is a utility for non-interactive download of files from HTTP, + HTTPS, and FTP servers. + +config BUSYBOX_CONFIG_FEATURE_WGET_STATUSBAR + bool " Enable a nifty process meter (+2k)" + default y + depends on BUSYBOX_CONFIG_WGET + help + Enable the transfer progress bar for wget transfers. + +config BUSYBOX_CONFIG_FEATURE_WGET_AUTHENTICATION + bool " Enable HTTP authentication" + default y + depends on BUSYBOX_CONFIG_WGET + help + Support authenticated HTTP transfers. + +config BUSYBOX_CONFIG_FEATURE_WGET_IP6_LITERAL + bool " Enable IPv6 literal addresses" + default y + depends on BUSYBOX_CONFIG_WGET + help + Support IPv6 address literal notation in URLs. + +source package/busybox/config/networking/udhcp/Config.in + +endmenu + diff --git a/package/busybox/config/networking/udhcp/Config.in b/package/busybox/config/networking/udhcp/Config.in new file mode 100644 index 000000000..d15128ce3 --- /dev/null +++ b/package/busybox/config/networking/udhcp/Config.in @@ -0,0 +1,62 @@ +# +# For a description of the syntax of this configuration file, +# see scripts/kbuild/config-language.txt. +# + +menu "udhcp Server/Client" + +config BUSYBOX_CONFIG_UDHCPD + bool "udhcp Server (udhcpd)" + default n + help + uDHCPd is a DHCP server geared primarily toward embedded systems, + while striving to be fully functional and RFC compliant. + + See http://udhcp.busybox.net for further details. + +config BUSYBOX_CONFIG_UDHCPC + bool "udhcp Client (udhcpc)" + default y + help + uDHCPc is a DHCP client geared primarily toward embedded systems, + while striving to be fully functional and RFC compliant. + + The udhcp client negotiates a lease with the DHCP server and + notifies a set of scripts when a lease is obtained or lost. + + See http://udhcp.busybox.net for further details. + +config BUSYBOX_CONFIG_DUMPLEASES + bool "Lease display utility (dumpleases)" + default n + depends on BUSYBOX_CONFIG_UDHCPD + help + dumpleases displays the leases written out by the udhcpd server. + Lease times are stored in the file by time remaining in lease, or + by the absolute time that it expires in seconds from epoch. + + See http://udhcp.busybox.net for further details. + +config BUSYBOX_CONFIG_FEATURE_UDHCP_SYSLOG + bool " Log udhcp messages to syslog (instead of stdout)" + default n + depends on BUSYBOX_CONFIG_UDHCPD || BUSYBOX_CONFIG_UDHCPC + help + If selected, udhcpd will log all its messages to syslog, otherwise, + it will attempt to log them to stdout. + + See http://udhcp.busybox.net for further details. + +config BUSYBOX_CONFIG_FEATURE_UDHCP_DEBUG + bool " Compile udhcp with noisy debugging messages" + default n + depends on BUSYBOX_CONFIG_UDHCPD || BUSYBOX_CONFIG_UDHCPC + help + If selected, udhcpd will output extra debugging output. If using + this option, compile uDHCP with "-g", and do not fork the daemon to + the background. + + See http://udhcp.busybox.net for further details. + +endmenu + diff --git a/package/busybox/config/procps/Config.in b/package/busybox/config/procps/Config.in new file mode 100644 index 000000000..6d1618099 --- /dev/null +++ b/package/busybox/config/procps/Config.in @@ -0,0 +1,87 @@ +# +# For a description of the syntax of this configuration file, +# see scripts/kbuild/config-language.txt. +# + +menu "Process Utilities" + +config BUSYBOX_CONFIG_FREE + bool "free" + default y + help + free displays the total amount of free and used physical and swap + 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_KILL + bool "kill" + default y + help + The command kill sends the specified signal to the specified + process or process group. If no signal is specified, the TERM + signal is sent. + +config BUSYBOX_CONFIG_KILLALL + bool "killall" + default y + depends on BUSYBOX_CONFIG_KILL + help + killall sends a signal to all processes running any of the + specified commands. If no signal name is specified, SIGTERM is + sent. + +config BUSYBOX_CONFIG_KILLALL5 + bool "killall5" + default y + depends on BUSYBOX_CONFIG_KILL + +config BUSYBOX_CONFIG_PIDOF + bool "pidof" + default y + help + Pidof finds the process id's (pids) of the named programs. It prints + those id's on the standard output. + +config BUSYBOX_CONFIG_PS + bool "ps" + default y + help + ps gives a snapshot of the current processes. + +config BUSYBOX_CONFIG_RENICE + bool "renice" + default n + help + Renice alters the scheduling priority of one or more running + processes. + +config BUSYBOX_CONFIG_TOP + bool "top" + default y + help + The top program provides a dynamic real-time view of a running + system. + +config BUSYBOX_FEATURE_CPU_USAGE_PERCENTAGE + bool + default y + depends on BUSYBOX_CONFIG_TOP + help + Make top display CPU usage. + +config BUSYBOX_CONFIG_UPTIME + bool "uptime" + default y + help + uptime gives a one line display of the current time, how long + 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_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 new file mode 100644 index 000000000..6ac4f6971 --- /dev/null +++ b/package/busybox/config/shell/Config.in @@ -0,0 +1,229 @@ +# +# For a description of the syntax of this configuration file, +# see scripts/kbuild/config-language.txt. +# + +menu "Another Bourne-like Shell" + +choice + prompt "Choose your default shell" + default BUSYBOX_CONFIG_FEATURE_SH_IS_ASH + help + Choose a shell. The ash shell is the most bash compatible + and full featured one. + +config BUSYBOX_CONFIG_FEATURE_SH_IS_ASH + select BUSYBOX_CONFIG_ASH + bool "ash" + +config BUSYBOX_CONFIG_FEATURE_SH_IS_HUSH + select BUSYBOX_CONFIG_HUSH + bool "hush" + +config BUSYBOX_CONFIG_FEATURE_SH_IS_LASH + select BUSYBOX_CONFIG_LASH + bool "lash" + +config BUSYBOX_CONFIG_FEATURE_SH_IS_MSH + select BUSYBOX_CONFIG_MSH + bool "msh" + +config BUSYBOX_CONFIG_FEATURE_SH_IS_NONE + bool "none" + +endchoice + +config BUSYBOX_CONFIG_ASH + bool "ash" + default y + help + Tha 'ash' shell adds about 60k in the default configuration and is + the most complete and most pedantically correct shell included with + busybox. This shell is actually a derivative of the Debian 'dash' + shell (by Herbert Xu), which was created by porting the 'ash' shell + (written by Kenneth Almquist) from NetBSD. + +comment "Ash Shell Options" + depends on BUSYBOX_CONFIG_ASH + +config BUSYBOX_CONFIG_ASH_JOB_CONTROL + bool " Enable Job control" + default y + depends on BUSYBOX_CONFIG_ASH + help + Enable job control in the ash shell. + +config BUSYBOX_CONFIG_ASH_ALIAS + bool " Enable alias support" + default y + depends on BUSYBOX_CONFIG_ASH + help + Enable alias support in the ash shell. + +config BUSYBOX_CONFIG_ASH_MATH_SUPPORT + bool " Enable Posix math support" + default y + depends on BUSYBOX_CONFIG_ASH + help + Enable math support in the ash shell. + +config BUSYBOX_CONFIG_ASH_MATH_SUPPORT_64 + bool " Extend Posix math support to 64 bit" + default n + depends on BUSYBOX_CONFIG_ASH_MATH_SUPPORT + help + Enable 64-bit math support in the ash shell. This will make + the shell slightly larger, but will allow computation with very + large numbers. + +config BUSYBOX_CONFIG_ASH_GETOPTS + bool " Enable getopts builtin to parse positional parameters" + default y + depends on BUSYBOX_CONFIG_ASH + help + Enable getopts builtin in the ash shell. + +config BUSYBOX_CONFIG_ASH_CMDCMD + bool " Enable cmdcmd to override shell builtins" + default y + depends on BUSYBOX_CONFIG_ASH + help + Enable support for the ash 'command' builtin, which allows + 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_MAIL + bool " Check for new mail on interactive shells" + default n + depends on BUSYBOX_CONFIG_ASH + help + Enable "check for new mail" in the ash shell. + +config BUSYBOX_CONFIG_ASH_OPTIMIZE_FOR_SIZE + bool " Optimize for size instead of speed" + default y + depends on BUSYBOX_CONFIG_ASH + help + Compile ash for reduced size at price of speed. + +config BUSYBOX_CONFIG_ASH_RANDOM_SUPPORT + bool " Enable pseudorandom generator and variable $RANDOM" + default n + depends on BUSYBOX_CONFIG_ASH + help + Enable pseudorandom generator and dynamic variable "$RANDOM". + Each read of "$RANDOM" will generate a new pseudorandom value. + You can reset the generator by using a specified start value. + After "unset RANDOM" then generator will switch off and this + variable will no longer have special treatment. + +config BUSYBOX_CONFIG_HUSH + bool "hush" + default n + 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 + options such as if/then/elif/else/fi, for/in/do/done, while loops, + etc. + + It does not handle case/esac, select, function, here documents ( << + word ), arithmetic expansion, aliases, brace expansion, tilde + expansion, &> and >& redirection of stdout+stderr, etc. + + +config BUSYBOX_CONFIG_LASH + bool "lash" + default n + 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 + most trivial scripting (such as an initrd that calls insmod a few + times) since it does not understand any Bourne shell grammar. It + does handle pipes, redirects, and job control though. Adding in + command editing makes it a very nice lightweight command prompt. + + +config BUSYBOX_CONFIG_MSH + bool "msh" + default n + 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 + shell to do. It is not always pedantically correct about Bourne + shell grammar (try running the shell testscript "tests/sh.testcases" + on it and compare vs bash) but for most things it works quite well. + It also uses only vfork, so it can be used on uClinux systems. + +comment "Bourne Shell Options" + depends on BUSYBOX_CONFIG_MSH || BUSYBOX_CONFIG_LASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_ASH + +config BUSYBOX_CONFIG_FEATURE_SH_EXTRA_QUIET + bool "Hide message on interactive shell startup" + default n + depends on BUSYBOX_CONFIG_MSH || BUSYBOX_CONFIG_LASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_ASH + help + Remove the busybox introduction when starting a shell. + +config BUSYBOX_CONFIG_FEATURE_SH_STANDALONE_SHELL + bool "Standalone shell" + default n + depends on BUSYBOX_CONFIG_MSH || BUSYBOX_CONFIG_LASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_ASH + help + This option causes the selected busybox shell to use busybox applets + in preference to executables in the PATH whenever possible. For + example, entering the command 'ifconfig' into the shell would cause + 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 + 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 + run '/bin/busybox'. If you do not have the busybox binary sitting in + that exact location with that exact name, this option will not work at + all. + +config BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING + bool "command line editing" + default y + depends on BUSYBOX_CONFIG_MSH || BUSYBOX_CONFIG_LASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_ASH + help + Enable command editing in shell. + +config BUSYBOX_CONFIG_FEATURE_COMMAND_HISTORY + int "history size" + default 15 + depends on BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING + help + Specify command history size in shell. + +config BUSYBOX_CONFIG_FEATURE_COMMAND_SAVEHISTORY + bool "history saving" + default n + depends on BUSYBOX_CONFIG_ASH && BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING + help + Enable history saving in ash shell. + +config BUSYBOX_CONFIG_FEATURE_COMMAND_TAB_COMPLETION + bool "tab completion" + default y + depends on BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING + help + Enable tab completion in shell. + +config BUSYBOX_CONFIG_FEATURE_COMMAND_USERNAME_COMPLETION + bool "username completion" + default n + depends on BUSYBOX_CONFIG_FEATURE_COMMAND_TAB_COMPLETION + help + Enable username completion in shell. + +config BUSYBOX_CONFIG_FEATURE_SH_FANCY_PROMPT + bool "Fancy shell prompts" + default y + depends on BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING + help + Setting this option allows for prompts to use things like \w and + \$ and also using escape codes. + +endmenu diff --git a/package/busybox/config/sysklogd/Config.in b/package/busybox/config/sysklogd/Config.in new file mode 100644 index 000000000..209bdff05 --- /dev/null +++ b/package/busybox/config/sysklogd/Config.in @@ -0,0 +1,109 @@ +# +# For a description of the syntax of this configuration file, +# see scripts/kbuild/config-language.txt. +# + +menu "System Logging Utilities" + +config BUSYBOX_CONFIG_SYSLOGD + bool "syslogd" + default y + help + The syslogd utility is used to record logs of all the + significant events that occur on a system. Every + message that is logged records the date and time of the + event, and will generally also record the name of the + application that generated the message. When used in + conjunction with klogd, messages from the Linux kernel + can also be recorded. This is terribly useful, + especially for finding what happened when something goes + wrong. And something almost always will go wrong if + you wait long enough.... + +config BUSYBOX_CONFIG_FEATURE_ROTATE_LOGFILE + bool " Rotate message files" + default y + depends on BUSYBOX_CONFIG_SYSLOGD + help + This enables syslogd to rotate the message files + on his own. No need to use an external rotatescript. + +config BUSYBOX_CONFIG_FEATURE_REMOTE_LOG + bool " Remote Log support" + default y + depends on BUSYBOX_CONFIG_SYSLOGD + help + When you enable this feature, the syslogd utility can + be used to send system log messages to another system + connected via a network. This allows the remote + machine to log all the system messages, which can be + terribly useful for reducing the number of serial + cables you use. It can also be a very good security + measure to prevent system logs from being tampered with + by an intruder. + +config BUSYBOX_CONFIG_FEATURE_IPC_SYSLOG + bool " Circular Buffer support" + default y + depends on BUSYBOX_CONFIG_SYSLOGD + help + When you enable this feature, the syslogd utility will + use a circular buffer to record system log messages. + When the buffer is filled it will continue to overwrite + the oldest messages. This can be very useful for + systems with little or no permanent storage, since + otherwise system logs can eventually fill up your + entire filesystem, which may cause your system to + break badly. + +config BUSYBOX_CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE + int " Circular buffer size in Kbytes (minimum 4KB)" + default 16 + depends on BUSYBOX_CONFIG_FEATURE_IPC_SYSLOG + help + This option sets the size of the circular buffer + used to record system log messages. + +config BUSYBOX_CONFIG_LOGREAD + bool " logread" + default y + depends on BUSYBOX_CONFIG_FEATURE_IPC_SYSLOG + help + If you enabled Circular Buffer support, you almost + certainly want to enable this feature as well. This + utility will allow you to read the messages that are + stored in the syslogd circular buffer. + +config BUSYBOX_CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING + bool " logread double buffering" + default n + depends on BUSYBOX_CONFIG_LOGREAD + help + 'logread' ouput to slow serial terminals can have + side effects on syslog because of the semaphore. + This option make logread to double buffer copy + from circular buffer, minimizing semaphore + contention at some minor memory expense. + +config BUSYBOX_CONFIG_KLOGD + bool "klogd" + default y + depends on BUSYBOX_CONFIG_SYSLOGD + help + klogd is a utility which intercepts and logs all + messages from the Linux kernel and sends the messages + out to the 'syslogd' utility so they can be logged. If + you wish to record the messages produced by the kernel, + you should enable this option. + +config BUSYBOX_CONFIG_LOGGER + bool "logger" + default y + help + The logger utility allows you to send arbitrary text + messages to the system log (i.e. the 'syslogd' utility) so + they can be logged. This is generally used to help locate + problems that occur within programs and scripts. + +endmenu + diff --git a/package/busybox/config/util-linux/Config.in b/package/busybox/config/util-linux/Config.in new file mode 100644 index 000000000..c491252b7 --- /dev/null +++ b/package/busybox/config/util-linux/Config.in @@ -0,0 +1,357 @@ +# +# For a description of the syntax of this configuration file, +# see scripts/kbuild/config-language.txt. +# + +menu "Linux System Utilities" + + +config BUSYBOX_CONFIG_DMESG + bool "dmesg" + default y + help + dmesg is used to examine or control the kernel ring buffer. When the + Linux kernel prints messages to the system log, they are stored in + the kernel ring buffer. You can use dmesg to print the kernel's ring + buffer, clear the kernel ring buffer, change the size of the kernel + ring buffer, and change the priority level at which kernel messages + are also logged to the system console. Enable this option if you + wish to enable the 'dmesg' utility. + +config BUSYBOX_CONFIG_FBSET + bool "fbset" + default n + help + fbset is used to show or change the settings of a Linux frame buffer + device. The frame buffer device provides a simple and unique + 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 + depends on BUSYBOX_CONFIG_FBSET + help + This option enables extended fbset options, allowing one to set the + framebuffer size, color depth, etc. interface to access a graphics + display. Enable this option if you wish to enable extended fbset + options. + +config BUSYBOX_CONFIG_FEATURE_FBSET_READMODE + bool " Turn on fbset readmode support" + default n + depends on BUSYBOX_CONFIG_FBSET + help + This option allows fbset to read the video mode database stored by + default n /etc/fb.modes, which can be used to set frame buffer + device to pre-defined video modes. + +config BUSYBOX_CONFIG_FDFLUSH + bool "fdflush" + default n + help + fdflush is only needed when changing media on slightly-broken + removable media drives. It is used to make Linux believe that a + hardware disk-change switch has been actuated, which causes Linux to + forget anything it has cached from the previous media. If you have + such a slightly-broken drive, you will need to run fdflush every time + you change a disk. Most people have working hardware and can safely + leave this disabled. + +config BUSYBOX_CONFIG_FDFORMAT + bool "fdformat" + default n + help + fdformat is used to low-level format a floppy disk. + +config BUSYBOX_CONFIG_FDISK + bool "fdisk" + default n + help + The fdisk utility is used to divide hard disks into one or more + logical disks, which are generally called partitions. This utility + can be used to list and edit the set of partitions or BSD style + 'disk slices' that are defined on a hard drive. + +config BUSYBOX_FDISK_SUPPORT_LARGE_DISKS + bool + default y + depends on BUSYBOX_CONFIG_FDISK + help + Enable this option to support large disks > 4GB. + +config BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE + bool " Write support" + default n + depends on BUSYBOX_CONFIG_FDISK + help + Enabling this option allows you to create or change a partition table + and write those changes out to disk. If you leave this option + disabled, you will only be able to view the partition table. + +config BUSYBOX_CONFIG_FEATURE_AIX_LABEL + bool " Support AIX disklabels" + default n + depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE + help + Enabling this option allows you to create or change AIX disklabels. + Most people can safely leave this option disabled. + +config BUSYBOX_CONFIG_FEATURE_SGI_LABEL + bool " Support SGI disklabels" + default n + depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE + help + Enabling this option allows you to create or change SGI disklabels. + Most people can safely leave this option disabled. + +config BUSYBOX_CONFIG_FEATURE_SUN_LABEL + bool " Support SUN disklabels" + default n + depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE + help + Enabling this option allows you to create or change SUN disklabels. + Most people can safely leave this option disabled. + +config BUSYBOX_CONFIG_FEATURE_OSF_LABEL + bool " Support BSD disklabels" + default n + depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE + help + Enabling this option allows you to create or change BSD disklabels + and define and edit BSD disk slices. + +config BUSYBOX_CONFIG_FEATURE_FDISK_ADVANCED + bool " Support expert mode" + default n + depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE + help + Enabling this option allows you to do terribly unsafe things like + define arbitrary drive geometry, move the beginning of data in a + partition, and similarly evil things. Unless you have a very good + reason you would be wise to leave this disabled. + +config BUSYBOX_CONFIG_FREERAMDISK + bool "freeramdisk" + default n + help + Linux allows you to create ramdisks. This utility allows you to + delete them and completely free all memory that was used for the + ramdisk. For example, if you boot Linux into a ramdisk and later + pivot_root, you may want to free the memory that is allocated to the + ramdisk. If you have no use for freeing memory from a ramdisk, leave + this disabled. + +config BUSYBOX_CONFIG_FSCK_MINIX + bool "fsck_minix" + default n + help + The minix filesystem is a nice, small, compact, read-write filesystem + with little overhead. It is not a journaling filesystem however and + can experience corruption if it is not properly unmounted or if the + power goes off in the middle of a write. This utility allows you to + check for and attempt to repair any corruption that occurs to a minix + filesystem. + +config BUSYBOX_CONFIG_MKFS_MINIX + bool "mkfs_minix" + default n + help + The minix filesystem is a nice, small, compact, read-write filesystem + with little overhead. If you wish to be able to create minix filesystems + this utility will do the job for you. + +comment "Minix filesystem support" + depends on BUSYBOX_CONFIG_FSCK_MINIX || BUSYBOX_CONFIG_MKFS_MINIX + +config BUSYBOX_CONFIG_FEATURE_MINIX2 + bool " Support Minix fs v2 (fsck_minix/mkfs_minix)" + default n + depends on BUSYBOX_CONFIG_FSCK_MINIX || BUSYBOX_CONFIG_MKFS_MINIX + help + If you wish to be able to create version 2 minix filesystems, enable this. + If you enabled 'mkfs_minix' then you almost certainly want to be using the + version 2 filesystem support. + +config BUSYBOX_CONFIG_GETOPT + bool "getopt" + default n + help + The getopt utility is used to break up (parse) options in command + lines to make it easy to write complex shell scripts that also check + for legal (and illegal) options. If you want to write horribly + complex shell scripts, or use some horribly complex shell script + written by others, this utility may be for you. Most people will + wisely leave this disabled. + +config BUSYBOX_CONFIG_HEXDUMP + bool "hexdump" + default y + help + The hexdump utility is used to display binary data in a readable + way that is comparable to the output from most hex editors. + +config BUSYBOX_CONFIG_HWCLOCK + bool "hwclock" + default n + help + The hwclock utility is used to read and set the hardware clock + on a system. This is primarily used to set the current time on + shutdown in the hardware clock, so the hardware will keep the + correct time when Linux is _not_ running. + +config BUSYBOX_CONFIG_FEATURE_HWCLOCK_LONGOPTIONS + bool " Support long options (--hctosys,...)" + default n + depends on BUSYBOX_CONFIG_HWCLOCK + help + By default, the hwclock utility only uses short options. If you + are overly fond of its long options, such as --hctosys, --utc, etc) + then enable this option. + +config BUSYBOX_CONFIG_LOSETUP + bool "losetup" + default n + help + losetup is used to associate or detach a loop device with a regular + 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_MKSWAP + bool "mkswap" + default n + help + The mkswap utility is used to configure a file or disk partition as + Linux swap space. This allows Linux to use the entire file or + partition as if it were additional RAM, which can greatly increase + the capability of low-memory machines. This additional memory is + much slower than real RAM, but can be very helpful at preventing your + applications being killed by the Linux out of memory (OOM) killer. + Once you have created swap space using 'mkswap' you need to enable + the swap space using the 'swapon' utility. + +config BUSYBOX_CONFIG_MORE + bool "more" + default y + help + more is a simple utility which allows you to read text one screen + sized page at a time. If you want to read text that is larger than + the screen, and you are using anything faster than a 300 baud modem, + you will probably find this utility very helpful. If you don't have + any need to reading text files, you can leave this disabled. + +config BUSYBOX_CONFIG_FEATURE_USE_TERMIOS + bool " Use termios to manipulate the screen" + default y + depends on BUSYBOX_CONFIG_MORE + help + This option allows utilities such as 'more' and 'top' to determine + the size of the screen. If you leave this disabled, your utilities + that display things on the screen will be especially primitive and + will be unable to determine the current screen size, and will be + unable to move the cursor. + +config BUSYBOX_CONFIG_PIVOT_ROOT + bool "pivot_root" + default y + help + The pivot_root utility swaps the mount points for the root filesystem + with some other mounted filesystem. This allows you to do all sorts + of wild and crazy things with your Linux system and is far more + powerful than 'chroot'. + +config BUSYBOX_CONFIG_RDATE + bool "rdate" + default y + help + The rdate utility allows you to synchronize the date and time of your + system clock with the date and time of a remote networked system using + the RFC868 protocol, which is built into the inetd daemon on most + systems. + +config BUSYBOX_CONFIG_SWAPONOFF + bool "swaponoff" + default n + help + This option enables both the 'swapon' and the 'swapoff' utilities. + Once you have created some swap space using 'mkswap', you also need + to enable your swap space with the 'swapon' utility. The 'swapoff' + utility is used, typically at system shutdown, to disable any swap + space. If you are not using any swap space, you can leave this + option disabled. + +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_NFSMOUNT + bool " Support mounting NFS file systems" + default y + depends on BUSYBOX_CONFIG_MOUNT + help + Enable mounting of NFS file systems. + +config BUSYBOX_CONFIG_UMOUNT + bool "umount" + default y + help + When you want to remove a mounted filesystem from its current mount point, + for example when you are shutting down the system, the 'umount' utility is + 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" + 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. + +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" + 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. + +config BUSYBOX_CONFIG_FEATURE_MTAB_SUPPORT + bool " Support for a real /etc/mtab (instead of /proc/mounts)" + 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. + +endmenu + -- cgit v1.2.3