浏览代码

busybox: add 1.17.0, convert to gentargets, drop 1.12, deprecate 1.13 and 1.15

Closes #2167

[Peter: fix CONFIG_ID workaround for old uClibcs]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Gustavo Zacarias 15 年之前
父节点
当前提交
3169aae85e
共有 5 个文件被更改,包括 372 次插入230 次删除
  1. 1 0
      CHANGES
  2. 7 7
      package/busybox/Config.in
  3. 0 0
      package/busybox/busybox-1.16.2/busybox-devmem.patch
  4. 234 119
      package/busybox/busybox-1.17.x.config
  5. 130 104
      package/busybox/busybox.mk

+ 1 - 0
CHANGES

@@ -58,6 +58,7 @@
 	#2143: buildroot compiler generates segfaulting statically linked exe..
 	#2143: buildroot compiler generates segfaulting statically linked exe..
 	#2155: Compression lzo don't set for ubifs
 	#2155: Compression lzo don't set for ubifs
 	#2166: [SECURITY] Update libpng to 1.2.44
 	#2166: [SECURITY] Update libpng to 1.2.44
+	#2167: Bump busybox to 1.17.0, convert to gentargets, drop 1.12, ...
 
 
 2010.05, Released May 30th, 2010:
 2010.05, Released May 30th, 2010:
 
 

+ 7 - 7
package/busybox/Config.in

@@ -17,12 +17,9 @@ choice
 	help
 	help
 	  Select the version of BusyBox you wish to use.
 	  Select the version of BusyBox you wish to use.
 
 
-	config BR2_BUSYBOX_VERSION_1_12_X
-		bool "BusyBox 1.12.x"
-		depends on BR2_DEPRECATED
-
 	config BR2_BUSYBOX_VERSION_1_13_X
 	config BR2_BUSYBOX_VERSION_1_13_X
 		bool "BusyBox 1.13.x"
 		bool "BusyBox 1.13.x"
+		depends on BR2_DEPRECATED
 
 
 	config BR2_BUSYBOX_VERSION_1_14_X
 	config BR2_BUSYBOX_VERSION_1_14_X
 		bool "BusyBox 1.14.x"
 		bool "BusyBox 1.14.x"
@@ -34,6 +31,9 @@ choice
 	config BR2_BUSYBOX_VERSION_1_16_X
 	config BR2_BUSYBOX_VERSION_1_16_X
 		bool "BusyBox 1.16.x"
 		bool "BusyBox 1.16.x"
 
 
+	config BR2_BUSYBOX_VERSION_1_17_X
+		bool "BusyBox 1.17.x"
+
 	config BR2_PACKAGE_BUSYBOX_SNAPSHOT
 	config BR2_PACKAGE_BUSYBOX_SNAPSHOT
 		bool "daily snapshot"
 		bool "daily snapshot"
 
 
@@ -41,11 +41,11 @@ endchoice
 
 
 config BR2_BUSYBOX_VERSION
 config BR2_BUSYBOX_VERSION
 	string
 	string
-	default "1.12.4"	if BR2_BUSYBOX_VERSION_1_12_X
 	default "1.13.4"	if BR2_BUSYBOX_VERSION_1_13_X
 	default "1.13.4"	if BR2_BUSYBOX_VERSION_1_13_X
 	default "1.14.4"	if BR2_BUSYBOX_VERSION_1_14_X
 	default "1.14.4"	if BR2_BUSYBOX_VERSION_1_14_X
 	default "1.15.3"	if BR2_BUSYBOX_VERSION_1_15_X
 	default "1.15.3"	if BR2_BUSYBOX_VERSION_1_15_X
 	default "1.16.2"	if BR2_BUSYBOX_VERSION_1_16_X
 	default "1.16.2"	if BR2_BUSYBOX_VERSION_1_16_X
+	default "1.17.0"	if BR2_BUSYBOX_VERSION_1_17_X
 
 
 config BR2_PACKAGE_BUSYBOX_FULLINSTALL
 config BR2_PACKAGE_BUSYBOX_FULLINSTALL
 	bool "Run BusyBox's own full installation"
 	bool "Run BusyBox's own full installation"
@@ -61,12 +61,12 @@ config BR2_PACKAGE_BUSYBOX_FULLINSTALL
 
 
 config BR2_PACKAGE_BUSYBOX_CONFIG
 config BR2_PACKAGE_BUSYBOX_CONFIG
 	string "BusyBox configuration file to use?"
 	string "BusyBox configuration file to use?"
-	default "package/busybox/busybox-1.16.x.config" if BR2_PACKAGE_BUSYBOX_SNAPSHOT
-	default "package/busybox/busybox-1.11.x.config" if BR2_BUSYBOX_VERSION_1_12_X
+	default "package/busybox/busybox-1.17.x.config" if BR2_PACKAGE_BUSYBOX_SNAPSHOT
 	default "package/busybox/busybox-1.13.x.config" if BR2_BUSYBOX_VERSION_1_13_X
 	default "package/busybox/busybox-1.13.x.config" if BR2_BUSYBOX_VERSION_1_13_X
 	default "package/busybox/busybox-1.13.x.config" if BR2_BUSYBOX_VERSION_1_14_X
 	default "package/busybox/busybox-1.13.x.config" if BR2_BUSYBOX_VERSION_1_14_X
 	default "package/busybox/busybox-1.13.x.config" if BR2_BUSYBOX_VERSION_1_15_X
 	default "package/busybox/busybox-1.13.x.config" if BR2_BUSYBOX_VERSION_1_15_X
 	default "package/busybox/busybox-1.16.x.config" if BR2_BUSYBOX_VERSION_1_16_X
 	default "package/busybox/busybox-1.16.x.config" if BR2_BUSYBOX_VERSION_1_16_X
+	default "package/busybox/busybox-1.17.x.config" if BR2_BUSYBOX_VERSION_1_17_X
 	help
 	help
 	  Some people may wish to use their own modified BusyBox configuration
 	  Some people may wish to use their own modified BusyBox configuration
 	  file, and will specify their config file location with this option.
 	  file, and will specify their config file location with this option.

+ 0 - 0
package/busybox/busybox-1.16.2-devmem.patch → package/busybox/busybox-1.16.2/busybox-devmem.patch


+ 234 - 119
package/busybox/busybox-1.11.x.config → package/busybox/busybox-1.17.x.config

@@ -1,7 +1,7 @@
 #
 #
 # Automatically generated make config: don't edit
 # Automatically generated make config: don't edit
-# Busybox version: 1.11.0
-# Thu Jun 26 08:43:59 2008
+# Busybox version: 1.17.0
+# Tue Jul  6 10:53:37 2010
 #
 #
 CONFIG_HAVE_DOT_CONFIG=y
 CONFIG_HAVE_DOT_CONFIG=y
 
 
@@ -13,7 +13,9 @@ CONFIG_HAVE_DOT_CONFIG=y
 # General Configuration
 # General Configuration
 #
 #
 CONFIG_DESKTOP=y
 CONFIG_DESKTOP=y
-# CONFIG_FEATURE_ASSUME_UNICODE is not set
+# CONFIG_EXTRA_COMPAT is not set
+CONFIG_INCLUDE_SUSv2=y
+# CONFIG_USE_PORTABLE_CODE is not set
 CONFIG_FEATURE_BUFFERS_USE_MALLOC=y
 CONFIG_FEATURE_BUFFERS_USE_MALLOC=y
 # CONFIG_FEATURE_BUFFERS_GO_ON_STACK is not set
 # CONFIG_FEATURE_BUFFERS_GO_ON_STACK is not set
 # CONFIG_FEATURE_BUFFERS_GO_IN_BSS is not set
 # CONFIG_FEATURE_BUFFERS_GO_IN_BSS is not set
@@ -22,9 +24,21 @@ CONFIG_FEATURE_VERBOSE_USAGE=y
 # CONFIG_FEATURE_COMPRESS_USAGE is not set
 # CONFIG_FEATURE_COMPRESS_USAGE is not set
 CONFIG_FEATURE_INSTALLER=y
 CONFIG_FEATURE_INSTALLER=y
 # CONFIG_LOCALE_SUPPORT is not set
 # CONFIG_LOCALE_SUPPORT is not set
-CONFIG_GETOPT_LONG=y
+# CONFIG_UNICODE_SUPPORT is not set
+# CONFIG_UNICODE_USING_LOCALE is not set
+# CONFIG_FEATURE_CHECK_UNICODE_IN_ENV is not set
+CONFIG_SUBST_WCHAR=0
+CONFIG_LAST_SUPPORTED_WCHAR=0
+# CONFIG_UNICODE_COMBINING_WCHARS is not set
+# CONFIG_UNICODE_WIDE_WCHARS is not set
+# CONFIG_UNICODE_BIDI_SUPPORT is not set
+# CONFIG_UNICODE_NEUTRAL_TABLE is not set
+# CONFIG_UNICODE_PRESERVE_BROKEN is not set
+CONFIG_LONG_OPTS=y
 CONFIG_FEATURE_DEVPTS=y
 CONFIG_FEATURE_DEVPTS=y
 CONFIG_FEATURE_CLEAN_UP=y
 CONFIG_FEATURE_CLEAN_UP=y
+CONFIG_FEATURE_UTMP=y
+CONFIG_FEATURE_WTMP=y
 # CONFIG_FEATURE_PIDFILE is not set
 # CONFIG_FEATURE_PIDFILE is not set
 CONFIG_FEATURE_SUID=y
 CONFIG_FEATURE_SUID=y
 # CONFIG_FEATURE_SUID_CONFIG is not set
 # CONFIG_FEATURE_SUID_CONFIG is not set
@@ -46,6 +60,7 @@ CONFIG_FEATURE_SYSLOG=y
 # CONFIG_FEATURE_SHARED_BUSYBOX is not set
 # CONFIG_FEATURE_SHARED_BUSYBOX is not set
 # CONFIG_LFS is not set
 # CONFIG_LFS is not set
 CONFIG_CROSS_COMPILER_PREFIX=""
 CONFIG_CROSS_COMPILER_PREFIX=""
+CONFIG_EXTRA_CFLAGS=""
 
 
 #
 #
 # Debugging Options
 # Debugging Options
@@ -56,7 +71,6 @@ CONFIG_CROSS_COMPILER_PREFIX=""
 CONFIG_NO_DEBUG_LIB=y
 CONFIG_NO_DEBUG_LIB=y
 # CONFIG_DMALLOC is not set
 # CONFIG_DMALLOC is not set
 # CONFIG_EFENCE is not set
 # CONFIG_EFENCE is not set
-CONFIG_INCLUDE_SUSv2=y
 
 
 #
 #
 # Installation Options
 # Installation Options
