X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=Config.h;h=fb60e2920793b3fcb63ad61593f927c83a57967c;hb=a8035a51be6ddaf636847cfb1524b1beed0e8d18;hp=d95942a6553744544f3f27b1ce7653fc928c215f;hpb=46f44d24fcc25a5d6e13e0453485881bdf147e91;p=oweals%2Fbusybox.git diff --git a/Config.h b/Config.h index d95942a65..fb60e2920 100644 --- a/Config.h +++ b/Config.h @@ -7,114 +7,122 @@ // // // BusyBox Applications -#define BB_AR +//#define BB_AR #define BB_BASENAME #define BB_CAT #define BB_CHMOD_CHOWN_CHGRP #define BB_CHROOT #define BB_CHVT #define BB_CLEAR -#define BB_CMP +//#define BB_CMP #define BB_CP_MV #define BB_CUT #define BB_DATE -#define BB_DC +//#define BB_DC #define BB_DD -#define BB_DEALLOCVT +//#define BB_DEALLOCVT #define BB_DF #define BB_DIRNAME #define BB_DMESG -#define BB_DOS2UNIX -#define BB_DUTMP +//#define BB_DOS2UNIX +//#define BB_DPKG +//#define BB_DPKG_DEB +//#define BB_DUTMP #define BB_DU -#define BB_DUMPKMAP +//#define BB_DUMPKMAP #define BB_ECHO -#define BB_EXPR -#define BB_FBSET -#define BB_FDFLUSH +//#define BB_EXPR +//#define BB_FBSET +//#define BB_FDFLUSH #define BB_FIND #define BB_FREE -#define BB_FREERAMDISK -#define BB_FSCK_MINIX -#define BB_GETOPT +//#define BB_FREERAMDISK +//#define BB_FSCK_MINIX +//#define BB_GETOPT #define BB_GREP #define BB_GUNZIP #define BB_GZIP #define BB_HALT #define BB_HEAD -#define BB_HOSTID -#define BB_HOSTNAME +//#define BB_HOSTID +//#define BB_HOSTNAME #define BB_ID +//#define BB_IFCONFIG #define BB_INIT -#define BB_INSMOD +//#define BB_INSMOD #define BB_KILL #define BB_KILLALL -#define BB_LENGTH +#define BB_KLOGD +//#define BB_LENGTH #define BB_LN -#define BB_LOADACM -#define BB_LOADFONT -#define BB_LOADKMAP +//#define BB_LOADACM +//#define BB_LOADFONT +//#define BB_LOADKMAP #define BB_LOGGER -#define BB_LOGNAME +//#define BB_LOGNAME #define BB_LS #define BB_LSMOD -#define BB_MAKEDEVS -#define BB_MD5SUM +//#define BB_MAKEDEVS +//#define BB_MD5SUM #define BB_MKDIR -#define BB_MKFIFO -#define BB_MKFS_MINIX +//#define BB_MKFIFO +//#define BB_MKFS_MINIX #define BB_MKNOD #define BB_MKSWAP -#define BB_MKTEMP -#define BB_NC +//#define BB_MKTEMP +//#define BB_NC #define BB_MORE #define BB_MOUNT -#define BB_MT -#define BB_NSLOOKUP -#define BB_PING +//#define BB_MT +//#define BB_NSLOOKUP +//#define BB_PING +//#define BB_PIVOT_ROOT #define BB_POWEROFF -#define BB_PRINTF +//#define BB_PRINTF #define BB_PS #define BB_PWD -#define BB_RDATE -#define BB_READLINK +//#define BB_RDATE +//#define BB_READLINK #define BB_REBOOT -#define BB_RENICE +//#define BB_RENICE #define BB_RESET #define BB_RM #define BB_RMDIR -#define BB_RMMOD -#define BB_RPMUNPACK +//#define BB_RMMOD +//#define BB_ROUTE +//#define BB_RPMUNPACK #define BB_SED -#define BB_SETKEYCODES +//#define BB_SETKEYCODES #define BB_SH #define BB_SLEEP #define BB_SORT +//#define BB_STTY #define BB_SWAPONOFF #define BB_SYNC #define BB_SYSLOGD #define BB_TAIL #define BB_TAR -#define BB_TEE -#define BB_TEST -#define BB_TELNET +//#define BB_TEE +//#define BB_TEST +//#define BB_TELNET +//#define BB_TFTP #define BB_TOUCH -#define BB_TR +//#define BB_TR #define BB_TRUE_FALSE #define BB_TTY +//#define BB_UUENCODE +//#define BB_UUDECODE +#define BB_UMOUNT +#define BB_UNIQ +#define BB_UNAME +//#define BB_UPDATE #define BB_UPTIME -#define BB_USLEEP +//#define BB_USLEEP +//#define BB_WATCHDOG #define BB_WC -#define BB_WGET +//#define BB_WGET #define BB_WHICH #define BB_WHOAMI -#define BB_UUENCODE -#define BB_UUDECODE -#define BB_UMOUNT -#define BB_UNIQ -#define BB_UNAME -#define BB_UNIX2DOS -#define BB_UPDATE #define BB_XARGS #define BB_YES // End of Applications List @@ -127,28 +135,26 @@ // pretty/useful). // // +// BusyBox will, by default, malloc space for its buffers. This costs code +// size for the call to xmalloc. You can use the following feature to have +// them put on the stack. For some very small machines with limited stack +// space, this can be deadly. For most folks, this works just fine... +//#define BB_FEATURE_BUFFERS_GO_ON_STACK // // Turn this on to use Erik's very cool devps, and devmtab kernel drivers, // thereby eliminating the need for the /proc filesystem and thereby saving -// lots and lots memory for more important things. You can not use this and -// USE_PROCFS at the same time... NOTE: If you enable this feature, you -// _must_ have patched the kernel to include the devps patch that is included -// in the busybox/kernel-patches directory. You will also need to create some -// device special files in /dev on your embedded system: +// lots and lots memory for more important things. NOTE: If you enable this +// feature, you _must_ have patched the kernel to include the devps patch that +// is included in the busybox/kernel-patches directory. You will also need to +// create some device special files in /dev on your embedded system: // mknod /dev/mtab c 10 22 // mknod /dev/ps c 10 21 // I emailed Linus and this patch will not be going into the stock kernel. //#define BB_FEATURE_USE_DEVPS_PATCH // -// enable features that use the /proc filesystem (apps that -// break without this will tell you on compile)... -// You can't use this and BB_FEATURE_USE_DEVPS_PATCH -// at the same time... -#define BB_FEATURE_USE_PROCFS -// // This compiles out everything but the most // trivial --help usage information (i.e. reduces binary size) -//#define BB_FEATURE_TRIVIAL_HELP +#define BB_FEATURE_TRIVIAL_HELP // // Use termios to manipulate the screen ('more' is prettier with this on) #define BB_FEATURE_USE_TERMIOS @@ -156,7 +162,7 @@ // calculate terminal & column widths (for more and ls) #define BB_FEATURE_AUTOWIDTH // -// show username/groupnames (bypasses libc6 NSS) for ls +// show username/groupnames for ls #define BB_FEATURE_LS_USERNAME // // show file timestamps in ls @@ -186,22 +192,17 @@ //Have init enable core dumping for child processes (for debugging only) //#define BB_FEATURE_INIT_COREDUMPS // -// Allow init to permenently chroot, and umount the old root fs -// just like an initrd does. Requires a kernel patch by Werner Almesberger. -// ftp://icaftp.epfl.ch/pub/people/almesber/misc/umount-root-*.tar.gz -//#define BB_FEATURE_INIT_CHROOT -// //Make sure nothing is printed to the console on boot -#define BB_FEATURE_EXTRA_QUIET -// -//Should syslogd also provide klogd support? -#define BB_FEATURE_KLOGD +//#define BB_FEATURE_EXTRA_QUIET // // enable syslogd -R remotehost #define BB_FEATURE_REMOTE_LOG // +// enable syslogd -C +//#define BB_FEATURE_IPC_SYSLOG +// //Simple tail implementation (2.34k vs 3k for the full one). -//Both provide 'tail -f' support (only one file at a time.) +//Both provide 'tail -f', but this cuts out -c, -q, -s, and -v. #define BB_FEATURE_SIMPLE_TAIL // // Enable support for loop devices in mount @@ -219,6 +220,9 @@ // (i.e. in case of an unreachable NFS system). #define BB_FEATURE_MOUNT_FORCE // +// use -i (interactive) flag for rm +//#define BB_FEATURE_RM_INTERACTIVE +// // Enable support for creation of tar files. #define BB_FEATURE_TAR_CREATE // @@ -231,13 +235,22 @@ //// Enable reverse sort #define BB_FEATURE_SORT_REVERSE // -// Enable command line editing in the shell -#define BB_FEATURE_SH_COMMAND_EDITING +// Enable command line editing in the shell. +// Only relevant if BB_SH is enabled. On by default. +#define BB_FEATURE_COMMAND_EDITING +// +// Enable tab completion in the shell. This is now working quite nicely. +// This feature adds a bit over 4k. Only relevant if BB_SH is enabled. +#define BB_FEATURE_COMMAND_TAB_COMPLETION +// +// Attempts to match usernames in a ~-prefixed path +//#define BB_FEATURE_COMMAND_USERNAME_COMPLETION // //Allow the shell to invoke all the compiled in BusyBox applets as if they //were shell builtins. Nice for staticly linking an emergency rescue shell, -//among other things. -#define BB_FEATURE_SH_STANDALONE_SHELL +//among other things. Off by default. +// Only relevant if BB_SH is enabled. +//#define BB_FEATURE_SH_STANDALONE_SHELL // //When this is enabled, busybox shell applets can be called using full path //names. This causes applets (i.e., most busybox commands) to override @@ -245,11 +258,15 @@ //will use BusyBox cat even if /bin/cat exists on the filesystem and is _not_ //busybox. Some systems want this, others do not. Choose wisely. :-) This //only has meaning when BB_FEATURE_SH_STANDALONE_SHELL is enabled. -//BB_FEATURE_SH_APPLETS_ALWAYS_WIN +// Only relevant if BB_SH is enabled. Off by default. +//#define BB_FEATURE_SH_APPLETS_ALWAYS_WIN // -// Enable tab completion in the shell (not yet -// working very well -- so don't turn this on) -//#define BB_FEATURE_SH_TAB_COMPLETION +// Some deeply embedded systems don't have usernames or even hostnames, +// and the default prompt can look rather hideous on them. Uncomment +// this option for a simpler, path-only prompt (which was the default until +// around BusyBox-0.48). On by default. +// Only relevant if BB_SH is enabled. +#define BB_FEATURE_SH_SIMPLE_PROMPT // //Turn on extra fbset options //#define BB_FEATURE_FBSET_FANCY @@ -257,17 +274,11 @@ //Turn on fbset readmode support //#define BB_FEATURE_FBSET_READMODE // -// You must enable one or both of these features -// Support installing modules from pre 2.1 kernels -//#define BB_FEATURE_INSMOD_OLD_KERNEL -// Support installing modules from kernel versions after 2.1.18 -#define BB_FEATURE_INSMOD_NEW_KERNEL +// Support insmod/lsmod/rmmod for post 2.1 kernels +//#define BB_FEATURE_NEW_MODULE_INTERFACE // -// You must enable one or both of these features -// Support modules status from pre 2.1 kernels -//#define BB_FEATURE_LSMOD_OLD_KERNEL -// Support modules status from kernel versions after 2.1.18 -#define BB_FEATURE_LSMOD_NEW_KERNEL +// Support insmod/lsmod/rmmod for pre 2.1 kernels +//#define BB_FEATURE_OLD_MODULE_INTERFACE // // Support module version checking //#define BB_FEATURE_INSMOD_VERSION_CHECKING @@ -275,6 +286,17 @@ // Support for Minix filesystem, version 2 //#define BB_FEATURE_MINIX2 // +// Enable ifconfig status reporting output -- this feature adds 12k. +//#define BB_FEATURE_IFCONFIG_STATUS +// +// Enable ifconfig slip-specific options "keepalive" and "outfill" +//#define BB_FEATURE_IFCONFIG_SLIP +// +// Enable ifconfig options "mem_start", "io_addr", and "irq". +//#define BB_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ +// +// Enable ifconfig option "hw". Currently works for only with "ether". +//#define BB_FEATURE_IFCONFIG_HW // // Enable busybox --install [-s] // to create links (or symlinks) for all the commands that are @@ -282,13 +304,35 @@ // #define BB_FEATURE_INSTALLER // // Enable a nifty progress meter in wget (adds just under 2k) -//#define BB_FEATURE_STATUSBAR +#define BB_FEATURE_WGET_STATUSBAR // // Clean up all memory before exiting -- usually not needed // as the OS can clean up... Don't enable this unless you // have a really good reason for cleaning things up manually. //#define BB_FEATURE_CLEAN_UP // +// Support for human readable output by ls, du, etc.(example 13k, 23M, 235G) +#define BB_FEATURE_HUMAN_READABLE +// +// Support for the find -type option. +#define BB_FEATURE_FIND_TYPE +// +// Support for the find -perm option. +#define BB_FEATURE_FIND_PERM +// +// Support for the find -mtine option. +#define BB_FEATURE_FIND_MTIME +// +// Support for the -A -B and -C context flags in grep +//#define BB_FEATURE_GREP_CONTEXT +// +// Support for the EGREP applet (alias to the grep applet) +//#define BB_FEATURE_GREP_EGREP_ALIAS +// +// Tell tftp what commands that should be supported. +#define BB_FEATURE_TFTP_PUT +#define BB_FEATURE_TFTP_GET +// // End of Features List // // @@ -300,57 +344,106 @@ // Nothing beyond this point should ever be touched by // mere mortals so leave this stuff alone. // -#ifdef BB_FEATURE_MOUNT_MTAB_SUPPORT -#define BB_MTAB -#endif -// -#if defined BB_FEATURE_SH_COMMAND_EDITING && defined BB_SH -#define BB_CMDEDIT +#if defined BB_MOUNT || defined BB_UMOUNT || defined BB_DF + #ifdef BB_FEATURE_MOUNT_MTAB_SUPPORT + #define BB_MTAB + #endif +#else + #undef BB_MTAB +#endif +// +#if defined BB_SH + #if defined BB_FEATURE_COMMAND_EDITING + #define BB_CMDEDIT + #ifndef BB_FEATURE_USE_TERMIOS + #define BB_FEATURE_USE_TERMIOS + #endif + #else + #undef BB_FEATURE_COMMAND_EDITING + #undef BB_FEATURE_COMMAND_TAB_COMPLETION + #undef BB_FEATURE_COMMAND_USERNAME_COMPLETION + #define BB_FEATURE_SH_SIMPLE_PROMPT + #endif +#else + #undef BB_FEATURE_COMMAND_EDITING + #undef BB_FEATURE_SH_APPLETS_ALWAYS_WIN + #undef BB_FEATURE_SH_STANDALONE_SHELL + #undef BB_FEATURE_SH_SIMPLE_PROMPT #endif // #ifdef BB_KILLALL -#ifndef BB_KILL -#define BB_KILL -#endif + #ifndef BB_KILL + #define BB_KILL + #endif #endif // -#ifdef BB_FEATURE_LINUXRC #ifndef BB_INIT -#define BB_INIT -#endif -#define BB_LINUXRC + #undef BB_LINUXRC + #undef BB_FEATURE_LINUXRC #endif // #ifdef BB_GZIP -#ifndef BB_GUNZIP -#define BB_GUNZIP + #ifndef BB_GUNZIP + #define BB_GUNZIP + #endif #endif +// +#ifdef BB_DPKG + #ifndef BB_DPKG_DEB + #define BB_DPKG_DEB + #endif #endif // -#ifdef BB_FEATURE_TAR_GZIP -#ifndef BB_GUNZIP -#define BB_GUNZIP +#ifdef BB_DPKG_DEB + #ifndef BB_AR + #define BB_AR + #endif + #ifndef BB_TAR + #define BB_TAR + #endif + #ifndef BB_FEATURE_TAR_GZIP + #define BB_FEATURE_TAR_GZIP + #endif #endif +// +#ifdef BB_TAR + #ifdef BB_FEATURE_TAR_GZIP + #ifndef BB_GUNZIP + #define BB_GUNZIP + #endif + #endif #endif // #if defined BB_MOUNT && defined BB_FEATURE_NFSMOUNT -#define BB_NFSMOUNT + #define BB_NFSMOUNT #endif // -#if defined BB_FEATURE_SH_COMMAND_EDITING -#ifndef BB_FEATURE_USE_TERMIOS -#define BB_FEATURE_USE_TERMIOS -#endif -#endif +#if defined BB_IFCONFIG + #ifdef BB_FEATURE_IFCONFIG_STATUS + #define BB_INTERFACE + #endif +#else + #undef BB_INTERFACE +#endif // #if defined BB_FEATURE_AUTOWIDTH -#ifndef BB_FEATURE_USE_TERMIOS -#define BB_FEATURE_USE_TERMIOS + #ifndef BB_FEATURE_USE_TERMIOS + #define BB_FEATURE_USE_TERMIOS + #endif #endif +// +#if defined BB_INSMOD || defined BB_LSMOD + #if ! defined BB_FEATURE_NEW_MODULE_INTERFACE && ! defined BB_FEATURE_OLD_MODULE_INTERFACE + #define BB_FEATURE_NEW_MODULE_INTERFACE + #endif #endif // -#if defined BB_INSMOD -#ifndef BB_FEATURE_INSMOD_OLD_KERNEL -#define BB_FEATURE_INSMOD_NEW_KERNEL +#ifdef BB_SYSLOGD + #if defined BB_FEATURE_IPC_SYSLOG + #define BB_LOGREAD + #endif #endif +// +#if defined BB_DOS2UNIX + #define BB_UNIX2DOS #endif