Kill the now obsolete docs/Configure.help file, and move all existing
[people/mcb30/busybox.git] / sysdeps / linux / Config.in
1 #
2 # For a description of the syntax of this configuration file,
3 # see scripts/kbuild/config-language.txt.
4 #
5
6 mainmenu "BusyBox Configuration"
7
8 choice
9         prompt "Buffer allocation policy"
10         default "Allocate with Malloc"
11         help
12           There are 3 ways BusyBox can handle buffer allocations:
13           - Use malloc. This costs code size for the call to xmalloc.
14           - Put them on stack. For some very small machines with limited stack
15             space, this can be deadly.  For most folks, this works just fine.
16           - Put them in BSS. This works beautifully for computers with a real
17             MMU (and OS support), but wastes runtime RAM for uCLinux. This
18             behavior was the only one available for BusyBox versions 0.48 and
19             earlier.
20
21 config CONFIG_FEATURE_BUFFERS_USE_MALLOC
22         bool "Allocate with Malloc"
23
24 config CONFIG_FEATURE_BUFFERS_GO_ON_STACK
25         bool "Allocate on the Stack"
26
27 config CONFIG_FEATURE_BUFFERS_GO_IN_BSS
28         bool "Allocate in the .bss section"
29
30 endchoice
31
32 config CONFIG_FEATURE_VERBOSE_USAGE
33         bool "Show verbose applet usage messages"
34         default n
35         help
36           All BusyBox applets will show more verbose help messages when
37           busybox is invoked with --help.  This will add lots of text to the
38           busybox binary.  In the default configuration, this will add about
39           13k, but it can add much more depending on your configuration.
40
41 config CONFIG_FEATURE_INSTALLER
42         bool "Support --install [-s] to install applet links at runtime"
43         default n
44         help
45           Enable 'busybox --install [-s]' support.  This will allow you to use
46           busybox at runtime to create hard links or symlinks for all the
47           applets that are compiled into busybox.  This feature requires the
48           /proc filesystem.
49
50 config CONFIG_LOCALE_SUPPORT
51         bool "Enable locale support (system needs locale for this to work)"
52         default n
53         help
54           Enable this if your system has locale support, and you would like
55           busybox to support locale settings.
56
57 config CONFIG_FEATURE_DEVFS
58         bool "Support for devfs"
59         default n
60         help
61           Enable if you want BusyBox to work with devfs.
62
63 config CONFIG_FEATURE_DEVPTS
64         bool "Use the devpts filesystem for Unix98 PTYs"
65         default y if CONFIG_FEATURE_DEVFS
66         help
67           Enable if you want BusyBox to use Unix98 PTY support. If enabled,
68           busybox will use /dev/ptmx for the master side of the pseudoterminal
69           and /dev/pts/<number> for the slave side.  Otherwise, BSD style
70           /dev/ttyp<number> will be used. To use this option, you should have
71           devpts or devfs mounted.
72
73 config CONFIG_FEATURE_CLEAN_UP
74         bool "Clean up all memory before exiting (usually not needed)"
75         default n
76         help
77         As a size optimization, busybox by default does not cleanup memory
78         that is dynamically allocated or close files before exiting. This
79         saves space and is usually not needed since the OS will clean up for
80         us.  Don't enable this unless you have a really good reason to clean
81         things up manually.
82
83 config CONFIG_FEATURE_SUID
84         bool "Support for SUID/SGID handling"
85         default n
86         help
87           Please submit a patch to add help text for this item.
88
89 config CONFIG_FEATURE_SUID_CONFIG
90         bool "Runtime SUID/SGID configuration via /etc/busybox.conf"
91         default y if CONFIG_FEATURE_SUID
92         depends on CONFIG_FEATURE_SUID
93         help
94           Please submit a patch to add help text for this item.
95
96 config CONFIG_FEATURE_SUID_CONFIG_QUIET
97         bool "Suppress warning message if /etc/busybox.conf is not readable"
98         default n
99         depends on CONFIG_FEATURE_SUID_CONFIG
100         help
101           Please submit a patch to add help text for this item.
102
103 endmenu
104
105 menu 'Build Options'
106
107 config DOSTATIC
108         bool "Build BusyBox as a static binary (no shared libs)"
109         default n
110         help
111           If you want to build a static BusyBox binary, which does not 
112           use or require any shared libraries, then enable this option.  
113
114 config DOLFS
115         bool "Build with Large File Support (for accessing files > 2 GB)" 
116         default n
117         help
118           If you want to build BusyBox with large file support, then enable
119           this option.  This will have no effect if your kernel or your C
120           library lacks large file support for large files.  Some of the
121           programs that can benefit from large file support include dd, gzip,
122           cp, mount, tar, and many others.  If you want to access files larger
123           than 2 Gigabytes, enable this option.  Otherwise, leave it set to 'N'.
124
125 config USING_CROSS_COMPILER
126         bool "Do you want to build BusyBox with a Cross Compiler?"
127         default n
128         help
129           Do you want to build BusyBox with a Cross Compiler?  If so,
130           then enable this option.  Otherwise leave it set to 'N'.
131
132 config CROSS_COMPILER_PREFIX
133         string "Cross Compiler prefix"
134         default "/usr/i386-linux-uclibc/bin/i386-uclibc-"
135         depends on USING_CROSS_COMPILER
136         help
137           If you want to build BusyBox with a cross compiler, then you 
138           will need to set this to the cross-compiler prefix.  For example,
139           if my cross-compiler is /usr/i386-linux-uclibc/bin/i386-uclibc-gcc
140           then I would enter '/usr/i386-linux-uclibc/bin/i386-uclibc-' here,
141           which will ensure the correct compiler is used.
142
143 config EXTRA_CFLAGS_OPTIONS
144         string "Any extra CFLAGS options for the compiler?"
145         default ""
146         help
147           Do you want to pass any extra CFLAGS options to the compiler as
148           you build BusyBox? If so, this is the option for you...  For example,
149           if you want to add some simple compiler switches (like -march=i686),
150           or check for warnings using -Werror, just those options here.
151
152 endmenu
153
154 source archival/Config.in
155 source console-tools/Config.in
156 source debianutils/Config.in
157 source editors/Config.in
158 source fileutils/Config.in
159 source findutils/Config.in
160 source init/Config.in
161 source loginutils/Config.in
162 source miscutils/Config.in
163 source modutils/Config.in
164 source networking/Config.in
165 source procps/Config.in
166 source shell/Config.in
167 source shellutils/Config.in
168 source sysklogd/Config.in
169 source textutils/Config.in
170 source util-linux/Config.in
171
172 menu 'Debugging Options'
173
174 config DOSTATIC
175         bool "Build BusyBox as a static binary (no shared libs)"
176         default n
177         help
178           If you want to build a static BusyBox binary, which does not 
179           use or require any shared libraries, then enable this option.  
180           This will make BusyBox be considerable larger, so you should
181           leave this option false unless you have a good reason (i.e.
182           your target platform does not support shared libraries, or
183           you are building an initrd which doesn't need anything but
184           BusyBox, etc).
185
186           Most people will leave this set to 'N'.
187
188 config DODEBUG
189         bool "Build BusyBox with Debugging symbols"
190         default n
191         help
192           Say Y here if you wish to compile BusyBox with debugging symbols.
193           This will allow you to use a debugger to examine BusyBox internals
194           while applets are running.  This increases the size of the binary 
195           considerably and should only be used when doing development.
196           If you are doing development and want to debug BusyBox, answer Y.
197
198           Otherwise, answer N.
199
200 config DODMALLOC
201         bool "Build BusyBox with dmalloc support"
202         default n
203         depends on DODEBUG && !DOEFENCE
204         help
205           This enables compiling with dmalloc ( http://dmalloc.com/ )
206           which is an excellent public domain mem leak and malloc problem
207           detector.  To enable dmalloc, before running busybox you will
208           want to properly set your environment, for example:
209             export DMALLOC_OPTIONS=debug=0x34f47d83,inter=100,log=logfile
210           The 'debug=' value is generated using the following command
211             dmalloc -p log-stats -p log-non-free -p log-bad-space -p log-elapsed-time \
212                -p check-fence -p check-heap -p check-lists -p check-blank \
213                -p check-funcs -p realloc-copy -p allow-free-null
214
215           This will make BusyBox be considerable larger and run slower, so 
216           you should leave this option disabled for production use.
217
218 config DOEFENCE
219         bool "Build BusyBox with Electric-fence support"
220         default n
221         depends on DODEBUG && !DODMALLOC
222         help
223           This enables compiling with Electric-fence support.  Electric
224           fence is another very useful malloc debugging library which used
225           your computers virtual memory hardware to detect illegal memory 
226           accesses.  This support will make BusyBox be considerable larger 
227           and run slower, so you should leave this option disabled unless 
228           you are hunting a hard to find memory problem.
229
230 endmenu
231