aboutsummaryrefslogtreecommitdiff
path: root/Config.h
diff options
context:
space:
mode:
authorEric Andersen <andersen@codepoet.org>2001-10-24 05:00:29 +0000
committerEric Andersen <andersen@codepoet.org>2001-10-24 05:00:29 +0000
commitbdfd0d78bc44e73d693510e70087857785b3b521 (patch)
tree153a573095afac8d8d0ea857759ecabd77fb28b7 /Config.h
parent9260fc5552a3ee52eb95823aa6689d52a1ffd33c (diff)
downloadbusybox-w32-bdfd0d78bc44e73d693510e70087857785b3b521.tar.gz
busybox-w32-bdfd0d78bc44e73d693510e70087857785b3b521.tar.bz2
busybox-w32-bdfd0d78bc44e73d693510e70087857785b3b521.zip
Major rework of the directory structure and the entire build system.
-Erik
Diffstat (limited to 'Config.h')
-rw-r--r--Config.h494
1 files changed, 0 insertions, 494 deletions
diff --git a/Config.h b/Config.h
deleted file mode 100644
index 73b0f91f8..000000000
--- a/Config.h
+++ /dev/null
@@ -1,494 +0,0 @@
1/* vi: set sw=4 ts=4: */
2// This file defines the feature set to be compiled into busybox.
3// When you turn things off here, they won't be compiled in at all.
4//
5//// This file is parsed by sed. You MUST use single line comments.
6// i.e., //#define BB_BLAH
7//
8//
9// BusyBox Applications
10//#define BB_ADDGROUP
11//#define BB_ADDUSER
12//#define BB_ADJTIMEX
13//#define BB_AR
14//#define BB_ASH
15#define BB_BASENAME
16//#define BB_BUNZIP2
17#define BB_CAT
18#define BB_CHGRP
19#define BB_CHMOD
20#define BB_CHOWN
21#define BB_CHROOT
22#define BB_CHVT
23#define BB_CLEAR
24//#define BB_CMP
25#define BB_CP
26//#define BB_CPIO
27#define BB_CUT
28#define BB_DATE
29//#define BB_DC
30#define BB_DD
31//#define BB_DEALLOCVT
32//#define BB_DELGROUP
33//#define BB_DELUSER
34#define BB_DF
35#define BB_DIRNAME
36#define BB_DMESG
37//#define BB_DOS2UNIX
38//#define BB_DPKG
39//#define BB_DPKG_DEB
40//#define BB_DUTMP
41#define BB_DU
42//#define BB_DUMPKMAP
43#define BB_ECHO
44#define BB_ENV
45//#define BB_EXPR
46//#define BB_FBSET
47//#define BB_FDFLUSH
48#define BB_FIND
49#define BB_FREE
50//#define BB_FREERAMDISK
51//#define BB_FSCK_MINIX
52//#define BB_GETOPT
53//#define BB_GETTY
54#define BB_GREP
55#define BB_GUNZIP
56#define BB_GZIP
57#define BB_HALT
58#define BB_HEAD
59//#define BB_HOSTID
60//#define BB_HOSTNAME
61//#define BB_HUSH
62#define BB_ID
63//#define BB_IFCONFIG
64#define BB_INIT
65//#define BB_INSMOD
66#define BB_KILL
67#define BB_KILLALL
68#define BB_KLOGD
69//#define BB_LASH
70//#define BB_LENGTH
71#define BB_LN
72//#define BB_LOADACM
73//#define BB_LOADFONT
74//#define BB_LOADKMAP
75#define BB_LOGGER
76//#define BB_LOGNAME
77#define BB_LS
78#define BB_LSMOD
79//#define BB_MAKEDEVS
80//#define BB_MD5SUM
81#define BB_MKDIR
82//#define BB_MKFIFO
83//#define BB_MKFS_MINIX
84#define BB_MKNOD
85#define BB_MKSWAP
86//#define BB_MKTEMP
87#define BB_MODPROBE
88#define BB_MORE
89#define BB_MOUNT
90#define BB_MSH
91//#define BB_MT
92#define BB_MV
93//#define BB_NC
94//#define BB_NSLOOKUP
95#define BB_PIDOF
96//#define BB_PING
97//#define BB_PIVOT_ROOT
98#define BB_POWEROFF
99//#define BB_PRINTF
100#define BB_PS
101#define BB_PWD
102//#define BB_RDATE
103//#define BB_READLINK
104#define BB_REBOOT
105//#define BB_RENICE
106#define BB_RESET
107#define BB_RM
108#define BB_RMDIR
109//#define BB_RMMOD
110//#define BB_ROUTE
111//#define BB_RPM2CPIO
112#define BB_SED
113//#define BB_SETKEYCODES
114#define BB_SLEEP
115#define BB_SORT
116//#define BB_STTY
117//#define BB_START_STOP_DAEMON
118#define BB_SWAPONOFF
119#define BB_SYNC
120#define BB_SYSLOGD
121#define BB_TAIL
122#define BB_TAR
123//#define BB_TEE
124//#define BB_TEST
125//#define BB_TELNET
126//#define BB_TFTP
127#define BB_TOUCH
128//#define BB_TR
129//#define BB_TRACEROUTE
130#define BB_TRUE_FALSE
131#define BB_TTY
132//#define BB_UNIX2DOS
133//#define BB_UUENCODE
134//#define BB_UUDECODE
135#define BB_UMOUNT
136#define BB_UNIQ
137#define BB_UNAME
138//#define BB_UPDATE
139#define BB_UPTIME
140//#define BB_USLEEP
141//#define BB_VI
142//#define BB_WATCHDOG
143#define BB_WC
144//#define BB_WGET
145#define BB_WHICH
146#define BB_WHOAMI
147#define BB_XARGS
148#define BB_YES
149// End of Applications List
150//
151//
152//
153// ---------------------------------------------------------
154// This is where feature definitions go. Generally speaking,
155// turning this stuff off makes things a bit smaller (and less
156// pretty/useful).
157//
158//
159// If you enabled one or more of the shells, you may select which one
160// should be run when sh is invoked:
161//#define BB_FEATURE_SH_IS_ASH
162//#define BB_FEATURE_SH_IS_HUSH
163//#define BB_FEATURE_SH_IS_LASH
164#define BB_FEATURE_SH_IS_MSH
165//
166// BusyBox will, by default, malloc space for its buffers. This costs code
167// size for the call to xmalloc. You can use the following feature to have
168// them put on the stack. For some very small machines with limited stack
169// space, this can be deadly. For most folks, this works just fine...
170//#define BB_FEATURE_BUFFERS_GO_ON_STACK
171// The third alternative for buffer allocation is to use BSS. This works
172// beautifully for computers with a real MMU (and OS support), but wastes
173// runtime RAM for uCLinux. This behavior was the only one available for
174// BusyBox versions 0.48 and earlier.
175//#define BB_FEATURE_BUFFERS_GO_IN_BSS
176//
177// Turn this on to use Erik's very cool devps, and devmtab kernel drivers,
178// thereby eliminating the need for the /proc filesystem and thereby saving
179// lots and lots memory for more important things. NOTE: If you enable this
180// feature, you _must_ have patched the kernel to include the devps patch that
181// is included in the busybox/kernel-patches directory. You will also need to
182// create some device special files in /dev on your embedded system:
183// mknod /dev/mtab c 10 22
184// mknod /dev/ps c 10 21
185// I emailed Linus and this patch will not be going into the stock kernel.
186//#define BB_FEATURE_USE_DEVPS_PATCH
187//
188// show verbose usage messages
189//#define BB_FEATURE_VERBOSE_USAGE
190//
191// Use termios to manipulate the screen ('more' is prettier with this on)
192//#define BB_FEATURE_USE_TERMIOS
193//
194// calculate terminal & column widths (for more and ls)
195#define BB_FEATURE_AUTOWIDTH
196//
197// show username/groupnames for ls
198#define BB_FEATURE_LS_USERNAME
199//
200// show file timestamps in ls
201#define BB_FEATURE_LS_TIMESTAMPS
202//
203// enable ls -p and -F
204#define BB_FEATURE_LS_FILETYPES
205//
206// sort the file names
207#define BB_FEATURE_LS_SORTFILES
208//
209// enable ls -R
210#define BB_FEATURE_LS_RECURSIVE
211//
212// enable ls -L
213#define BB_FEATURE_LS_FOLLOWLINKS
214//
215// Disable for a smaller (but less functional) ping
216#define BB_FEATURE_FANCY_PING
217//
218// Make init use a simplified /etc/inittab file (recommended).
219#define BB_FEATURE_USE_INITTAB
220//
221//Enable init being called as /linuxrc
222#define BB_FEATURE_LINUXRC
223//
224//Have init enable core dumping for child processes (for debugging only)
225//#define BB_FEATURE_INIT_COREDUMPS
226//
227//Make sure nothing is printed to the console on boot
228//#define BB_FEATURE_EXTRA_QUIET
229//
230// enable syslogd -R remotehost
231#define BB_FEATURE_REMOTE_LOG
232//
233// enable syslogd -C
234//#define BB_FEATURE_IPC_SYSLOG
235//
236//Disable for a simple tail implementation (2.34k vs 3k for the full one).
237//Both provide 'tail -f', but this cuts out -c, -q, -s, and -v.
238#define BB_FEATURE_FANCY_TAIL
239//
240// Enable support for loop devices in mount
241#define BB_FEATURE_MOUNT_LOOP
242//
243// Enable support for a real /etc/mtab file instead of /proc/mounts
244//#define BB_FEATURE_MTAB_SUPPORT
245//
246// Enable support for mounting remote NFS volumes.
247// You may need to mount with "-o nolock" if you are
248// not running a local portmapper daemon...
249//
250// If you are using uClibc, be sure that you've already compiled
251// uClibc with INCLUDE_RPC=true (contained in the Config file)
252//#define BB_FEATURE_NFSMOUNT
253//
254// Enable support forced filesystem unmounting
255// (i.e., in case of an unreachable NFS system).
256#define BB_FEATURE_MOUNT_FORCE
257//
258// Enable support for creation of tar files.
259#define BB_FEATURE_TAR_CREATE
260//
261// Enable support for "--exclude" and "-X" for excluding files
262#define BB_FEATURE_TAR_EXCLUDE
263//
264// Enable support for tar -z option (currently only works for inflating)
265#define BB_FEATURE_TAR_GZIP
266//
267// Enable reverse sort
268#define BB_FEATURE_SORT_REVERSE
269//
270// Enable uniqe sort
271#define BB_FEATURE_SORT_UNIQUE
272//
273// Enable command line editing in the shell.
274// Only relevant if a shell is enabled. On by default.
275#define BB_FEATURE_COMMAND_EDITING
276//
277// Enable tab completion in the shell. This is now working quite nicely.
278// This feature adds a bit over 4k. Only relevant if a shell is enabled.
279#define BB_FEATURE_COMMAND_TAB_COMPLETION
280//
281// Attempts to match usernames in a ~-prefixed path
282//#define BB_FEATURE_COMMAND_USERNAME_COMPLETION
283//
284//Allow the shell to invoke all the compiled in BusyBox applets as if they
285//were shell builtins. Nice for staticly linking an emergency rescue shell,
286//among other things. Off by default.
287// Only relevant if a shell is enabled.
288//#define BB_FEATURE_SH_STANDALONE_SHELL
289//
290//When this is enabled, busybox shell applets can be called using full path
291//names. This causes applets (i.e., most busybox commands) to override
292//real commands on the filesystem. For example, if you run run /bin/cat, it
293//will use BusyBox cat even if /bin/cat exists on the filesystem and is _not_
294//busybox. Some systems want this, others do not. Choose wisely. :-) This
295//only has meaning when BB_FEATURE_SH_STANDALONE_SHELL is enabled.
296// Only relevant if a shell is enabled. Off by default.
297//#define BB_FEATURE_SH_APPLETS_ALWAYS_WIN
298//
299// Uncomment this option for a fancy shell prompt that includes the
300// current username and hostname. On systems that don't have usernames
301// or hostnames, this can look hideous.
302// Only relevant if a shell is enabled.
303//#define BB_FEATURE_SH_FANCY_PROMPT
304//
305//Make interactive shells not print busybox messages
306//#define BB_FEATURE_SH_EXTRA_QUIET
307//
308//Turn on extra fbset options
309//#define BB_FEATURE_FBSET_FANCY
310//
311//Turn on fbset readmode support
312//#define BB_FEATURE_FBSET_READMODE
313//
314// Support insmod/lsmod/rmmod for post 2.1 kernels
315//#define BB_FEATURE_NEW_MODULE_INTERFACE
316//
317// Support insmod/lsmod/rmmod for pre 2.1 kernels
318//#define BB_FEATURE_OLD_MODULE_INTERFACE
319//
320// Support module version checking
321//#define BB_FEATURE_INSMOD_VERSION_CHECKING
322//
323// Support for uClinux memory usage optimization, which will load the image
324// directly into the kernel memory. This divides memory requrements by three.
325// If you are not running uClinux (i.e., your CPU has an MMU) leave this
326// disabled...
327//#define BB_FEATURE_INSMOD_LOADINKMEM
328//
329// Support for Minix filesystem, version 2
330//#define BB_FEATURE_MINIX2
331//
332// Enable ifconfig status reporting output -- this feature adds 7k.
333//#define BB_FEATURE_IFCONFIG_STATUS
334//
335// Enable ifconfig slip-specific options "keepalive" and "outfill"
336//#define BB_FEATURE_IFCONFIG_SLIP
337//
338// Enable ifconfig options "mem_start", "io_addr", and "irq".
339//#define BB_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ
340//
341// Enable ifconfig option "hw". Currently works for only with "ether".
342//#define BB_FEATURE_IFCONFIG_HW
343//
344// Allows "broadcast +" to set broadcast automatically based on hostaddr
345// and netmask, at a cost of about 100 bytes of code (i386).
346//#define BB_FEATURE_IFCONFIG_BROADCAST_PLUS
347//
348// Enable busybox --install [-s]
349// to create links (or symlinks) for all the commands that are
350// compiled into the binary. (needs /proc filesystem)
351//#define BB_FEATURE_INSTALLER
352//
353// Enable a nifty progress meter in wget (adds just under 2k)
354#define BB_FEATURE_WGET_STATUSBAR
355//
356// Enable HTTP authentication in wget
357#define BB_FEATURE_WGET_AUTHENTICATION
358//
359// Clean up all memory before exiting -- usually not needed
360// as the OS can clean up... Don't enable this unless you
361// have a really good reason for cleaning things up manually.
362//#define BB_FEATURE_CLEAN_UP
363//
364// Support for human readable output by ls, du, etc.(example 13k, 23M, 235G)
365#define BB_FEATURE_HUMAN_READABLE
366//
367// Support for the find -type option.
368#define BB_FEATURE_FIND_TYPE
369//
370// Support for the find -perm option.
371#define BB_FEATURE_FIND_PERM
372//
373// Support for the find -mtine option.
374#define BB_FEATURE_FIND_MTIME
375//
376// Support for the -A -B and -C context flags in grep
377//#define BB_FEATURE_GREP_CONTEXT
378//
379// Support for the EGREP applet (alias to the grep applet)
380//#define BB_FEATURE_GREP_EGREP_ALIAS
381//
382// Tell tftp what commands that should be supported.
383#define BB_FEATURE_TFTP_PUT
384#define BB_FEATURE_TFTP_GET
385//#define BB_FEATURE_TFTP_BLOCKSIZE
386//
387// features for vi
388#define BB_FEATURE_VI_COLON // ":" colon commands, no "ex" mode
389#define BB_FEATURE_VI_YANKMARK // Yank/Put commands and Mark cmds
390#define BB_FEATURE_VI_SEARCH // search and replace cmds
391#define BB_FEATURE_VI_USE_SIGNALS // catch signals
392#define BB_FEATURE_VI_DOT_CMD // remember previous cmd and "." cmd
393#define BB_FEATURE_VI_READONLY // vi -R and "view" mode
394#define BB_FEATURE_VI_SETOPTS // set-able options, ai ic showmatch
395#define BB_FEATURE_VI_SET // :set
396#define BB_FEATURE_VI_WIN_RESIZE // handle window resize
397//
398// Enable a if you system have setuped locale
399//#define BB_LOCALE_SUPPORT
400//
401// Support for TELNET to pass TERM type to remote host. Adds 384 bytes.
402#define BB_FEATURE_TELNET_TTYPE
403//
404// Support for devfs.
405//#define BB_FEATURE_DEVFS
406//
407// End of Features List
408//
409//
410//
411//
412//
413//
414//---------------------------------------------------
415// Nothing beyond this point should ever be touched by
416// mere mortals so leave this stuff alone.
417//
418#include <features.h>
419#if defined __UCLIBC__ && ! defined __UCLIBC_HAS_MMU__
420 #undef BB_RPM2CPIO /* Uses gz_open(), which uses fork() */
421 #undef BB_DPKG_DEB /* Uses gz_open(), which uses fork() */
422 #undef BB_ASH /* Uses fork() */
423 #undef BB_HUSH /* Uses fork() */
424 #undef BB_LASH /* Uses fork() */
425 #undef BB_INIT /* Uses fork() */
426 #undef BB_FEATURE_TAR_GZIP /* Uses fork() */
427 #undef BB_SYSLOGD /* Uses daemon() */
428 #undef BB_KLOGD /* Uses daemon() */
429 #undef BB_UPDATE /* Uses daemon() */
430#endif
431#if defined BB_ASH || defined BB_HUSH || defined BB_LASH || defined BB_MSH
432 #if defined BB_FEATURE_COMMAND_EDITING
433 #define BB_CMDEDIT
434 #else
435 #undef BB_FEATURE_COMMAND_EDITING
436 #undef BB_FEATURE_COMMAND_TAB_COMPLETION
437 #undef BB_FEATURE_COMMAND_USERNAME_COMPLETION
438 #undef BB_FEATURE_SH_FANCY_PROMPT
439 #endif
440#else
441 #undef BB_FEATURE_SH_APPLETS_ALWAYS_WIN
442 #undef BB_FEATURE_SH_STANDALONE_SHELL
443 #undef BB_FEATURE_SH_FANCY_PROMPT
444#endif
445//
446#if (defined BB_ASH || defined BB_HUSH || defined BB_MSH) && ! defined BB_TEST
447 #define BB_TEST
448#endif
449//
450#ifdef BB_KILLALL
451 #ifndef BB_KILL
452 #define BB_KILL
453 #endif
454#endif
455//
456#ifndef BB_INIT
457 #undef BB_FEATURE_LINUXRC
458#endif
459//
460#if defined BB_MOUNT && defined BB_FEATURE_NFSMOUNT
461 #define BB_NFSMOUNT
462#endif
463//
464#if defined BB_FEATURE_AUTOWIDTH
465 #ifndef BB_FEATURE_USE_TERMIOS
466 #define BB_FEATURE_USE_TERMIOS
467 #endif
468#endif
469//
470#if defined BB_INSMOD || defined BB_LSMOD
471 #if ! defined BB_FEATURE_NEW_MODULE_INTERFACE && ! defined BB_FEATURE_OLD_MODULE_INTERFACE
472 #define BB_FEATURE_NEW_MODULE_INTERFACE
473 #endif
474#endif
475//
476#ifdef BB_UNIX2DOS
477 #define BB_DOS2UNIX
478#endif
479//
480#ifdef BB_SYSLOGD
481 #if defined BB_FEATURE_IPC_SYSLOG
482 #define BB_LOGREAD
483 #endif
484#endif
485//
486#if defined BB_ASH && defined BB_FEATURE_SH_IS_ASH
487# define shell_main ash_main
488#elif defined BB_HUSH && defined BB_FEATURE_SH_IS_HUSH
489# define shell_main hush_main
490#elif defined BB_LASH && defined BB_FEATURE_SH_IS_LASH
491# define shell_main lash_main
492#elif defined BB_MSH && defined BB_FEATURE_SH_IS_MSH
493# define shell_main msh_main
494#endif