@@ -86,6 +100,8 @@ CONFIG_FEATURE_EDITING_SAVEHISTORY=y
 CONFIG_FEATURE_TAB_COMPLETION=y
 CONFIG_FEATURE_TAB_COMPLETION=y
 # CONFIG_FEATURE_USERNAME_COMPLETION is not set
 # CONFIG_FEATURE_USERNAME_COMPLETION is not set
 CONFIG_FEATURE_EDITING_FANCY_PROMPT=y
 CONFIG_FEATURE_EDITING_FANCY_PROMPT=y
+# CONFIG_FEATURE_EDITING_ASK_TERMINAL is not set
+CONFIG_FEATURE_NON_POSIX_CP=y
 # CONFIG_FEATURE_VERBOSE_CP_MESSAGE is not set
 # CONFIG_FEATURE_VERBOSE_CP_MESSAGE is not set
 CONFIG_FEATURE_COPYBUF_KB=4
 CONFIG_FEATURE_COPYBUF_KB=4
 CONFIG_MONOTONIC_SYSCALL=y
 CONFIG_MONOTONIC_SYSCALL=y
@@ -99,68 +115,81 @@ CONFIG_FEATURE_HWIB=y
 #
 #
 # Archival Utilities
 # Archival Utilities
 #
 #
+# CONFIG_FEATURE_SEAMLESS_XZ is not set
+# CONFIG_FEATURE_SEAMLESS_LZMA is not set
+# CONFIG_FEATURE_SEAMLESS_BZ2 is not set
+# CONFIG_FEATURE_SEAMLESS_GZ is not set
+# CONFIG_FEATURE_SEAMLESS_Z is not set
 CONFIG_AR=y
 CONFIG_AR=y
 # CONFIG_FEATURE_AR_LONG_FILENAMES is not set
 # CONFIG_FEATURE_AR_LONG_FILENAMES is not set
+CONFIG_FEATURE_AR_CREATE=y
 CONFIG_BUNZIP2=y
 CONFIG_BUNZIP2=y
 # CONFIG_BZIP2 is not set
 # CONFIG_BZIP2 is not set
 CONFIG_CPIO=y
 CONFIG_CPIO=y
 # CONFIG_FEATURE_CPIO_O is not set
 # CONFIG_FEATURE_CPIO_O is not set
+# CONFIG_FEATURE_CPIO_P is not set
 # CONFIG_DPKG is not set
 # CONFIG_DPKG is not set
 # CONFIG_DPKG_DEB is not set
 # CONFIG_DPKG_DEB is not set
 # CONFIG_FEATURE_DPKG_DEB_EXTRACT_ONLY is not set
 # CONFIG_FEATURE_DPKG_DEB_EXTRACT_ONLY is not set
 CONFIG_GUNZIP=y
 CONFIG_GUNZIP=y
-# CONFIG_FEATURE_GUNZIP_UNCOMPRESS is not set
 CONFIG_GZIP=y
 CONFIG_GZIP=y
+# CONFIG_FEATURE_GZIP_LONG_OPTIONS is not set
+# CONFIG_LZOP is not set
+# CONFIG_LZOP_COMPR_HIGH is not set
 # CONFIG_RPM2CPIO is not set
 # CONFIG_RPM2CPIO is not set
 # CONFIG_RPM is not set
 # CONFIG_RPM is not set
-# CONFIG_FEATURE_RPM_BZ2 is not set
 CONFIG_TAR=y
 CONFIG_TAR=y
 CONFIG_FEATURE_TAR_CREATE=y
 CONFIG_FEATURE_TAR_CREATE=y
-CONFIG_FEATURE_TAR_GZIP=y
-CONFIG_FEATURE_TAR_BZIP2=y
-CONFIG_FEATURE_TAR_LZMA=y
-# CONFIG_FEATURE_TAR_COMPRESS is not set
 # CONFIG_FEATURE_TAR_AUTODETECT is not set
 # CONFIG_FEATURE_TAR_AUTODETECT is not set
 CONFIG_FEATURE_TAR_FROM=y
 CONFIG_FEATURE_TAR_FROM=y
 # CONFIG_FEATURE_TAR_OLDGNU_COMPATIBILITY is not set
 # CONFIG_FEATURE_TAR_OLDGNU_COMPATIBILITY is not set
 # CONFIG_FEATURE_TAR_OLDSUN_COMPATIBILITY is not set
 # CONFIG_FEATURE_TAR_OLDSUN_COMPATIBILITY is not set
 CONFIG_FEATURE_TAR_GNU_EXTENSIONS=y
 CONFIG_FEATURE_TAR_GNU_EXTENSIONS=y
 CONFIG_FEATURE_TAR_LONG_OPTIONS=y
 CONFIG_FEATURE_TAR_LONG_OPTIONS=y
+CONFIG_FEATURE_TAR_TO_COMMAND=y
 # CONFIG_FEATURE_TAR_UNAME_GNAME is not set
 # CONFIG_FEATURE_TAR_UNAME_GNAME is not set
+# CONFIG_FEATURE_TAR_NOPRESERVE_TIME is not set
+# CONFIG_FEATURE_TAR_SELINUX is not set
 # CONFIG_UNCOMPRESS is not set
 # CONFIG_UNCOMPRESS is not set
 CONFIG_UNLZMA=y
 CONFIG_UNLZMA=y
 # CONFIG_FEATURE_LZMA_FAST is not set
 # CONFIG_FEATURE_LZMA_FAST is not set
+CONFIG_LZMA=y
+CONFIG_UNXZ=y
+CONFIG_XZ=y
 CONFIG_UNZIP=y
 CONFIG_UNZIP=y
 
 
-#
-# Common options for cpio and tar
-#
-# CONFIG_FEATURE_DEB_TAR_GZ is not set
-# CONFIG_FEATURE_DEB_TAR_BZ2 is not set
-# CONFIG_FEATURE_DEB_TAR_LZMA is not set
-
 #
 #
 # Coreutils
 # Coreutils
 #
 #
 CONFIG_BASENAME=y
 CONFIG_BASENAME=y
-# CONFIG_CAL is not set
 CONFIG_CAT=y
 CONFIG_CAT=y
+CONFIG_DATE=y
+CONFIG_FEATURE_DATE_ISOFMT=y
+# CONFIG_FEATURE_DATE_NANO is not set
+CONFIG_FEATURE_DATE_COMPAT=y
+CONFIG_TEST=y
+CONFIG_FEATURE_TEST_64=y
+CONFIG_TR=y
+CONFIG_FEATURE_TR_CLASSES=y
+CONFIG_FEATURE_TR_EQUIV=y
+# CONFIG_CAL is not set
 CONFIG_CATV=y
 CONFIG_CATV=y
 CONFIG_CHGRP=y
 CONFIG_CHGRP=y
 CONFIG_CHMOD=y
 CONFIG_CHMOD=y
 CONFIG_CHOWN=y
 CONFIG_CHOWN=y
+# CONFIG_FEATURE_CHOWN_LONG_OPTIONS is not set
 CONFIG_CHROOT=y
 CONFIG_CHROOT=y
 CONFIG_CKSUM=y
 CONFIG_CKSUM=y
 # CONFIG_COMM is not set
 # CONFIG_COMM is not set
 CONFIG_CP=y
 CONFIG_CP=y
+# CONFIG_FEATURE_CP_LONG_OPTIONS is not set
 CONFIG_CUT=y
 CONFIG_CUT=y
-CONFIG_DATE=y
-CONFIG_FEATURE_DATE_ISOFMT=y
 CONFIG_DD=y
 CONFIG_DD=y
 CONFIG_FEATURE_DD_SIGNAL_HANDLING=y
 CONFIG_FEATURE_DD_SIGNAL_HANDLING=y
+# CONFIG_FEATURE_DD_THIRD_STATUS_LINE is not set
 CONFIG_FEATURE_DD_IBS_OBS=y
 CONFIG_FEATURE_DD_IBS_OBS=y
 CONFIG_DF=y
 CONFIG_DF=y
-# CONFIG_FEATURE_DF_INODE is not set
+# CONFIG_FEATURE_DF_FANCY is not set
 CONFIG_DIRNAME=y
 CONFIG_DIRNAME=y
 CONFIG_DOS2UNIX=y
 CONFIG_DOS2UNIX=y
 CONFIG_UNIX2DOS=y
 CONFIG_UNIX2DOS=y
@@ -176,6 +205,7 @@ CONFIG_EXPR=y
 CONFIG_EXPR_MATH_SUPPORT_64=y
 CONFIG_EXPR_MATH_SUPPORT_64=y
 CONFIG_FALSE=y
 CONFIG_FALSE=y
 CONFIG_FOLD=y
 CONFIG_FOLD=y
+# CONFIG_FSYNC is not set
 CONFIG_HEAD=y
 CONFIG_HEAD=y
 CONFIG_FEATURE_FANCY_HEAD=y
 CONFIG_FEATURE_FANCY_HEAD=y
 CONFIG_HOSTID=y
 CONFIG_HOSTID=y
@@ -215,8 +245,11 @@ CONFIG_RMDIR=y
 # CONFIG_FEATURE_RMDIR_LONG_OPTIONS is not set
 # CONFIG_FEATURE_RMDIR_LONG_OPTIONS is not set
 CONFIG_SEQ=y
 CONFIG_SEQ=y
 CONFIG_SHA1SUM=y
 CONFIG_SHA1SUM=y
+CONFIG_SHA256SUM=y
+CONFIG_SHA512SUM=y
 CONFIG_SLEEP=y
 CONFIG_SLEEP=y
 # CONFIG_FEATURE_FANCY_SLEEP is not set
 # CONFIG_FEATURE_FANCY_SLEEP is not set
+# CONFIG_FEATURE_FLOAT_SLEEP is not set
 CONFIG_SORT=y
 CONFIG_SORT=y
 CONFIG_FEATURE_SORT_BIG=y
 CONFIG_FEATURE_SORT_BIG=y
 # CONFIG_SPLIT is not set
 # CONFIG_SPLIT is not set
@@ -231,12 +264,7 @@ CONFIG_TAIL=y
 CONFIG_FEATURE_FANCY_TAIL=y
 CONFIG_FEATURE_FANCY_TAIL=y
 CONFIG_TEE=y
 CONFIG_TEE=y
 CONFIG_FEATURE_TEE_USE_BLOCK_IO=y
 CONFIG_FEATURE_TEE_USE_BLOCK_IO=y
-CONFIG_TEST=y
-CONFIG_FEATURE_TEST_64=y
 CONFIG_TOUCH=y
 CONFIG_TOUCH=y
