summaryrefslogtreecommitdiff
path: root/openwrt/package/busybox
diff options
context:
space:
mode:
Diffstat (limited to 'openwrt/package/busybox')
-rw-r--r--openwrt/package/busybox/Config.in7
-rw-r--r--openwrt/package/busybox/Makefile9
-rw-r--r--openwrt/package/busybox/busybox.config4
-rw-r--r--openwrt/package/busybox/busybox.mk35
-rw-r--r--openwrt/package/busybox/config/Config.in293
-rw-r--r--openwrt/package/busybox/config/archival/Config.in258
-rw-r--r--openwrt/package/busybox/config/console-tools/Config.in68
-rw-r--r--openwrt/package/busybox/config/coreutils/Config.in613
-rw-r--r--openwrt/package/busybox/config/debianutils/Config.in58
-rw-r--r--openwrt/package/busybox/config/editors/Config.in123
-rw-r--r--openwrt/package/busybox/config/findutils/Config.in133
-rw-r--r--openwrt/package/busybox/config/init/Config.in72
-rw-r--r--openwrt/package/busybox/config/loginutils/Config.in161
-rw-r--r--openwrt/package/busybox/config/miscutils/Config.in201
-rw-r--r--openwrt/package/busybox/config/modutils/Config.in113
-rw-r--r--openwrt/package/busybox/config/networking/Config.in634
-rw-r--r--openwrt/package/busybox/config/networking/udhcp/Config.in62
-rw-r--r--openwrt/package/busybox/config/procps/Config.in87
-rw-r--r--openwrt/package/busybox/config/shell/Config.in229
-rw-r--r--openwrt/package/busybox/config/sysklogd/Config.in109
-rw-r--r--openwrt/package/busybox/config/util-linux/Config.in357
21 files changed, 3603 insertions, 23 deletions
diff --git a/openwrt/package/busybox/Config.in b/openwrt/package/busybox/Config.in
index 9420f53694..4f72994af5 100644
--- a/openwrt/package/busybox/Config.in
+++ b/openwrt/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/openwrt/package/busybox/Makefile b/openwrt/package/busybox/Makefile
new file mode 100644
index 0000000000..8877c373c1
--- /dev/null
+++ b/openwrt/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/openwrt/package/busybox/busybox.config b/openwrt/package/busybox/busybox.config
index 1b78d20c24..c79c7ec764 100644
--- a/openwrt/package/busybox/busybox.config
+++ b/openwrt/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/openwrt/package/busybox/busybox.mk b/openwrt/package/busybox/busybox.mk
index e19aa7bc4f..76de2548a0 100644
--- a/openwrt/package/busybox/busybox.mk
+++ b/openwrt/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/openwrt/package/busybox/config/Config.in b/openwrt/package/busybox/config/Config.in
new file mode 100644
index 0000000000..e7afb53629
--- /dev/null
+++ b/openwrt/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/<number> for the slave side. Otherwise, BSD style
+ /dev/ttyp<number> will be used. To use this option, you should have
+ devpts or devfs mounted.
+
+config 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:
+
+ <applet> = [Ssx-][Ssx-][x-] (<username>|<uid>).(<groupname>|<gid>)
+
+ An example might help:
+
+ [SUID]
+ su = ssx root.0 # applet su can be run by anyone and runs with euid=0/egid=0
+ su = ssx # exactly the same
+
+ mount = sx- root.disk # applet mount can be run by root and members of group disk
+ # and runs with euid=0
+
+ cp = --- # disable applet cp for everyone
+
+ Robert 'sandman' Griebl has more information here:
+ <url: http://www.softforge.de/bb/suid.html >.
+
+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/openwrt/package/busybox/config/archival/Config.in b/openwrt/package/busybox/config/archival/Config.in
new file mode 100644
index 0000000000..8bb4886eb6
--- /dev/null
+++ b/openwrt/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 <deb> 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/openwrt/package/busybox/config/console-tools/Config.in b/openwrt/package/busybox/config/console-tools/Config.in
new file mode 100644
index 0000000000..207e2df21c
--- /dev/null
+++ b/openwrt/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/openwrt/package/busybox/config/coreutils/Config.in b/openwrt/package/busybox/config/coreutils/Config.in
new file mode 100644
index 0000000000..1f3da2f107
--- /dev/null
+++ b/openwrt/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/openwrt/package/busybox/config/debianutils/Config.in b/openwrt/package/busybox/config/debianutils/Config.in
new file mode 100644
index 0000000000..c5a07eaec5
--- /dev/null
+++ b/openwrt/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/openwrt/package/busybox/config/editors/Config.in b/openwrt/package/busybox/config/editors/Config.in
new file mode 100644
index 0000000000..85074b333f
--- /dev/null
+++ b/openwrt/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 <grin>. 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/openwrt/package/busybox/config/findutils/Config.in b/openwrt/package/busybox/config/findutils/Config.in
new file mode 100644
index 0000000000..fb5a8c05f1
--- /dev/null
+++ b/openwrt/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/openwrt/package/busybox/config/init/Config.in b/openwrt/package/busybox/config/init/Config.in
new file mode 100644
index 0000000000..087d836bf9
--- /dev/null
+++ b/openwrt/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/openwrt/package/busybox/config/loginutils/Config.in b/openwrt/package/busybox/config/loginutils/Config.in
new file mode 100644
index 0000000000..e42140ac27
--- /dev/null
+++ b/openwrt/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/openwrt/package/busybox/config/miscutils/Config.in b/openwrt/package/busybox/config/miscutils/Config.in
new file mode 100644
index 0000000000..072993b28d
--- /dev/null
+++ b/openwrt/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/<username> 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/openwrt/package/busybox/config/modutils/Config.in b/openwrt/package/busybox/config/modutils/Config.in
new file mode 100644
index 0000000000..536236b7c3
--- /dev/null
+++ b/openwrt/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/openwrt/package/busybox/config/networking/Config.in b/openwrt/package/busybox/config/networking/Config.in
new file mode 100644
index 0000000000..5af65ef4aa
--- /dev/null
+++ b/openwrt/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 <user> 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 "<Hello World>" as
+ "&#60Hello&#32World&#62".
+
+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/openwrt/package/busybox/config/networking/udhcp/Config.in b/openwrt/package/busybox/config/networking/udhcp/Config.in
new file mode 100644
index 0000000000..d15128ce3f
--- /dev/null
+++ b/openwrt/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/openwrt/package/busybox/config/procps/Config.in b/openwrt/package/busybox/config/procps/Config.in
new file mode 100644
index 0000000000..6d16180993
--- /dev/null
+++ b/openwrt/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/openwrt/package/busybox/config/shell/Config.in b/openwrt/package/busybox/config/shell/Config.in
new file mode 100644
index 0000000000..6ac4f69710
--- /dev/null
+++ b/openwrt/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/openwrt/package/busybox/config/sysklogd/Config.in b/openwrt/package/busybox/config/sysklogd/Config.in
new file mode 100644
index 0000000000..209bdff053
--- /dev/null
+++ b/openwrt/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/openwrt/package/busybox/config/util-linux/Config.in b/openwrt/package/busybox/config/util-linux/Config.in
new file mode 100644
index 0000000000..c491252b72
--- /dev/null
+++ b/openwrt/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
+