diff options
author | Rob Landley <rob@landley.net> | 2006-01-20 17:47:09 +0000 |
---|---|---|
committer | Rob Landley <rob@landley.net> | 2006-01-20 17:47:09 +0000 |
commit | 7a43bd07e64e6db795d4661321da1cab14d9c4f6 (patch) | |
tree | 13fe6950993f732a0cb06a09398a415d3e3bd597 /Config.in | |
parent | c8e41157a2b6486397ded716846c6cd8c8edac8e (diff) | |
download | busybox-w32-7a43bd07e64e6db795d4661321da1cab14d9c4f6.tar.gz busybox-w32-7a43bd07e64e6db795d4661321da1cab14d9c4f6.tar.bz2 busybox-w32-7a43bd07e64e6db795d4661321da1cab14d9c4f6.zip |
Zap sysdeps directory, moving Config.in and defconfig to top of tree.
(Busybox should not be system dependent enough to have different default
configurations for different platforms. We're not a kernel.)
Diffstat (limited to 'Config.in')
-rw-r--r-- | Config.in | 345 |
1 files changed, 345 insertions, 0 deletions
diff --git a/Config.in b/Config.in new file mode 100644 index 000000000..3501ff767 --- /dev/null +++ b/Config.in | |||
@@ -0,0 +1,345 @@ | |||
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 | config HAVE_DOT_CONFIG | ||
9 | bool | ||
10 | default y | ||
11 | |||
12 | menu "General Configuration" | ||
13 | |||
14 | choice | ||
15 | prompt "Buffer allocation policy" | ||
16 | default CONFIG_FEATURE_BUFFERS_USE_MALLOC | ||
17 | help | ||
18 | There are 3 ways BusyBox can handle buffer allocations: | ||
19 | - Use malloc. This costs code size for the call to xmalloc. | ||
20 | - Put them on stack. For some very small machines with limited stack | ||
21 | space, this can be deadly. For most folks, this works just fine. | ||
22 | - Put them in BSS. This works beautifully for computers with a real | ||
23 | MMU (and OS support), but wastes runtime RAM for uCLinux. This | ||
24 | behavior was the only one available for BusyBox versions 0.48 and | ||
25 | earlier. | ||
26 | |||
27 | config CONFIG_FEATURE_BUFFERS_USE_MALLOC | ||
28 | bool "Allocate with Malloc" | ||
29 | |||
30 | config CONFIG_FEATURE_BUFFERS_GO_ON_STACK | ||
31 | bool "Allocate on the Stack" | ||
32 | |||
33 | config CONFIG_FEATURE_BUFFERS_GO_IN_BSS | ||
34 | bool "Allocate in the .bss section" | ||
35 | |||
36 | endchoice | ||
37 | |||
38 | config CONFIG_FEATURE_VERBOSE_USAGE | ||
39 | bool "Show verbose applet usage messages" | ||
40 | default n | ||
41 | help | ||
42 | All BusyBox applets will show more verbose help messages when | ||
43 | busybox is invoked with --help. This will add a lot of text to the | ||
44 | busybox binary. In the default configuration, this will add about | ||
45 | 13k, but it can add much more depending on your configuration. | ||
46 | |||
47 | config CONFIG_FEATURE_INSTALLER | ||
48 | bool "Support --install [-s] to install applet links at runtime" | ||
49 | default n | ||
50 | help | ||
51 | Enable 'busybox --install [-s]' support. This will allow you to use | ||
52 | busybox at runtime to create hard links or symlinks for all the | ||
53 | applets that are compiled into busybox. This feature requires the | ||
54 | /proc filesystem. | ||
55 | |||
56 | config CONFIG_LOCALE_SUPPORT | ||
57 | bool "Enable locale support (system needs locale for this to work)" | ||
58 | default n | ||
59 | help | ||
60 | Enable this if your system has locale support and you would like | ||
61 | busybox to support locale settings. | ||
62 | |||
63 | config CONFIG_FEATURE_DEVFS | ||
64 | bool "Support for devfs" | ||
65 | default n | ||
66 | help | ||
67 | Enable if you want BusyBox to work with devfs. | ||
68 | |||
69 | config CONFIG_FEATURE_DEVPTS | ||
70 | bool "Use the devpts filesystem for Unix98 PTYs" | ||
71 | default y if CONFIG_FEATURE_DEVFS | ||
72 | help | ||
73 | Enable if you want BusyBox to use Unix98 PTY support. If enabled, | ||
74 | busybox will use /dev/ptmx for the master side of the pseudoterminal | ||
75 | and /dev/pts/<number> for the slave side. Otherwise, BSD style | ||
76 | /dev/ttyp<number> will be used. To use this option, you should have | ||
77 | devpts or devfs mounted. | ||
78 | |||
79 | config CONFIG_FEATURE_CLEAN_UP | ||
80 | bool "Clean up all memory before exiting (usually not needed)" | ||
81 | default n | ||
82 | help | ||
83 | As a size optimization, busybox by default does not cleanup memory | ||
84 | that is dynamically allocated or close files before exiting. This | ||
85 | saves space and is usually not needed since the OS will clean up for | ||
86 | us. Don't enable this unless you have a really good reason to clean | ||
87 | things up manually. | ||
88 | |||
89 | config CONFIG_FEATURE_SUID | ||
90 | bool "Support for SUID/SGID handling" | ||
91 | default n | ||
92 | help | ||
93 | Support SUID and SGID binaries. | ||
94 | |||
95 | config CONFIG_FEATURE_SUID_CONFIG | ||
96 | bool "Runtime SUID/SGID configuration via /etc/busybox.conf" | ||
97 | default n if CONFIG_FEATURE_SUID | ||
98 | depends on CONFIG_FEATURE_SUID | ||
99 | help | ||
100 | Allow the SUID / SGID state of an applet to be determined runtime by | ||
101 | checking /etc/busybox.conf. The format of this file is as follows: | ||
102 | |||
103 | <applet> = [Ssx-][Ssx-][x-] (<username>|<uid>).(<groupname>|<gid>) | ||
104 | |||
105 | An example might help: | ||
106 | |||
107 | [SUID] | ||
108 | su = ssx root.0 # applet su can be run by anyone and runs with euid=0/egid=0 | ||
109 | su = ssx # exactly the same | ||
110 | |||
111 | mount = sx- root.disk # applet mount can be run by root and members of group disk | ||
112 | # and runs with euid=0 | ||
113 | |||
114 | cp = --- # disable applet cp for everyone | ||
115 | |||
116 | The file has to be owned by user root, group root and has to be | ||
117 | writeable only by root: | ||
118 | (chown 0.0 /etc/busybox.conf; chmod 600 /etc/busybox.conf) | ||
119 | The busybox executable has to be owned by user root, group | ||
120 | root and has to be setuid root for this to work: | ||
121 | (chown 0.0 /bin/busybox; chmod 4755 /bin/busybox) | ||
122 | |||
123 | Robert 'sandman' Griebl has more information here: | ||
124 | <url: http://www.softforge.de/bb/suid.html >. | ||
125 | |||
126 | config CONFIG_FEATURE_SUID_CONFIG_QUIET | ||
127 | bool "Suppress warning message if /etc/busybox.conf is not readable" | ||
128 | default n | ||
129 | depends on CONFIG_FEATURE_SUID_CONFIG | ||
130 | help | ||
131 | /etc/busybox.conf should be readable by the user needing the SUID, check | ||
132 | this option to avoid users to be notified about missing permissions. | ||
133 | |||
134 | config CONFIG_SELINUX | ||
135 | bool "Support NSA Security Enhanced Linux" | ||
136 | default n | ||
137 | help | ||
138 | Enable support for SE Linux in applets ls, ps, and id. Also provide | ||
139 | the option of compiling in SE Linux applets. | ||
140 | |||
141 | If you do not have a complete SE Linux Full Userland installed, this | ||
142 | stuff will not compile. Go visit | ||
143 | http://www.nsa.gov/selinux/index.html | ||
144 | to download the necessary stuff to allow busybox to compile with this | ||
145 | option enabled. | ||
146 | |||
147 | Most people will leave this set to 'N'. | ||
148 | |||
149 | endmenu | ||
150 | |||
151 | menu 'Build Options' | ||
152 | |||
153 | config CONFIG_STATIC | ||
154 | bool "Build BusyBox as a static binary (no shared libs)" | ||
155 | default n | ||
156 | help | ||
157 | If you want to build a static BusyBox binary, which does not | ||
158 | use or require any shared libraries, then enable this option. | ||
159 | This can cause BusyBox to be considerably larger, so you should | ||
160 | leave this option false unless you have a good reason (i.e. | ||
161 | your target platform does not support shared libraries, or | ||
162 | you are building an initrd which doesn't need anything but | ||
163 | BusyBox, etc). | ||
164 | |||
165 | Most people will leave this set to 'N'. | ||
166 | |||
167 | config CONFIG_LFS | ||
168 | bool "Build with Large File Support (for accessing files > 2 GB)" | ||
169 | default n | ||
170 | select FDISK_SUPPORT_LARGE_DISKS | ||
171 | help | ||
172 | If you want to build BusyBox with large file support, then enable | ||
173 | this option. This will have no effect if your kernel or your C | ||
174 | library lacks large file support for large files. Some of the | ||
175 | programs that can benefit from large file support include dd, gzip, | ||
176 | cp, mount, tar, and many others. If you want to access files larger | ||
177 | than 2 Gigabytes, enable this option. Otherwise, leave it set to 'N'. | ||
178 | |||
179 | config USING_CROSS_COMPILER | ||
180 | bool "Do you want to build BusyBox with a Cross Compiler?" | ||
181 | default n | ||
182 | help | ||
183 | Do you want to build BusyBox with a Cross Compiler? If so, | ||
184 | then enable this option. Otherwise leave it set to 'N'. | ||
185 | |||
186 | config CROSS_COMPILER_PREFIX | ||
187 | string "Cross Compiler prefix" | ||
188 | default "/usr/i386-linux-uclibc/bin/i386-uclibc-" | ||
189 | depends on USING_CROSS_COMPILER | ||
190 | help | ||
191 | If you want to build BusyBox with a cross compiler, then you | ||
192 | will need to set this to the cross-compiler prefix. For example, | ||
193 | if my cross-compiler is /usr/i386-linux-uclibc/bin/i386-uclibc-gcc | ||
194 | then I would enter '/usr/i386-linux-uclibc/bin/i386-uclibc-' here, | ||
195 | which will ensure the correct compiler is used. | ||
196 | |||
197 | config EXTRA_CFLAGS_OPTIONS | ||
198 | string "Any extra CFLAGS options for the compiler?" | ||
199 | default "" | ||
200 | help | ||
201 | Do you want to pass any extra CFLAGS options to the compiler as | ||
202 | you build BusyBox? If so, this is the option for you... For example, | ||
203 | if you want to add some simple compiler switches (like -march=i686), | ||
204 | or check for warnings using -Werror, just those options here. | ||
205 | |||
206 | config CONFIG_FEATURE_SUSv2 | ||
207 | bool "Enable features that are in SuSv2 but not SuSv3?" | ||
208 | default y | ||
209 | help | ||
210 | This option will enable backwards compatability with SuSv2, | ||
211 | specifically, numeric options such as 'head -1 <file>' will be | ||
212 | supported. | ||
213 | |||
214 | config CONFIG_FEATURE_SUSv2_OBSOLETE | ||
215 | bool "Enable features that are obsolete in SuSv2" | ||
216 | depends on CONFIG_FEATURE_SUSv2 | ||
217 | default y | ||
218 | help | ||
219 | Disables support for numeric arguments in fold. | ||
220 | |||
221 | endmenu | ||
222 | |||
223 | menu 'Installation Options' | ||
224 | |||
225 | config CONFIG_INSTALL_NO_USR | ||
226 | bool "Don't use /usr" | ||
227 | default n | ||
228 | help | ||
229 | Disable use of /usr. Don't activate this option if you don't know | ||
230 | that you really want this behaviour. | ||
231 | |||
232 | choice | ||
233 | prompt "Applets links" | ||
234 | default CONFIG_INSTALL_APPLET_SYMLINKS | ||
235 | help | ||
236 | Choose how you install applets links. | ||
237 | |||
238 | config CONFIG_INSTALL_APPLET_SYMLINKS | ||
239 | bool "as soft-links" | ||
240 | help | ||
241 | Install applets as soft-links to the busybox binary. This needs some | ||
242 | free inodes on the filesystem, but might help with filesystem | ||
243 | generators that can't cope with hard-links. | ||
244 | |||
245 | config CONFIG_INSTALL_APPLET_HARDLINKS | ||
246 | bool "as hard-links" | ||
247 | help | ||
248 | Install applets as hard-links to the busybox binary. This might count | ||
249 | on a filesystem with few inodes. | ||
250 | |||
251 | config CONFIG_INSTALL_APPLET_DONT | ||
252 | bool | ||
253 | prompt "not installed" | ||
254 | depends on CONFIG_FEATURE_INSTALLER || CONFIG_FEATURE_SH_STANDALONE_SHELL | ||
255 | help | ||
256 | Do not install applets links. Usefull when using the -install feature | ||
257 | or a standalone shell for rescue pruposes. | ||
258 | |||
259 | endchoice | ||
260 | |||
261 | config PREFIX | ||
262 | string "BusyBox installation prefix" | ||
263 | default "./_install" | ||
264 | help | ||
265 | Define your directory to install BusyBox files/subdirs in. | ||
266 | |||
267 | |||
268 | |||
269 | endmenu | ||
270 | |||
271 | source archival/Config.in | ||
272 | source coreutils/Config.in | ||
273 | source console-tools/Config.in | ||
274 | source debianutils/Config.in | ||
275 | source e2fsprogs/Config.in | ||
276 | source editors/Config.in | ||
277 | source findutils/Config.in | ||
278 | source init/Config.in | ||
279 | source loginutils/Config.in | ||
280 | source miscutils/Config.in | ||
281 | source modutils/Config.in | ||
282 | source networking/Config.in | ||
283 | source procps/Config.in | ||
284 | source shell/Config.in | ||
285 | source sysklogd/Config.in | ||
286 | source util-linux/Config.in | ||
287 | |||
288 | menu 'Debugging Options' | ||
289 | |||
290 | config CONFIG_DEBUG | ||
291 | bool "Build BusyBox with Debugging symbols" | ||
292 | default n | ||
293 | help | ||
294 | Say Y here if you wish to compile BusyBox with debugging symbols. | ||
295 | This will allow you to use a debugger to examine BusyBox internals | ||
296 | while applets are running. This increases the size of the binary | ||
297 | considerably and should only be used when doing development. | ||
298 | If you are doing development and want to debug BusyBox, answer Y. | ||
299 | |||
300 | Most people should answer N. | ||
301 | |||
302 | choice | ||
303 | prompt "Additional debugging library" | ||
304 | default CONFIG_NO_DEBUG_LIB | ||
305 | depends on CONFIG_DEBUG | ||
306 | help | ||
307 | Using an additional debugging library will make BusyBox become | ||
308 | considerable larger and will cause it to run more slowly. You | ||
309 | should always leave this option disabled for production use. | ||
310 | |||
311 | dmalloc support: | ||
312 | ---------------- | ||
313 | This enables compiling with dmalloc ( http://dmalloc.com/ ) | ||
314 | which is an excellent public domain mem leak and malloc problem | ||
315 | detector. To enable dmalloc, before running busybox you will | ||
316 | want to properly set your environment, for example: | ||
317 | export DMALLOC_OPTIONS=debug=0x34f47d83,inter=100,log=logfile | ||
318 | The 'debug=' value is generated using the following command | ||
319 | dmalloc -p log-stats -p log-non-free -p log-bad-space -p log-elapsed-time \ | ||
320 | -p check-fence -p check-heap -p check-lists -p check-blank \ | ||
321 | -p check-funcs -p realloc-copy -p allow-free-null | ||
322 | |||
323 | Electric-fence support: | ||
324 | ----------------------- | ||
325 | This enables compiling with Electric-fence support. Electric | ||
326 | fence is another very useful malloc debugging library which uses | ||
327 | your computer's virtual memory hardware to detect illegal memory | ||
328 | accesses. This support will make BusyBox be considerable larger | ||
329 | and run slower, so you should leave this option disabled unless | ||
330 | you are hunting a hard to find memory problem. | ||
331 | |||
332 | |||
333 | config CONFIG_NO_DEBUG_LIB | ||
334 | bool "None" | ||
335 | |||
336 | config CONFIG_DMALLOC | ||
337 | bool "Dmalloc" | ||
338 | |||
339 | config CONFIG_EFENCE | ||
340 | bool "Electric-fence" | ||
341 | |||
342 | endchoice | ||
343 | |||
344 | |||
345 | endmenu | ||