-CONFIG_TR=y
-CONFIG_FEATURE_TR_CLASSES=y
-CONFIG_FEATURE_TR_EQUIV=y
 CONFIG_TRUE=y
 CONFIG_TRUE=y
 CONFIG_TTY=y
 CONFIG_TTY=y
 CONFIG_UNAME=y
 CONFIG_UNAME=y
@@ -268,7 +296,7 @@ CONFIG_FEATURE_AUTOWIDTH=y
 CONFIG_FEATURE_HUMAN_READABLE=y
 CONFIG_FEATURE_HUMAN_READABLE=y
 
 
 #
 #
-# Common options for md5sum, sha1sum
+# Common options for md5sum, sha1sum, sha256sum, sha512sum
 #
 #
 CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y
 CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y
 
 
@@ -276,6 +304,7 @@ CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y
 # Console Utilities
 # Console Utilities
 #
 #
 CONFIG_CHVT=y
 CONFIG_CHVT=y
+# CONFIG_FGCONSOLE is not set
 CONFIG_CLEAR=y
 CONFIG_CLEAR=y
 CONFIG_DEALLOCVT=y
 CONFIG_DEALLOCVT=y
 CONFIG_DUMPKMAP=y
 CONFIG_DUMPKMAP=y
@@ -288,8 +317,18 @@ CONFIG_RESIZE=y
 CONFIG_FEATURE_RESIZE_PRINT=y
 CONFIG_FEATURE_RESIZE_PRINT=y
 CONFIG_SETCONSOLE=y
 CONFIG_SETCONSOLE=y
 # CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS is not set
 # CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS is not set
+# CONFIG_SETFONT is not set
+# CONFIG_FEATURE_SETFONT_TEXTUAL_MAP is not set
+CONFIG_DEFAULT_SETFONT_DIR=""
 CONFIG_SETKEYCODES=y
 CONFIG_SETKEYCODES=y
 CONFIG_SETLOGCONS=y
 CONFIG_SETLOGCONS=y
+# CONFIG_SHOWKEY is not set
+
+#
+# Common options for loadfont and setfont
+#
+CONFIG_FEATURE_LOADFONT_PSF2=y
+CONFIG_FEATURE_LOADFONT_RAW=y
 
 
 #
 #
 # Debian Utilities
 # Debian Utilities
@@ -308,12 +347,11 @@ CONFIG_WHICH=y
 # Editors
 # Editors
 #
 #
 CONFIG_AWK=y
 CONFIG_AWK=y
-CONFIG_FEATURE_AWK_MATH=y
+# CONFIG_FEATURE_AWK_LIBM is not set
 CONFIG_CMP=y
 CONFIG_CMP=y
 CONFIG_DIFF=y
 CONFIG_DIFF=y
-CONFIG_FEATURE_DIFF_BINARY=y
+# CONFIG_FEATURE_DIFF_LONG_OPTIONS is not set
 CONFIG_FEATURE_DIFF_DIR=y
 CONFIG_FEATURE_DIFF_DIR=y
-# CONFIG_FEATURE_DIFF_MINIMAL is not set
 # CONFIG_ED is not set
 # CONFIG_ED is not set
 CONFIG_PATCH=y
 CONFIG_PATCH=y
 CONFIG_SED=y
 CONFIG_SED=y
@@ -329,6 +367,7 @@ CONFIG_FEATURE_VI_READONLY=y
 CONFIG_FEATURE_VI_SETOPTS=y
 CONFIG_FEATURE_VI_SETOPTS=y
 CONFIG_FEATURE_VI_SET=y
 CONFIG_FEATURE_VI_SET=y
 CONFIG_FEATURE_VI_WIN_RESIZE=y
 CONFIG_FEATURE_VI_WIN_RESIZE=y
+CONFIG_FEATURE_VI_ASK_TERMINAL=y
 CONFIG_FEATURE_VI_OPTIMIZE_CURSOR=y
 CONFIG_FEATURE_VI_OPTIMIZE_CURSOR=y
 CONFIG_FEATURE_ALLOW_EXEC=y
 CONFIG_FEATURE_ALLOW_EXEC=y
 
 
@@ -357,6 +396,7 @@ CONFIG_FEATURE_FIND_PRUNE=y
 CONFIG_FEATURE_FIND_PATH=y
 CONFIG_FEATURE_FIND_PATH=y
 CONFIG_FEATURE_FIND_REGEX=y
 CONFIG_FEATURE_FIND_REGEX=y
 # CONFIG_FEATURE_FIND_CONTEXT is not set
 # CONFIG_FEATURE_FIND_CONTEXT is not set
+# CONFIG_FEATURE_FIND_LINKS is not set
 CONFIG_GREP=y
 CONFIG_GREP=y
 CONFIG_FEATURE_GREP_EGREP_ALIAS=y
 CONFIG_FEATURE_GREP_EGREP_ALIAS=y
 CONFIG_FEATURE_GREP_FGREP_ALIAS=y
 CONFIG_FEATURE_GREP_FGREP_ALIAS=y
@@ -370,8 +410,10 @@ CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM=y
 #
 #
 # Init Utilities
 # Init Utilities
 #
 #
+# CONFIG_BOOTCHARTD is not set
+# CONFIG_FEATURE_BOOTCHARTD_BLOATED_HEADER is not set
+# CONFIG_FEATURE_BOOTCHARTD_CONFIG_FILE is not set
 CONFIG_INIT=y
 CONFIG_INIT=y
-# CONFIG_DEBUG_INIT is not set
 CONFIG_FEATURE_USE_INITTAB=y
 CONFIG_FEATURE_USE_INITTAB=y
 CONFIG_FEATURE_KILL_REMOVED=y
 CONFIG_FEATURE_KILL_REMOVED=y
 CONFIG_FEATURE_KILL_DELAY=0
 CONFIG_FEATURE_KILL_DELAY=0
@@ -381,6 +423,8 @@ CONFIG_FEATURE_EXTRA_QUIET=y
 # CONFIG_FEATURE_INIT_COREDUMPS is not set
 # CONFIG_FEATURE_INIT_COREDUMPS is not set
 CONFIG_FEATURE_INITRD=y
 CONFIG_FEATURE_INITRD=y
 CONFIG_HALT=y
 CONFIG_HALT=y
+# CONFIG_FEATURE_CALL_TELINIT is not set
+CONFIG_TELINIT_PATH=""
 CONFIG_MESG=y
 CONFIG_MESG=y
 
 
 #
 #
@@ -390,17 +434,19 @@ CONFIG_FEATURE_SHADOWPASSWDS=y
 # CONFIG_USE_BB_PWD_GRP is not set
 # CONFIG_USE_BB_PWD_GRP is not set
 # CONFIG_USE_BB_SHADOW is not set
 # CONFIG_USE_BB_SHADOW is not set
 CONFIG_USE_BB_CRYPT=y
 CONFIG_USE_BB_CRYPT=y
+# CONFIG_USE_BB_CRYPT_SHA is not set
 CONFIG_ADDGROUP=y
 CONFIG_ADDGROUP=y
+# CONFIG_FEATURE_ADDGROUP_LONG_OPTIONS is not set
 # CONFIG_FEATURE_ADDUSER_TO_GROUP is not set
 # CONFIG_FEATURE_ADDUSER_TO_GROUP is not set
 CONFIG_DELGROUP=y
 CONFIG_DELGROUP=y
 # CONFIG_FEATURE_DEL_USER_FROM_GROUP is not set
 # CONFIG_FEATURE_DEL_USER_FROM_GROUP is not set
 # CONFIG_FEATURE_CHECK_NAMES is not set
 # CONFIG_FEATURE_CHECK_NAMES is not set
 CONFIG_ADDUSER=y
 CONFIG_ADDUSER=y
 # CONFIG_FEATURE_ADDUSER_LONG_OPTIONS is not set
 # CONFIG_FEATURE_ADDUSER_LONG_OPTIONS is not set
+CONFIG_FIRST_SYSTEM_ID=100
+CONFIG_LAST_SYSTEM_ID=999
 CONFIG_DELUSER=y
 CONFIG_DELUSER=y
 CONFIG_GETTY=y
 CONFIG_GETTY=y
-CONFIG_FEATURE_UTMP=y
-CONFIG_FEATURE_WTMP=y
 CONFIG_LOGIN=y
 CONFIG_LOGIN=y
 # CONFIG_PAM is not set
 # CONFIG_PAM is not set
 # CONFIG_LOGIN_SCRIPTS is not set
 # CONFIG_LOGIN_SCRIPTS is not set
@@ -422,40 +468,46 @@ CONFIG_VLOCK=y
 CONFIG_CHATTR=y
 CONFIG_CHATTR=y
 CONFIG_FSCK=y
 CONFIG_FSCK=y
 CONFIG_LSATTR=y
 CONFIG_LSATTR=y
+# CONFIG_TUNE2FS is not set
 
 
 #
 #
 # Linux Module Utilities
 # Linux Module Utilities
 #
 #
-# CONFIG_DEPMOD is not set
-# CONFIG_FEATURE_DEPMOD_PRUNE_FANCY is not set
-# CONFIG_FEATURE_DEPMOD_ALIAS is not set
+# CONFIG_MODINFO is not set
+# CONFIG_MODPROBE_SMALL is not set
+# CONFIG_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE is not set
+# CONFIG_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED is not set
 CONFIG_INSMOD=y
 CONFIG_INSMOD=y
-# CONFIG_FEATURE_INSMOD_VERSION_CHECKING is not set
-# CONFIG_FEATURE_INSMOD_KSYMOOPS_SYMBOLS is not set
-# CONFIG_FEATURE_INSMOD_LOADINKMEM is not set
-CONFIG_FEATURE_INSMOD_LOAD_MAP=y
-CONFIG_FEATURE_INSMOD_LOAD_MAP_FULL=y
 CONFIG_RMMOD=y
 CONFIG_RMMOD=y
 CONFIG_LSMOD=y
 CONFIG_LSMOD=y
 CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT=y
 CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT=y
 CONFIG_MODPROBE=y
 CONFIG_MODPROBE=y
-CONFIG_FEATURE_MODPROBE_MULTIPLE_OPTIONS=y
-CONFIG_FEATURE_MODPROBE_FANCY_ALIAS=y
 # CONFIG_FEATURE_MODPROBE_BLACKLIST is not set
 # CONFIG_FEATURE_MODPROBE_BLACKLIST is not set
+# CONFIG_DEPMOD is not set
 
 
 #
 #
 # Options common to multiple modutils
 # Options common to multiple modutils
 #
 #
-CONFIG_FEATURE_CHECK_TAINTED_MODULE=y
 # CONFIG_FEATURE_2_4_MODULES is not set
 # CONFIG_FEATURE_2_4_MODULES is not set
-CONFIG_FEATURE_2_6_MODULES=y
+# CONFIG_FEATURE_INSMOD_TRY_MMAP is not set
+# CONFIG_FEATURE_INSMOD_VERSION_CHECKING is not set
+# CONFIG_FEATURE_INSMOD_KSYMOOPS_SYMBOLS is not set
+# CONFIG_FEATURE_INSMOD_LOADINKMEM is not set
+# CONFIG_FEATURE_INSMOD_LOAD_MAP is not set
+# CONFIG_FEATURE_INSMOD_LOAD_MAP_FULL is not set
+CONFIG_FEATURE_CHECK_TAINTED_MODULE=y
+CONFIG_FEATURE_MODUTILS_ALIAS=y
+CONFIG_FEATURE_MODUTILS_SYMBOLS=y
 CONFIG_DEFAULT_MODULES_DIR="/lib/modules"
 CONFIG_DEFAULT_MODULES_DIR="/lib/modules"
 CONFIG_DEFAULT_DEPMOD_FILE="modules.dep"
 CONFIG_DEFAULT_DEPMOD_FILE="modules.dep"
-# CONFIG_FEATURE_QUERY_MODULE_INTERFACE is not set
 
 
 #
 #
 # Linux System Utilities
 # Linux System Utilities
 #
 #
+# CONFIG_REV is not set
+# CONFIG_ACPID is not set
+# CONFIG_FEATURE_ACPID_COMPAT is not set
+# CONFIG_BLKID is not set
 CONFIG_DMESG=y
 CONFIG_DMESG=y
 CONFIG_FEATURE_DMESG_PRETTY=y
 CONFIG_FEATURE_DMESG_PRETTY=y
 # CONFIG_FBSET is not set
 # CONFIG_FBSET is not set
@@ -472,11 +524,16 @@ CONFIG_FDFORMAT=y
 # CONFIG_FEATURE_OSF_LABEL is not set
 # CONFIG_FEATURE_OSF_LABEL is not set
 # CONFIG_FEATURE_FDISK_ADVANCED is not set
 # CONFIG_FEATURE_FDISK_ADVANCED is not set
 # CONFIG_FINDFS is not set
 # CONFIG_FINDFS is not set
+# CONFIG_FLOCK is not set
 CONFIG_FREERAMDISK=y
 CONFIG_FREERAMDISK=y
 # CONFIG_FSCK_MINIX is not set
 # CONFIG_FSCK_MINIX is not set
+# CONFIG_MKFS_EXT2 is not set
 # CONFIG_MKFS_MINIX is not set
 # CONFIG_MKFS_MINIX is not set
 # CONFIG_FEATURE_MINIX2 is not set
 # CONFIG_FEATURE_MINIX2 is not set
+# CONFIG_MKFS_REISER is not set
+# CONFIG_MKFS_VFAT is not set
 CONFIG_GETOPT=y
 CONFIG_GETOPT=y
+CONFIG_FEATURE_GETOPT_LONG=y
 CONFIG_HEXDUMP=y
 CONFIG_HEXDUMP=y
 # CONFIG_FEATURE_HEXDUMP_REVERSE is not set
 # CONFIG_FEATURE_HEXDUMP_REVERSE is not set
 # CONFIG_HD is not set
 # CONFIG_HD is not set
@@ -486,6 +543,8 @@ CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS=y
 CONFIG_IPCRM=y
 CONFIG_IPCRM=y
 CONFIG_IPCS=y
 CONFIG_IPCS=y
 CONFIG_LOSETUP=y
 CONFIG_LOSETUP=y
+CONFIG_LSPCI=y
+CONFIG_LSUSB=y
 CONFIG_MDEV=y
 CONFIG_MDEV=y
 CONFIG_FEATURE_MDEV_CONF=y
 CONFIG_FEATURE_MDEV_CONF=y
 # CONFIG_FEATURE_MDEV_RENAME is not set
 # CONFIG_FEATURE_MDEV_RENAME is not set
@@ -493,11 +552,12 @@ CONFIG_FEATURE_MDEV_CONF=y
 CONFIG_FEATURE_MDEV_EXEC=y
 CONFIG_FEATURE_MDEV_EXEC=y
 # CONFIG_FEATURE_MDEV_LOAD_FIRMWARE is not set
 # CONFIG_FEATURE_MDEV_LOAD_FIRMWARE is not set
 CONFIG_MKSWAP=y
 CONFIG_MKSWAP=y
-# CONFIG_FEATURE_MKSWAP_V0 is not set
+# CONFIG_FEATURE_MKSWAP_UUID is not set
 CONFIG_MORE=y
 CONFIG_MORE=y
 CONFIG_FEATURE_USE_TERMIOS=y
 CONFIG_FEATURE_USE_TERMIOS=y
 # CONFIG_VOLUMEID is not set
 # CONFIG_VOLUMEID is not set
 # CONFIG_FEATURE_VOLUMEID_EXT is not set
 # CONFIG_FEATURE_VOLUMEID_EXT is not set
+# CONFIG_FEATURE_VOLUMEID_BTRFS is not set
 # CONFIG_FEATURE_VOLUMEID_REISERFS is not set
 # CONFIG_FEATURE_VOLUMEID_REISERFS is not set
 # CONFIG_FEATURE_VOLUMEID_FAT is not set
 # CONFIG_FEATURE_VOLUMEID_FAT is not set
 # CONFIG_FEATURE_VOLUMEID_HFS is not set
 # CONFIG_FEATURE_VOLUMEID_HFS is not set
@@ -524,9 +584,11 @@ CONFIG_FEATURE_MOUNT_FLAGS=y
 CONFIG_FEATURE_MOUNT_FSTAB=y
 CONFIG_FEATURE_MOUNT_FSTAB=y
 CONFIG_PIVOT_ROOT=y
 CONFIG_PIVOT_ROOT=y
 CONFIG_RDATE=y
 CONFIG_RDATE=y
+# CONFIG_RDEV is not set
 CONFIG_READPROFILE=y
 CONFIG_READPROFILE=y
 # CONFIG_RTCWAKE is not set
 # CONFIG_RTCWAKE is not set
 # CONFIG_SCRIPT is not set
 # CONFIG_SCRIPT is not set
+# CONFIG_SCRIPTREPLAY is not set
 CONFIG_SETARCH=y
 CONFIG_SETARCH=y
 CONFIG_SWAPONOFF=y
 CONFIG_SWAPONOFF=y
 # CONFIG_FEATURE_SWAPON_PRI is not set
 # CONFIG_FEATURE_SWAPON_PRI is not set
@@ -538,13 +600,20 @@ CONFIG_FEATURE_UMOUNT_ALL=y
 # Common options for mount/umount
 # Common options for mount/umount
 #
 #
 CONFIG_FEATURE_MOUNT_LOOP=y
 CONFIG_FEATURE_MOUNT_LOOP=y
+CONFIG_FEATURE_MOUNT_LOOP_CREATE=y
 # CONFIG_FEATURE_MTAB_SUPPORT is not set
 # CONFIG_FEATURE_MTAB_SUPPORT is not set
 
 
 #
 #
 # Miscellaneous Utilities
 # Miscellaneous Utilities
 #
 #
+# CONFIG_CONSPY is not set
+# CONFIG_UBIATTACH is not set
+# CONFIG_UBIDETACH is not set
 # CONFIG_ADJTIMEX is not set
 # CONFIG_ADJTIMEX is not set
 # CONFIG_BBCONFIG is not set
 # CONFIG_BBCONFIG is not set
+# CONFIG_BEEP is not set
+CONFIG_FEATURE_BEEP_FREQ=0
+CONFIG_FEATURE_BEEP_LENGTH_MS=0
 # CONFIG_CHAT is not set
 # CONFIG_CHAT is not set
 # CONFIG_FEATURE_CHAT_NOFAIL is not set
 # CONFIG_FEATURE_CHAT_NOFAIL is not set
 # CONFIG_FEATURE_CHAT_TTY_HIFI is not set
 # CONFIG_FEATURE_CHAT_TTY_HIFI is not set
@@ -555,18 +624,26 @@ CONFIG_FEATURE_MOUNT_LOOP=y
 # CONFIG_FEATURE_CHAT_CLR_ABORT is not set
 # CONFIG_FEATURE_CHAT_CLR_ABORT is not set
 CONFIG_CHRT=y
 CONFIG_CHRT=y
 CONFIG_CROND=y
 CONFIG_CROND=y
-CONFIG_DEBUG_CROND_OPTION=y
+# CONFIG_FEATURE_CROND_D is not set
 # CONFIG_FEATURE_CROND_CALL_SENDMAIL is not set
 # CONFIG_FEATURE_CROND_CALL_SENDMAIL is not set
+CONFIG_FEATURE_CROND_DIR="/var/spool/cron"
 CONFIG_CRONTAB=y
 CONFIG_CRONTAB=y
 CONFIG_DC=y
 CONFIG_DC=y
+# CONFIG_FEATURE_DC_LIBM is not set
 # CONFIG_DEVFSD is not set
 # CONFIG_DEVFSD is not set
 # CONFIG_DEVFSD_MODLOAD is not set
 # CONFIG_DEVFSD_MODLOAD is not set
 # CONFIG_DEVFSD_FG_NP is not set
 # CONFIG_DEVFSD_FG_NP is not set
 # CONFIG_DEVFSD_VERBOSE is not set
 # CONFIG_DEVFSD_VERBOSE is not set
 # CONFIG_FEATURE_DEVFS is not set
 # CONFIG_FEATURE_DEVFS is not set
+CONFIG_DEVMEM=y
 CONFIG_EJECT=y
 CONFIG_EJECT=y
 # CONFIG_FEATURE_EJECT_SCSI is not set
 # CONFIG_FEATURE_EJECT_SCSI is not set
 # CONFIG_FBSPLASH is not set
 # CONFIG_FBSPLASH is not set
+# CONFIG_FLASHCP is not set
+# CONFIG_FLASH_LOCK is not set
+# CONFIG_FLASH_UNLOCK is not set
+# CONFIG_FLASH_ERASEALL is not set
+# CONFIG_IONICE is not set
 # CONFIG_INOTIFYD is not set
 # CONFIG_INOTIFYD is not set
 CONFIG_LAST=y
 CONFIG_LAST=y
 CONFIG_FEATURE_LAST_SMALL=y
 CONFIG_FEATURE_LAST_SMALL=y
@@ -575,9 +652,11 @@ CONFIG_LESS=y
 CONFIG_FEATURE_LESS_MAXLINES=9999999
 CONFIG_FEATURE_LESS_MAXLINES=9999999
 CONFIG_FEATURE_LESS_BRACKETS=y
 CONFIG_FEATURE_LESS_BRACKETS=y
 CONFIG_FEATURE_LESS_FLAGS=y
 CONFIG_FEATURE_LESS_FLAGS=y
-CONFIG_FEATURE_LESS_FLAGCS=y
 # CONFIG_FEATURE_LESS_MARKS is not set
 # CONFIG_FEATURE_LESS_MARKS is not set
 CONFIG_FEATURE_LESS_REGEXP=y
 CONFIG_FEATURE_LESS_REGEXP=y
+# CONFIG_FEATURE_LESS_WINCH is not set
+# CONFIG_FEATURE_LESS_DASHCMD is not set
+# CONFIG_FEATURE_LESS_LINENUMS is not set
 CONFIG_HDPARM=y
 CONFIG_HDPARM=y
 CONFIG_FEATURE_HDPARM_GET_IDENTITY=y
 CONFIG_FEATURE_HDPARM_GET_IDENTITY=y
 # CONFIG_FEATURE_HDPARM_HDIO_SCAN_HWIF is not set
 # CONFIG_FEATURE_HDPARM_HDIO_SCAN_HWIF is not set
@@ -594,6 +673,7 @@ CONFIG_MOUNTPOINT=y
 CONFIG_MT=y
 CONFIG_MT=y
 # CONFIG_RAIDAUTORUN is not set
 # CONFIG_RAIDAUTORUN is not set
 # CONFIG_READAHEAD is not set
 # CONFIG_READAHEAD is not set
+# CONFIG_RFKILL is not set
 CONFIG_RUNLEVEL=y
 CONFIG_RUNLEVEL=y
 # CONFIG_RX is not set
 # CONFIG_RX is not set
 CONFIG_SETSID=y
 CONFIG_SETSID=y
@@ -601,13 +681,21 @@ CONFIG_STRINGS=y
 # CONFIG_TASKSET is not set
 # CONFIG_TASKSET is not set
 # CONFIG_FEATURE_TASKSET_FANCY is not set
 # CONFIG_FEATURE_TASKSET_FANCY is not set
 CONFIG_TIME=y
 CONFIG_TIME=y
+# CONFIG_TIMEOUT is not set
 # CONFIG_TTYSIZE is not set
 # CONFIG_TTYSIZE is not set
+# CONFIG_VOLNAME is not set
+# CONFIG_WALL is not set
 CONFIG_WATCHDOG=y
 CONFIG_WATCHDOG=y
 
 
 #
 #
 # Networking Utilities
 # Networking Utilities
 #
 #
+# CONFIG_NC is not set
+# CONFIG_NC_SERVER is not set
+# CONFIG_NC_EXTRA is not set
+# CONFIG_NC_110_COMPAT is not set
 # CONFIG_FEATURE_IPV6 is not set
 # CONFIG_FEATURE_IPV6 is not set
+# CONFIG_FEATURE_UNIX_LOCAL is not set
 # CONFIG_FEATURE_PREFER_IPV4_ADDRESS is not set
 # CONFIG_FEATURE_PREFER_IPV4_ADDRESS is not set
 # CONFIG_VERBOSE_RESOLUTION_ERRORS is not set
 # CONFIG_VERBOSE_RESOLUTION_ERRORS is not set
 # CONFIG_ARP is not set
 # CONFIG_ARP is not set
@@ -618,6 +706,9 @@ CONFIG_ARPING=y
 CONFIG_DNSD=y
 CONFIG_DNSD=y
 CONFIG_ETHER_WAKE=y
 CONFIG_ETHER_WAKE=y
 # CONFIG_FAKEIDENTD is not set
 # CONFIG_FAKEIDENTD is not set
+# CONFIG_FTPD is not set
+# CONFIG_FEATURE_FTP_WRITE is not set
+# CONFIG_FEATURE_FTPD_ACCEPT_BROKEN_LIST is not set
 # CONFIG_FTPGET is not set
 # CONFIG_FTPGET is not set
 # CONFIG_FTPPUT is not set
 # CONFIG_FTPPUT is not set
 # CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS is not set
 # CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS is not set
@@ -625,11 +716,9 @@ CONFIG_HOSTNAME=y
 # CONFIG_HTTPD is not set
 # CONFIG_HTTPD is not set
 # CONFIG_FEATURE_HTTPD_RANGES is not set
 # CONFIG_FEATURE_HTTPD_RANGES is not set
 # CONFIG_FEATURE_HTTPD_USE_SENDFILE is not set
 # CONFIG_FEATURE_HTTPD_USE_SENDFILE is not set
-# CONFIG_FEATURE_HTTPD_RELOAD_CONFIG_SIGHUP is not set
 # CONFIG_FEATURE_HTTPD_SETUID is not set
 # CONFIG_FEATURE_HTTPD_SETUID is not set
 # CONFIG_FEATURE_HTTPD_BASIC_AUTH is not set
 # CONFIG_FEATURE_HTTPD_BASIC_AUTH is not set
 # CONFIG_FEATURE_HTTPD_AUTH_MD5 is not set
 # CONFIG_FEATURE_HTTPD_AUTH_MD5 is not set
-# CONFIG_FEATURE_HTTPD_CONFIG_WITH_MIME_TYPES is not set
 # CONFIG_FEATURE_HTTPD_CGI is not set
 # CONFIG_FEATURE_HTTPD_CGI is not set
 # CONFIG_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR is not set
 # CONFIG_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR is not set
 # CONFIG_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV is not set
 # CONFIG_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV is not set
@@ -643,6 +732,7 @@ CONFIG_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ=y
 CONFIG_FEATURE_IFCONFIG_HW=y
 CONFIG_FEATURE_IFCONFIG_HW=y
 # CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS is not set
 # CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS is not set
 # CONFIG_IFENSLAVE is not set
 # CONFIG_IFENSLAVE is not set
+# CONFIG_IFPLUGD is not set
 CONFIG_IFUPDOWN=y
 CONFIG_IFUPDOWN=y
 CONFIG_IFUPDOWN_IFSTATE_PATH="/var/run/ifstate"
 CONFIG_IFUPDOWN_IFSTATE_PATH="/var/run/ifstate"
 CONFIG_FEATURE_IFUPDOWN_IP=y
 CONFIG_FEATURE_IFUPDOWN_IP=y
@@ -677,59 +767,86 @@ CONFIG_IPRULE=y
 # CONFIG_FEATURE_IPCALC_LONG_OPTIONS is not set
 # CONFIG_FEATURE_IPCALC_LONG_OPTIONS is not set
 CONFIG_NAMEIF=y
 CONFIG_NAMEIF=y
 # CONFIG_FEATURE_NAMEIF_EXTENDED is not set
 # CONFIG_FEATURE_NAMEIF_EXTENDED is not set
-# CONFIG_NC is not set
-# CONFIG_NC_SERVER is not set
-# CONFIG_NC_EXTRA is not set
 CONFIG_NETSTAT=y
 CONFIG_NETSTAT=y
 # CONFIG_FEATURE_NETSTAT_WIDE is not set
 # CONFIG_FEATURE_NETSTAT_WIDE is not set
+# CONFIG_FEATURE_NETSTAT_PRG is not set
 CONFIG_NSLOOKUP=y
 CONFIG_NSLOOKUP=y
+# CONFIG_NTPD is not set
+# CONFIG_FEATURE_NTPD_SERVER is not set
 CONFIG_PING=y
 CONFIG_PING=y
 # CONFIG_PING6 is not set
 # CONFIG_PING6 is not set
 CONFIG_FEATURE_FANCY_PING=y
 CONFIG_FEATURE_FANCY_PING=y
 # CONFIG_PSCAN is not set
 # CONFIG_PSCAN is not set
 CONFIG_ROUTE=y
 CONFIG_ROUTE=y
-# CONFIG_SENDMAIL is not set
-# CONFIG_FETCHMAIL is not set
 # CONFIG_SLATTACH is not set
 # CONFIG_SLATTACH is not set
+# CONFIG_TCPSVD is not set
 CONFIG_TELNET=y
 CONFIG_TELNET=y
 CONFIG_FEATURE_TELNET_TTYPE=y
 CONFIG_FEATURE_TELNET_TTYPE=y
 CONFIG_FEATURE_TELNET_AUTOLOGIN=y
 CONFIG_FEATURE_TELNET_AUTOLOGIN=y
 # CONFIG_TELNETD is not set
 # CONFIG_TELNETD is not set
 # CONFIG_FEATURE_TELNETD_STANDALONE is not set
 # CONFIG_FEATURE_TELNETD_STANDALONE is not set
+# CONFIG_FEATURE_TELNETD_INETD_WAIT is not set
 CONFIG_TFTP=y
 CONFIG_TFTP=y
 # CONFIG_TFTPD is not set
 # CONFIG_TFTPD is not set
+
+#
+# Common options for tftp/tftpd
+#
 CONFIG_FEATURE_TFTP_GET=y
 CONFIG_FEATURE_TFTP_GET=y
 CONFIG_FEATURE_TFTP_PUT=y
 CONFIG_FEATURE_TFTP_PUT=y
 CONFIG_FEATURE_TFTP_BLOCKSIZE=y
 CONFIG_FEATURE_TFTP_BLOCKSIZE=y
-# CONFIG_DEBUG_TFTP is not set
+# CONFIG_FEATURE_TFTP_PROGRESS_BAR is not set
+# CONFIG_TFTP_DEBUG is not set
 CONFIG_TRACEROUTE=y
 CONFIG_TRACEROUTE=y
+# CONFIG_TRACEROUTE6 is not set
 # CONFIG_FEATURE_TRACEROUTE_VERBOSE is not set
 # CONFIG_FEATURE_TRACEROUTE_VERBOSE is not set
 # CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE is not set
 # CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE is not set
 # CONFIG_FEATURE_TRACEROUTE_USE_ICMP is not set
 # CONFIG_FEATURE_TRACEROUTE_USE_ICMP is not set
-CONFIG_APP_UDHCPD=y
-CONFIG_APP_DHCPRELAY=y
-CONFIG_APP_DUMPLEASES=y
+# CONFIG_TUNCTL is not set
+# CONFIG_FEATURE_TUNCTL_UG is not set
+# CONFIG_UDHCPD is not set
+# CONFIG_DHCPRELAY is not set
+# CONFIG_DUMPLEASES is not set
 # CONFIG_FEATURE_UDHCPD_WRITE_LEASES_EARLY is not set
 # CONFIG_FEATURE_UDHCPD_WRITE_LEASES_EARLY is not set
-CONFIG_DHCPD_LEASES_FILE="/var/lib/misc/udhcpd.leases"
-CONFIG_APP_UDHCPC=y
+CONFIG_DHCPD_LEASES_FILE=""
+CONFIG_UDHCPC=y
 CONFIG_FEATURE_UDHCPC_ARPING=y
 CONFIG_FEATURE_UDHCPC_ARPING=y
 # CONFIG_FEATURE_UDHCP_PORT is not set
 # CONFIG_FEATURE_UDHCP_PORT is not set
-# CONFIG_FEATURE_UDHCP_DEBUG is not set
-# CONFIG_FEATURE_RFC3397 is not set
-CONFIG_DHCPC_DEFAULT_SCRIPT="/usr/share/udhcpc/default.script"
+CONFIG_UDHCP_DEBUG=0
+# CONFIG_FEATURE_UDHCP_RFC3397 is not set
+CONFIG_UDHCPC_DEFAULT_SCRIPT="/usr/share/udhcpc/default.script"
 CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=80
 CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=80
+CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS="-R -n"
+# CONFIG_UDPSVD is not set
 CONFIG_VCONFIG=y
 CONFIG_VCONFIG=y
 CONFIG_WGET=y
 CONFIG_WGET=y
 CONFIG_FEATURE_WGET_STATUSBAR=y
 CONFIG_FEATURE_WGET_STATUSBAR=y
 CONFIG_FEATURE_WGET_AUTHENTICATION=y
 CONFIG_FEATURE_WGET_AUTHENTICATION=y
 CONFIG_FEATURE_WGET_LONG_OPTIONS=y
 CONFIG_FEATURE_WGET_LONG_OPTIONS=y
 # CONFIG_ZCIP is not set
 # CONFIG_ZCIP is not set
-# CONFIG_TCPSVD is not set
-# CONFIG_UDPSVD is not set
+
+#
+# Print Utilities
+#
+# CONFIG_LPD is not set
+# CONFIG_LPR is not set
+# CONFIG_LPQ is not set
+
+#
+# Mail Utilities
+#
+# CONFIG_MAKEMIME is not set
+CONFIG_FEATURE_MIME_CHARSET=""
+# CONFIG_POPMAILDIR is not set
+# CONFIG_FEATURE_POPMAILDIR_DELIVERY is not set
+# CONFIG_REFORMIME is not set
+# CONFIG_FEATURE_REFORMIME_COMPAT is not set
+# CONFIG_SENDMAIL is not set
 
 
 #
 #
 # Process Utilities
 # Process Utilities
 #
 #
+# CONFIG_SMEMCAP is not set
 CONFIG_FREE=y
 CONFIG_FREE=y
 CONFIG_FUSER=y
 CONFIG_FUSER=y
 CONFIG_KILL=y
 CONFIG_KILL=y
@@ -744,36 +861,58 @@ CONFIG_FEATURE_PIDOF_OMIT=y
 CONFIG_PS=y
 CONFIG_PS=y
 CONFIG_FEATURE_PS_WIDE=y
 CONFIG_FEATURE_PS_WIDE=y
 # CONFIG_FEATURE_PS_TIME is not set
 # CONFIG_FEATURE_PS_TIME is not set
+# CONFIG_FEATURE_PS_ADDITIONAL_COLUMNS is not set
 # CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS is not set
 # CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS is not set
 CONFIG_RENICE=y
 CONFIG_RENICE=y
 CONFIG_BB_SYSCTL=y
 CONFIG_BB_SYSCTL=y
 CONFIG_TOP=y
 CONFIG_TOP=y
 CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE=y
 CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE=y
 CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS=y
 CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS=y
+# CONFIG_FEATURE_TOP_SMP_CPU is not set
 # CONFIG_FEATURE_TOP_DECIMALS is not set
 # CONFIG_FEATURE_TOP_DECIMALS is not set
+# CONFIG_FEATURE_TOP_SMP_PROCESS is not set
 # CONFIG_FEATURE_TOPMEM is not set
 # CONFIG_FEATURE_TOPMEM is not set
+# CONFIG_FEATURE_SHOW_THREADS is not set
 CONFIG_UPTIME=y
 CONFIG_UPTIME=y
 CONFIG_WATCH=y
 CONFIG_WATCH=y
 
 
 #
 #
-# Shells
+# Runit Utilities
 #
 #
-CONFIG_FEATURE_SH_IS_ASH=y
-# CONFIG_FEATURE_SH_IS_HUSH is not set
-# CONFIG_FEATURE_SH_IS_MSH is not set
-# CONFIG_FEATURE_SH_IS_NONE is not set
-CONFIG_ASH=y
+# CONFIG_RUNSV is not set
+# CONFIG_RUNSVDIR is not set
+# CONFIG_FEATURE_RUNSVDIR_LOG is not set
+# CONFIG_SV is not set
+CONFIG_SV_DEFAULT_SERVICE_DIR=""
+# CONFIG_SVLOGD is not set
+# CONFIG_CHPST is not set
+# CONFIG_SETUIDGID is not set
+# CONFIG_ENVUIDGID is not set
+# CONFIG_ENVDIR is not set
+# CONFIG_SOFTLIMIT is not set
+# CONFIG_CHCON is not set
+# CONFIG_FEATURE_CHCON_LONG_OPTIONS is not set
+# CONFIG_GETENFORCE is not set
+# CONFIG_GETSEBOOL is not set
+# CONFIG_LOAD_POLICY is not set
+# CONFIG_MATCHPATHCON is not set
+# CONFIG_RESTORECON is not set
+# CONFIG_RUNCON is not set
+# CONFIG_FEATURE_RUNCON_LONG_OPTIONS is not set
+# CONFIG_SELINUXENABLED is not set
+# CONFIG_SETENFORCE is not set
+# CONFIG_SETFILES is not set
+# CONFIG_FEATURE_SETFILES_CHECK_OPTION is not set
+# CONFIG_SETSEBOOL is not set
+# CONFIG_SESTATUS is not set
 
 
 #
 #
-# Ash Shell Options
+# Shells
 #
 #
+CONFIG_ASH=y
 CONFIG_ASH_BASH_COMPAT=y
 CONFIG_ASH_BASH_COMPAT=y
 CONFIG_ASH_JOB_CONTROL=y
 CONFIG_ASH_JOB_CONTROL=y
-CONFIG_ASH_READ_NCHARS=y
-CONFIG_ASH_READ_TIMEOUT=y
 CONFIG_ASH_ALIAS=y
 CONFIG_ASH_ALIAS=y
-CONFIG_ASH_MATH_SUPPORT=y
-CONFIG_ASH_MATH_SUPPORT_64=y
 # CONFIG_ASH_GETOPTS is not set
 # CONFIG_ASH_GETOPTS is not set
 CONFIG_ASH_BUILTIN_ECHO=y
 CONFIG_ASH_BUILTIN_ECHO=y
 CONFIG_ASH_BUILTIN_PRINTF=y
 CONFIG_ASH_BUILTIN_PRINTF=y
@@ -784,18 +923,28 @@ CONFIG_ASH_OPTIMIZE_FOR_SIZE=y
 CONFIG_ASH_RANDOM_SUPPORT=y
 CONFIG_ASH_RANDOM_SUPPORT=y
 CONFIG_ASH_EXPAND_PRMT=y
 CONFIG_ASH_EXPAND_PRMT=y
 # CONFIG_HUSH is not set
 # CONFIG_HUSH is not set
+# CONFIG_HUSH_BASH_COMPAT is not set
 # CONFIG_HUSH_HELP is not set
 # CONFIG_HUSH_HELP is not set
 # CONFIG_HUSH_INTERACTIVE is not set
 # CONFIG_HUSH_INTERACTIVE is not set
 # CONFIG_HUSH_JOB is not set
 # CONFIG_HUSH_JOB is not set
 # CONFIG_HUSH_TICK is not set
 # CONFIG_HUSH_TICK is not set
 # CONFIG_HUSH_IF is not set
 # CONFIG_HUSH_IF is not set
 # CONFIG_HUSH_LOOPS is not set
 # CONFIG_HUSH_LOOPS is not set
+# CONFIG_HUSH_CASE is not set
+# CONFIG_HUSH_FUNCTIONS is not set
+# CONFIG_HUSH_LOCAL is not set
+# CONFIG_HUSH_EXPORT_N is not set
+# CONFIG_HUSH_RANDOM_SUPPORT is not set
+CONFIG_FEATURE_SH_IS_ASH=y
+# CONFIG_FEATURE_SH_IS_HUSH is not set
+# CONFIG_FEATURE_SH_IS_NONE is not set
+# CONFIG_FEATURE_BASH_IS_ASH is not set
+# CONFIG_FEATURE_BASH_IS_HUSH is not set
+CONFIG_FEATURE_BASH_IS_NONE=y
 # CONFIG_LASH is not set
 # CONFIG_LASH is not set
 # CONFIG_MSH is not set
 # CONFIG_MSH is not set
-
-#
-# Bourne Shell Options
-#
+CONFIG_SH_MATH_SUPPORT=y
+# CONFIG_SH_MATH_SUPPORT_64 is not set
 CONFIG_FEATURE_SH_EXTRA_QUIET=y
 CONFIG_FEATURE_SH_EXTRA_QUIET=y
 # CONFIG_FEATURE_SH_STANDALONE is not set
 # CONFIG_FEATURE_SH_STANDALONE is not set
 # CONFIG_FEATURE_SH_NOFORK is not set
 # CONFIG_FEATURE_SH_NOFORK is not set
@@ -808,44 +957,10 @@ CONFIG_SYSLOGD=y
 CONFIG_FEATURE_ROTATE_LOGFILE=y
 CONFIG_FEATURE_ROTATE_LOGFILE=y
 CONFIG_FEATURE_REMOTE_LOG=y
 CONFIG_FEATURE_REMOTE_LOG=y
 # CONFIG_FEATURE_SYSLOGD_DUP is not set
 # CONFIG_FEATURE_SYSLOGD_DUP is not set
+CONFIG_FEATURE_SYSLOGD_READ_BUFFER_SIZE=256
 # CONFIG_FEATURE_IPC_SYSLOG is not set
 # CONFIG_FEATURE_IPC_SYSLOG is not set
-CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE=
+CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE=0
 # CONFIG_LOGREAD is not set
 # CONFIG_LOGREAD is not set
 # CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING is not set
 # CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING is not set
 CONFIG_KLOGD=y
 CONFIG_KLOGD=y
 CONFIG_LOGGER=y
 CONFIG_LOGGER=y
-
-#
-# Runit Utilities
-#
-# CONFIG_RUNSV is not set
-# CONFIG_RUNSVDIR is not set
-# CONFIG_SV is not set
-# CONFIG_SVLOGD is not set
-# CONFIG_CHPST is not set
-# CONFIG_SETUIDGID is not set
-# CONFIG_ENVUIDGID is not set
-# CONFIG_ENVDIR is not set
-# CONFIG_SOFTLIMIT is not set
-# CONFIG_CHCON is not set
-# CONFIG_FEATURE_CHCON_LONG_OPTIONS is not set
-# CONFIG_GETENFORCE is not set
-# CONFIG_GETSEBOOL is not set
-# CONFIG_LOAD_POLICY is not set
-# CONFIG_MATCHPATHCON is not set
-# CONFIG_RESTORECON is not set
-# CONFIG_RUNCON is not set
-# CONFIG_FEATURE_RUNCON_LONG_OPTIONS is not set
-# CONFIG_SELINUXENABLED is not set
-# CONFIG_SETENFORCE is not set
-# CONFIG_SETFILES is not set
-# CONFIG_FEATURE_SETFILES_CHECK_OPTION is not set
-# CONFIG_SETSEBOOL is not set
-# CONFIG_SESTATUS is not set
-
-#
-# Print Utilities
-#
-# CONFIG_LPD is not set
-# CONFIG_LPR is not set
-# CONFIG_LPQ is not set

+ 130 - 104
package/busybox/busybox.mk

@@ -4,149 +4,175 @@
 #
 #
 #############################################################
 #############################################################
 
 
-
 ifeq ($(BR2_PACKAGE_BUSYBOX_SNAPSHOT),y)
 ifeq ($(BR2_PACKAGE_BUSYBOX_SNAPSHOT),y)
-# Be aware that this changes daily....
-BUSYBOX_DIR:=$(BUILD_DIR)/busybox
-BUSYBOX_SOURCE:=busybox-snapshot.tar.bz2
-BUSYBOX_SITE:=http://www.busybox.net/downloads/snapshots
+BUSYBOX_VERSION = snapshot
+BUSYBOX_SITE = http://www.busybox.net/downloads/snapshots
 else
 else
-BUSYBOX_VERSION=$(call qstrip,$(BR2_BUSYBOX_VERSION))
-BUSYBOX_DIR:=$(BUILD_DIR)/busybox-$(BUSYBOX_VERSION)
-BUSYBOX_SOURCE:=busybox-$(BUSYBOX_VERSION).tar.bz2
-BUSYBOX_SITE:=http://www.busybox.net/downloads
+BUSYBOX_VERSION = $(call qstrip,$(BR2_BUSYBOX_VERSION))
+BUSYBOX_SITE = http://www.busybox.net/downloads
 endif
 endif
-
-BUSYBOX_UNZIP=$(BZCAT)
-BUSYBOX_CFLAGS=$(TARGET_CFLAGS) -I$(LINUX_HEADERS_DIR)/include
+BUSYBOX_SOURCE = busybox-$(BUSYBOX_VERSION).tar.bz2
+BUSYBOX_CFLAGS = "$(TARGET_CFLAGS) -I$(LINUX_HEADERS_DIR)/include"
+BUSYBOX_BUILD_CONFIG = $(BUSYBOX_DIR)/.config
 
 
 ifndef BUSYBOX_CONFIG_FILE
 ifndef BUSYBOX_CONFIG_FILE
-BUSYBOX_CONFIG_FILE=$(call qstrip,$(BR2_PACKAGE_BUSYBOX_CONFIG))
+	BUSYBOX_CONFIG_FILE = $(call qstrip,$(BR2_PACKAGE_BUSYBOX_CONFIG))
 endif
 endif
 
 
-$(DL_DIR)/$(BUSYBOX_SOURCE):
-	$(call DOWNLOAD,$(BUSYBOX_SITE),$(BUSYBOX_SOURCE))
-
-$(BUSYBOX_DIR)/.unpacked: $(DL_DIR)/$(BUSYBOX_SOURCE)
-	$(BUSYBOX_UNZIP) $(DL_DIR)/$(BUSYBOX_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
+# If we have external syslogd, force busybox to use it
 ifeq ($(BR2_PACKAGE_SYSKLOGD),y)
 ifeq ($(BR2_PACKAGE_SYSKLOGD),y)
-	# if we have external syslogd, force busybox to use it
-	$(SED) "/#include.*busybox\.h/a#define CONFIG_SYSLOGD" $(BUSYBOX_DIR)/init/init.c
+define BUSYBOX_SET_SYSKLOGD
+	@$(SED) "/#include.*busybox\.h/a#define CONFIG_SYSLOGD" \
+		$(BUSYBOX_DIR)/init/init.c
+endef
 endif
 endif
-	# Allow busybox patches.
-ifeq ($(BR2_PACKAGE_BUSYBOX_SNAPSHOT),y)
-	toolchain/patch-kernel.sh $(BUSYBOX_DIR) package/busybox busybox.\*.patch
-else
-	toolchain/patch-kernel.sh $(BUSYBOX_DIR) package/busybox busybox-$(BUSYBOX_VERSION)-\*.patch
-endif
-	touch $@
-
-$(BUSYBOX_DIR)/.config: $(BUSYBOX_DIR)/.unpacked $(BUSYBOX_CONFIG_FILE)
-	cp -f $(BUSYBOX_CONFIG_FILE) $(BUSYBOX_DIR)/.config
-	$(SED) s,^CONFIG_PREFIX=.*,CONFIG_PREFIX=\"$(TARGET_DIR)\", \
-		$(BUSYBOX_DIR)/.config
-	$(SED) 's,^CONFIG_EXTRA_CFLAGS=.*,CONFIG_EXTRA_CFLAGS=\"$(BUSYBOX_CFLAGS)\",' \
-		$(BUSYBOX_DIR)/.config
+
 # id applet breaks on >=1.13.0 with old uclibc unless the bb pwd routines are used
 # id applet breaks on >=1.13.0 with old uclibc unless the bb pwd routines are used
 ifeq ($(BR2_BUSYBOX_VERSION_1_13_X)$(BR2_BUSYBOX_VERSION_1_14_X)$(BR2_UCLIBC_VERSION_0_9_28_3)$(BR2_UCLIBC_VERSION_0_9_29),yy)
 ifeq ($(BR2_BUSYBOX_VERSION_1_13_X)$(BR2_BUSYBOX_VERSION_1_14_X)$(BR2_UCLIBC_VERSION_0_9_28_3)$(BR2_UCLIBC_VERSION_0_9_29),yy)
-	if grep -q 'CONFIG_ID=y' $(BUSYBOX_DIR)/.config; \
+define BUSYBOX_SET_BB_PWD
+	if grep -q 'CONFIG_ID=y' $(BUSYBOX_BUILD_CONFIG); \
 	then \
 	then \
 		echo 'warning: CONFIG_ID needs BB_PWD_GRP with old uclibc, enabling' >&2;\
 		echo 'warning: CONFIG_ID needs BB_PWD_GRP with old uclibc, enabling' >&2;\
-		$(SED) "s/^.*CONFIG_USE_BB_PWD_GRP.*/CONFIG_USE_BB_PWD_GRP=y/;" $(BUSYBOX_DIR)/.config; \
+		$(SED) "s/^.*CONFIG_USE_BB_PWD_GRP.*/CONFIG_USE_BB_PWD_GRP=y/;" $(BUSYBOX_BUILD_CONFIG); \
 	fi
 	fi
+endef
 endif
 endif
-ifeq ($(BR2_PACKAGE_BUSYBOX_SNAPSHOT),y)
-	$(SED) s,^CROSS_COMPILER_PREFIX=.*,CROSS_COMPILER_PREFIX=\"$(TARGET_CROSS)\", \
-		$(BUSYBOX_DIR)/.config
-	$(SED) s,^PREFIX=.*,CROSS_COMPILER_PREFIX=\"$(TARGET_CROSS)\", \
-		$(BUSYBOX_DIR)/.config
-endif
+
 ifeq ($(BR2_LARGEFILE),y)
 ifeq ($(BR2_LARGEFILE),y)
-	$(SED) "s/^.*CONFIG_LFS.*/CONFIG_LFS=y/;" $(BUSYBOX_DIR)/.config
-	$(SED) "s/^.*CONFIG_FDISK_SUPPORT_LARGE_DISKS.*/CONFIG_FDISK_SUPPORT_LARGE_DISKS=y/;" $(BUSYBOX_DIR)/.config
+define BUSYBOX_SET_LARGEFILE
+	$(call KCONFIG_ENABLE_OPT,CONFIG_LFS,$(BUSYBOX_BUILD_CONFIG))
+	$(call KCONFIG_ENABLE_OPT,CONFIG_FDISK_SUPPORT_LARGE_DISKS,$(BUSYBOX_BUILD_CONFIG))
+endef
 else
 else
-	$(SED) "s/^.*CONFIG_LFS.*/CONFIG_LFS=n/;" $(BUSYBOX_DIR)/.config
-	$(SED) "s/^.*FDISK_SUPPORT_LARGE_DISKS.*/CONFIG_FDISK_SUPPORT_LARGE_DISKS=n/;" $(BUSYBOX_DIR)/.config
+define BUSYBOX_SET_LARGEFILE
+	$(call KCONFIG_DISABLE_OPT,CONFIG_LFS,$(BUSYBOX_BUILD_CONFIG))
+	$(call KCONFIG_DISABLE_OPT,CONFIG_FDISK_SUPPORT_LARGE_DISKS,$(BUSYBOX_BUILD_CONFIG))
+endef
 endif
 endif
+
+# If IPv6 is enabled then enable basic ifupdown support for it
 ifeq ($(BR2_INET_IPV6),y)
 ifeq ($(BR2_INET_IPV6),y)
-	$(SED) "s/^.*CONFIG_FEATURE_IPV6.*/CONFIG_FEATURE_IPV6=y/;" $(BUSYBOX_DIR)/.config
-	$(SED) "s/^.*CONFIG_FEATURE_IFUPDOWN_IPV6.*/CONFIG_FEATURE_IFUPDOWN_IPV6=y/;" $(BUSYBOX_DIR)/.config
+define BUSYBOX_SET_IPV6
+	$(call KCONFIG_ENABLE_OPT,CONFIG_FEATURE_IPV6,$(BUSYBOX_BUILD_CONFIG))
+	$(call KCONFIG_ENABLE_OPT,CONFIG_FEATURE_IFUPDOWN_IPV6,$(BUSYBOX_BUILD_CONFIG))
+endef
 else
 else
-	$(SED) "s/^.*CONFIG_FEATURE_IPV6.*/CONFIG_FEATURE_IPV6=n/;" $(BUSYBOX_DIR)/.config
-	$(SED) "s/^.*CONFIG_FEATURE_IFUPDOWN_IPV6.*/CONFIG_FEATURE_IFUPDOWN_IPV6=n/;" $(BUSYBOX_DIR)/.config
+define BUSYBOX_SET_IPV6
+	$(call KCONFIG_DISABLE_OPT,CONFIG_FEATURE_IPV6,$(BUSYBOX_BUILD_CONFIG))
+	$(call KCONFIG_DISABLE_OPT,CONFIG_FEATURE_IFUPDOWN_IPV6,$(BUSYBOX_BUILD_CONFIG))
+endef
 endif
 endif
+
+# If RPC is enabled then enable nfs mounts
 ifeq ($(BR2_INET_RPC),y)
 ifeq ($(BR2_INET_RPC),y)
-	$(SED) "s/^.*CONFIG_FEATURE_MOUNT_NFS.*/CONFIG_FEATURE_MOUNT_NFS=y/;" $(BUSYBOX_DIR)/.config
+define BUSYBOX_SET_RPC
+	$(call KCONFIG_ENABLE_OPT,CONFIG_FEATURE_MOUNT_NFS,$(BUSYBOX_BUILD_CONFIG))
+endef
 else
 else
-	$(SED) "s/^.*CONFIG_FEATURE_MOUNT_NFS.*/CONFIG_FEATURE_MOUNT_NFS=n/;" $(BUSYBOX_DIR)/.config
+define BUSYBOX_SET_RPC
+	$(call KCONFIG_DISABLE_OPT,CONFIG_FEATURE_MOUNT_NFS,$(BUSYBOX_BUILD_CONFIG))
+endef
 endif
 endif
+
+# If we're using static libs do the same for busybox
 ifeq ($(BR2_PREFER_STATIC_LIB),y)
 ifeq ($(BR2_PREFER_STATIC_LIB),y)
-	$(SED) "s/^.*CONFIG_STATIC.*/CONFIG_STATIC=y/;" $(BUSYBOX_DIR)/.config
+define BUSYBOX_PREFER_STATIC
+	$(call KCONFIG_ENABLE_OPT,CONFIG_STATIC,$(BUSYBOX_BUILD_CONFIG))
+endef
 else
 else
-	$(SED) "s/^.*CONFIG_STATIC.*/CONFIG_STATIC=n/;" $(BUSYBOX_DIR)/.config
+define BUSYBOX_PREFER_STATIC
+	$(call KCONFIG_DISABLE_OPT,CONFIG_STATIC,$(BUSYBOX_BUILD_CONFIG))
+endef
 endif
 endif
+
+# Enable mdev for busybox skeleton
 ifeq ($(BR2_PACKAGE_BUSYBOX_SKELETON),y)
 ifeq ($(BR2_PACKAGE_BUSYBOX_SKELETON),y)
-	# force mdev on
-	$(SED) "s/^.*CONFIG_MDEV.*/CONFIG_MDEV=y/" $(BUSYBOX_DIR)/.config
+define BUSYBOX_SKELETON
+	$(call KCONFIG_ENABLE_OPT,CONFIG_MDEV,$(BUSYBOX_BUILD_CONFIG))
+endef
 endif
 endif
+
+# Disable usage of inetd if netkit-base package is selected
 ifeq ($(BR2_PACKAGE_NETKITBASE),y)
 ifeq ($(BR2_PACKAGE_NETKITBASE),y)
-	# disable usage of inetd if netkit-base package is selected
-	$(SED) "s/^.*CONFIG_INETD.*/CONFIG_INETD=n/;" $(BUSYBOX_DIR)/.config
-	@echo "WARNING!! CONFIG_INETD option disabled!"
+define BUSYBOX_NETKITBASE
+	$(call KCONFIG_DISABLE_OPT,CONFIG_INETD,$(BUSYBOX_BUILD_CONFIG))
+endef
 endif
 endif
+
+# Disable usage of telnetd if netkit-telnetd package is selected
 ifeq ($(BR2_PACKAGE_NETKITTELNET),y)
 ifeq ($(BR2_PACKAGE_NETKITTELNET),y)
-	# disable usage of telnetd if netkit-telnetd package is selected
-	$(SED) "s/^.*CONFIG_TELNETD.*/CONFIG_TELNETD=n/;" $(BUSYBOX_DIR)/.config
-	@echo "WARNING!! CONFIG_TELNETD option disabled!"
+define BUSYBOX_NETKITTELNET
+	$(call KCONFIG_DISABLE_OPT,CONFIG_TELNETD,$(BUSYBOX_BUILD_CONFIG))
+endef
 endif
 endif
-	yes "" | $(MAKE) CC="$(TARGET_CC)" CROSS_COMPILE="$(TARGET_CROSS)" \
-		CROSS="$(TARGET_CROSS)" -C $(BUSYBOX_DIR) oldconfig
-	touch $@
 
 
+define BUSYBOX_COPY_CONFIG
+	cp -f $(BUSYBOX_CONFIG_FILE) $(BUSYBOX_BUILD_CONFIG)
+endef
+
+# We do this here to avoid busting a modified .config in configure
+BUSYBOX_POST_EXTRACT_HOOKS += BUSYBOX_COPY_CONFIG
+
+define BUSYBOX_CONFIGURE_CMDS
+	$(BUSYBOX_SET_SYSKLOGD)
+	$(BUSYBOX_SET_BB_PWD)
+	$(BUSYBOX_SET_LARGEFILE)
+	$(BUSYBOX_SET_IPV6)
+	$(BUSYBOX_SET_RPC)
+	$(BUSYBOX_PREFER_STATIC)
+	$(BUSYBOX_SKELETON)
+	$(BUSYBOX_NETKITBASE)
+	$(BUSYBOX_NETKITTELNET)
+	@yes "" | $(MAKE) ARCH=$(KERNEL_ARCH) CROSS_COMPILE="$(TARGET_CROSS)" \
+		-C $(@D) oldconfig
+endef
+
+define BUSYBOX_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" ARCH=$(KERNEL_ARCH) \
+		PREFIX="$(TARGET_DIR)" EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \
+		CROSS_COMPILE="$(TARGET_CROSS)" CFLAGS=$(BUSYBOX_CFLAGS) \
+		-C $(@D)
+endef
 
 
-$(BUSYBOX_DIR)/busybox: $(BUSYBOX_DIR)/.config
-	$(MAKE) CC="$(TARGET_CC)" CROSS_COMPILE="$(TARGET_CROSS)" \
-		CROSS="$(TARGET_CROSS)" PREFIX="$(TARGET_DIR)" \
-		EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \
-		ARCH=$(KERNEL_ARCH) -C $(BUSYBOX_DIR)
-
-$(TARGET_DIR)/bin/busybox: $(BUSYBOX_DIR)/busybox
 ifeq ($(BR2_PACKAGE_BUSYBOX_FULLINSTALL),y)
 ifeq ($(BR2_PACKAGE_BUSYBOX_FULLINSTALL),y)
-	$(MAKE) CC="$(TARGET_CC)" CROSS_COMPILE="$(TARGET_CROSS)" \
-		CROSS="$(TARGET_CROSS)" PREFIX="$(TARGET_DIR)" \
-		EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \
-		ARCH=$(KERNEL_ARCH) -C $(BUSYBOX_DIR) install
+define BUSYBOX_INSTALL_BINARY
+	$(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" ARCH=$(KERNEL_ARCH) \
+		PREFIX="$(TARGET_DIR)" EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \
+		CROSS_COMPILE="$(TARGET_CROSS)" CFLAGS=$(BUSYBOX_CFLAGS) \
+		CONFIG_PREFIX="$(TARGET_DIR)" -C $(@D) install
+endef
 else
 else
+define BUSYBOX_INSTALL_BINARY
 	install -D -m 0755 $(BUSYBOX_DIR)/busybox $(TARGET_DIR)/bin/busybox
 	install -D -m 0755 $(BUSYBOX_DIR)/busybox $(TARGET_DIR)/bin/busybox
+endef
 endif
 endif
-	# Just in case
-	-chmod a+x $(TARGET_DIR)/usr/share/udhcpc/default.script
-
-busybox: $(TARGET_DIR)/bin/busybox
-
-busybox-source: $(DL_DIR)/$(BUSYBOX_SOURCE)
-
-busybox-unpacked: host-sed $(BUILD_DIR) $(BUSYBOX_DIR)/.unpacked
-
-busybox-config: host-sed $(BUILD_DIR) $(BUSYBOX_DIR)/.config
 
 
-busybox-menuconfig: host-sed $(BUILD_DIR) busybox-source $(BUSYBOX_DIR)/.config
-	$(MAKE) __TARGET_ARCH=$(ARCH) -C $(BUSYBOX_DIR) menuconfig
+define BUSYBOX_INSTALL_TARGET_CMDS
+	$(BUSYBOX_INSTALL_BINARY)
+	-chmod a+rx $(TARGET_DIR)/usr/share/udhcpc/default.script
+endef
+
+define BUSYBOX_UNINSTALL_TARGET_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" ARCH=$(KERNEL_ARCH) \
+		PREFIX="$(TARGET_DIR)" EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \
+		CROSS_COMPILE="$(TARGET_CROSS)" CFLAGS=$(BUSYBOX_CFLAGS) \
+		CONFIG_PREFIX="$(TARGET_DIR)" -C $(@D) uninstall
+endef
+
+define BUSYBOX_CLEAN_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" ARCH=$(KERNEL_ARCH) \
+		PREFIX="$(TARGET_DIR)" EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \
+		CROSS_COMPILE="$(TARGET_CROSS)" CFLAGS=$(BUSYBOX_CFLAGS) \
+		CONFIG_PREFIX="$(TARGET_DIR)" -C $(@D) clean
+endef
+
+$(eval $(call GENTARGETS,package,busybox))
+
+busybox-menuconfig:	$(BUSYBOX_DIR)/.stamp_extracted
+	$(TARGET_MAKE_ENV) $(MAKE) ARCH=$(KERNEL_ARCH) \
+		CROSS_COMPILE="$(TARGET_CROSS)" -C $(BUSYBOX_DIR) menuconfig
+	rm -f $(BUSYBOX_DIR)/.stamp_built
+	rm -f $(BUSYBOX_DIR)/.stamp_target_installed
 
 
 busybox-update:
 busybox-update:
-	cp -f $(BUSYBOX_DIR)/.config $(BUSYBOX_CONFIG_FILE)
-
-busybox-clean:
-	rm -f $(TARGET_DIR)/bin/busybox
-	-$(MAKE) -C $(BUSYBOX_DIR) clean
-
-busybox-dirclean:
-	rm -rf $(BUSYBOX_DIR)
-#############################################################
-#
-# Toplevel Makefile options
-#
-#############################################################
-ifeq ($(BR2_PACKAGE_BUSYBOX),y)
-TARGETS+=busybox
-endif
+	cp -f $(BUSYBOX_BUILD_CONFIG) $(BUSYBOX_CONFIG_FILE)