finally move buildroot-ng to trunk
[openwrt.git] / package / busybox / config / util-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 menu "Linux System Utilities"
7
8 config BUSYBOX_CONFIG_DMESG
9         bool "dmesg"
10         default y
11         help
12           dmesg is used to examine or control the kernel ring buffer.  When the
13           Linux kernel prints messages to the system log, they are stored in
14           the kernel ring buffer.  You can use dmesg to print the kernel's ring
15           buffer, clear the kernel ring buffer, change the size of the kernel
16           ring buffer, and change the priority level at which kernel messages
17           are also logged to the system console.  Enable this option if you
18           wish to enable the 'dmesg' utility.
19
20 config BUSYBOX_CONFIG_FBSET
21         bool "fbset"
22         default n
23         help
24           fbset is used to show or change the settings of a Linux frame buffer
25           device.  The frame buffer device provides a simple and unique
26           interface to access a graphics display.  Enable this option
27           if you wish to enable the 'fbset' utility.
28
29 config BUSYBOX_CONFIG_FEATURE_FBSET_FANCY
30         bool "Turn on extra fbset options"
31         default n
32         depends on BUSYBOX_CONFIG_FBSET
33         help
34           This option enables extended fbset options, allowing one to set the
35           framebuffer size, color depth, etc.  interface to access a graphics
36           display.  Enable this option if you wish to enable extended fbset
37           options.
38
39 config BUSYBOX_CONFIG_FEATURE_FBSET_READMODE
40         bool "Turn on fbset readmode support"
41         default n
42         depends on BUSYBOX_CONFIG_FBSET
43         help
44           This option allows fbset to read the video mode database stored by
45           default n /etc/fb.modes, which can be used to set frame buffer
46           device to pre-defined video modes.
47
48 config BUSYBOX_CONFIG_FDFLUSH
49         bool "fdflush"
50         default n
51         help
52           fdflush is only needed when changing media on slightly-broken
53           removable media drives.  It is used to make Linux believe that a
54           hardware disk-change switch has been actuated, which causes Linux to
55           forget anything it has cached from the previous media.  If you have
56           such a slightly-broken drive, you will need to run fdflush every time
57           you change a disk.  Most people have working hardware and can safely
58           leave this disabled.
59
60 config BUSYBOX_CONFIG_FDFORMAT
61         bool "fdformat"
62         default n
63         help
64           fdformat is used to low-level format a floppy disk.
65
66 config BUSYBOX_CONFIG_FDISK
67         bool "fdisk"
68         default n
69         help
70           The fdisk utility is used to divide hard disks into one or more
71           logical disks, which are generally called partitions.  This utility
72           can be used to list and edit the set of partitions or BSD style
73           'disk slices' that are defined on a hard drive.
74
75 config BUSYBOX_FDISK_SUPPORT_LARGE_DISKS
76         bool
77         default y
78         depends on BUSYBOX_CONFIG_FDISK
79         help
80           Enable this option to support large disks > 4GB.
81
82 config BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
83         bool "Write support"
84         default n
85         depends on BUSYBOX_CONFIG_FDISK
86         help
87           Enabling this option allows you to create or change a partition table
88           and write those changes out to disk.  If you leave this option
89           disabled, you will only be able to view the partition table.
90
91 config BUSYBOX_CONFIG_FEATURE_AIX_LABEL
92         bool "Support AIX disklabels"
93         default n
94         depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
95         help
96           Enabling this option allows you to create or change AIX disklabels.
97           Most people can safely leave this option disabled.
98
99 config BUSYBOX_CONFIG_FEATURE_SGI_LABEL
100         bool "Support SGI disklabels"
101         default n
102         depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
103         help
104           Enabling this option allows you to create or change SGI disklabels.
105           Most people can safely leave this option disabled.
106
107 config BUSYBOX_CONFIG_FEATURE_SUN_LABEL
108         bool "Support SUN disklabels"
109         default n
110         depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
111         help
112           Enabling this option allows you to create or change SUN disklabels.
113           Most people can safely leave this option disabled.
114
115 config BUSYBOX_CONFIG_FEATURE_OSF_LABEL
116         bool "Support BSD disklabels"
117         default n
118         depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
119         help
120           Enabling this option allows you to create or change BSD disklabels
121           and define and edit BSD disk slices.
122
123 config BUSYBOX_CONFIG_FEATURE_FDISK_ADVANCED
124         bool "Support expert mode"
125         default n
126         depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
127         help
128           Enabling this option allows you to do terribly unsafe things like
129           define arbitrary drive geometry, move the beginning of data in a
130           partition, and similarly evil things.  Unless you have a very good
131           reason you would be wise to leave this disabled.
132
133 config BUSYBOX_CONFIG_FREERAMDISK
134         bool "freeramdisk"
135         default n
136         help
137           Linux allows you to create ramdisks.  This utility allows you to
138           delete them and completely free all memory that was used for the
139           ramdisk.  For example, if you boot Linux into a ramdisk and later
140           pivot_root, you may want to free the memory that is allocated to the
141           ramdisk.  If you have no use for freeing memory from a ramdisk, leave
142           this disabled.
143
144 config BUSYBOX_CONFIG_FSCK_MINIX
145         bool "fsck_minix"
146         default n
147         help
148           The minix filesystem is a nice, small, compact, read-write filesystem
149           with little overhead.  It is not a journaling filesystem however and
150           can experience corruption if it is not properly unmounted or if the
151           power goes off in the middle of a write.  This utility allows you to
152           check for and attempt to repair any corruption that occurs to a minix
153           filesystem.
154
155 config BUSYBOX_CONFIG_MKFS_MINIX
156         bool "mkfs_minix"
157         default n
158         help
159           The minix filesystem is a nice, small, compact, read-write filesystem
160           with little overhead.  If you wish to be able to create minix filesystems
161           this utility will do the job for you.
162
163 comment "Minix filesystem support"
164     depends on BUSYBOX_CONFIG_FSCK_MINIX || BUSYBOX_CONFIG_MKFS_MINIX
165
166 config BUSYBOX_CONFIG_FEATURE_MINIX2
167         bool "Support Minix fs v2 (fsck_minix/mkfs_minix)"
168         default n
169         depends on BUSYBOX_CONFIG_FSCK_MINIX || BUSYBOX_CONFIG_MKFS_MINIX
170         help
171           If you wish to be able to create version 2 minix filesystems, enable this.
172           If you enabled 'mkfs_minix' then you almost certainly want to be using the
173           version 2 filesystem support.
174
175 config BUSYBOX_CONFIG_GETOPT
176         bool "getopt"
177         default n
178         help
179           The getopt utility is used to break up (parse) options in command
180           lines to make it easy to write complex shell scripts that also check
181           for legal (and illegal) options.  If you want to write horribly
182           complex shell scripts, or use some horribly complex shell script
183           written by others, this utility may be for you.  Most people will
184           wisely leave this disabled.
185
186 config BUSYBOX_CONFIG_HEXDUMP
187         bool "hexdump"
188         default y
189         help
190           The hexdump utility is used to display binary data in a readable
191           way that is comparable to the output from most hex editors.
192
193 config BUSYBOX_CONFIG_HWCLOCK
194         bool "hwclock"
195         default n
196         help
197           The hwclock utility is used to read and set the hardware clock
198           on a system.  This is primarily used to set the current time on
199           shutdown in the hardware clock, so the hardware will keep the
200           correct time when Linux is _not_ running.
201
202 config BUSYBOX_CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS
203         bool "Support long options (--hctosys,...)"
204         default n
205         depends on BUSYBOX_CONFIG_HWCLOCK && BUSYBOX_CONFIG_GETOPT_LONG
206         help
207           By default, the hwclock utility only uses short options.  If you
208           are overly fond of its long options, such as --hctosys, --utc, etc)
209           then enable this option.
210
211 config BUSYBOX_CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS
212         bool "Use FHS /var/lib/hwclock/adjtime"
213         default n
214         depends on BUSYBOX_CONFIG_HWCLOCK
215         help
216           Starting with FHS 2.3, the adjtime state file is supposed to exist
217           at /var/lib/hwclock/adjtime instead of /etc/adjtime.  If you wish
218           to use the FHS behavior, answer Y here, otherwise answer N for the
219           classic /etc/adjtime path.
220
221           http://www.pathname.com/fhs/pub/fhs-2.3.html#VARLIBHWCLOCKSTATEDIRECTORYFORHWCLO
222
223 config BUSYBOX_CONFIG_IPCRM
224         bool "ipcrm"
225         default n
226         select BUSYBOX_CONFIG_FEATURE_SUID
227         help
228           The ipcrm utility allows the removal of System V interprocess
229           communication (IPC) objects and the associated data structures
230           from the system.
231
232 config BUSYBOX_CONFIG_IPCS
233         bool "ipcs"
234         default n
235         select BUSYBOX_CONFIG_FEATURE_SUID
236         help
237           The ipcs utility is used to provide information on the currently
238           allocated System V interprocess (IPC) objects in the system.
239
240 config BUSYBOX_CONFIG_LOSETUP
241         bool "losetup"
242         default n
243         help
244           losetup is used to associate or detach a loop device with a regular
245           file or block device, and to query the status of a loop device.  This
246           version does not currently support enabling data encryption.
247
248 config BUSYBOX_CONFIG_MDEV
249         bool "mdev"
250         default n
251         help
252           mdev is a mini-udev implementation: call it with -s to populate
253           /dev from /sys, then "echo /sbin/mdev > /proc/sys/kernel/hotplug" to
254           have it handle hotplug events afterwards.  Device names are taken
255           from sysfs.
256
257 config BUSYBOX_CONFIG_FEATURE_MDEV_CONF
258         bool "Support /etc/mdev.conf"
259         default n
260         depends on BUSYBOX_CONFIG_MDEV
261         help
262           The mdev config file contains lines that look like:
263
264             hd[a-z][0-9]* 0:3 660
265
266           That's device name (with regex match), uid:gid, and permissions.
267
268           Config file parsing stops on the first matching line.  If no config
269           entry is matched, devices are created with default 0:0 660.  (Make
270           the last line match .* to override this.)
271
272 config BUSYBOX_CONFIG_FEATURE_MDEV_EXEC
273         bool "Support command execution at device addition/removal"
274         default n
275         depends on BUSYBOX_CONFIG_FEATURE_MDEV_CONF
276         help
277           This adds support for an optional field to /etc/mdev.conf, consisting
278           of a special character and a command line to run after creating the
279           corresponding device(s) and before removing, ala:
280
281             hdc root:cdrom 660  *ln -s $MDEV cdrom
282
283           The $MDEV environment variable is set to the name of the device.
284
285           The special characters and their meanings are:
286             @ Run after creating the device.
287             $ Run before removing the device.
288             * Run both after creating and before removing the device.
289
290           Commands are executed via system() so you need /bin/sh, meaning you
291           probably want to select a default shell in the Shells menu.
292
293 config BUSYBOX_CONFIG_MKSWAP
294         bool "mkswap"
295         default n
296         help
297           The mkswap utility is used to configure a file or disk partition as
298           Linux swap space.  This allows Linux to use the entire file or
299           partition as if it were additional RAM, which can greatly increase
300           the capability of low-memory machines.  This additional memory is
301           much slower than real RAM, but can be very helpful at preventing your
302           applications being killed by the Linux out of memory (OOM) killer.
303           Once you have created swap space using 'mkswap' you need to enable
304           the swap space using the 'swapon' utility.
305
306 config BUSYBOX_CONFIG_FEATURE_MKSWAP_V0
307         bool "version 0 support"
308         default n
309         depends on BUSYBOX_CONFIG_MKSWAP
310 #       depends on BUSYBOX_CONFIG_MKSWAP && BUSYBOX_CONFIG_DEPRECATED
311         help
312           Enable support for the old v0 style.
313           If your kernel is older than 2.1.117, then v0 support is the
314           only option.
315
316 config BUSYBOX_CONFIG_MORE
317         bool "more"
318         default n
319         help
320           more is a simple utility which allows you to read text one screen
321           sized page at a time.  If you want to read text that is larger than
322           the screen, and you are using anything faster than a 300 baud modem,
323           you will probably find this utility very helpful.  If you don't have
324           any need to reading text files, you can leave this disabled.
325
326 config BUSYBOX_CONFIG_FEATURE_USE_TERMIOS
327         bool "Use termios to manipulate the screen"
328         default y
329         depends on BUSYBOX_CONFIG_MORE
330         help
331           This option allows utilities such as 'more' and 'top' to determine
332           the size of the screen.  If you leave this disabled, your utilities
333           that display things on the screen will be especially primitive and
334           will be unable to determine the current screen size, and will be
335           unable to move the cursor.
336
337 config BUSYBOX_CONFIG_MOUNT
338         bool "mount"
339         default y
340         help
341           All files and filesystems in Unix are arranged into one big directory
342           tree.  The 'mount' utility is used to graft a filesystem onto a
343           particular part of the tree.  A filesystem can either live on a block
344           device, or it can be accessible over the network, as is the case with
345           NFS filesystems.  Most people using BusyBox will also want to enable
346           the 'mount' utility.
347
348 config BUSYBOX_CONFIG_FEATURE_MOUNT_NFS
349         bool "Support mounting NFS file systems"
350         default y
351         depends on BUSYBOX_CONFIG_MOUNT
352         help
353          Enable mounting of NFS file systems.
354
355 config BUSYBOX_CONFIG_PIVOT_ROOT
356         bool "pivot_root"
357         default y
358         help
359           The pivot_root utility swaps the mount points for the root filesystem
360           with some other mounted filesystem.  This allows you to do all sorts
361           of wild and crazy things with your Linux system and is far more
362           powerful than 'chroot'.
363
364           Note: This is for initrd in linux 2.4.  Under initramfs (introduced
365           in linux 2.6) use switch_root instead.
366
367 config BUSYBOX_CONFIG_RDATE
368         bool "rdate"
369         default y
370         help
371           The rdate utility allows you to synchronize the date and time of your
372           system clock with the date and time of a remote networked system using
373           the RFC868 protocol, which is built into the inetd daemon on most
374           systems.
375
376 config BUSYBOX_CONFIG_READPROFILE
377         bool "readprofile"
378         default n
379         help
380           This allows you to parse /proc/profile for basic profiling.
381
382 config BUSYBOX_CONFIG_SETARCH
383         bool "setarch"
384         default n
385         help
386           The linux32 utility is used to create a 32bit environment for the
387           specified program (usually a shell).  It only makes sense to have
388           this util on a system that supports both 64bit and 32bit userland
389           (like amd64/x86, ppc64/ppc, sparc64/sparc, etc...).
390
391 config BUSYBOX_CONFIG_SWAPONOFF
392         bool "swaponoff"
393         default n
394         help
395           This option enables both the 'swapon' and the 'swapoff' utilities.
396           Once you have created some swap space using 'mkswap', you also need
397           to enable your swap space with the 'swapon' utility.  The 'swapoff'
398           utility is used, typically at system shutdown, to disable any swap
399           space.  If you are not using any swap space, you can leave this
400           option disabled.
401
402 config BUSYBOX_CONFIG_SWITCH_ROOT
403         bool "switch_root"
404         default y
405         help
406           The switch_root utility is used from initramfs to select a new
407           root device.  Under initramfs, you have to use this instead of
408           pivot_root.  (Stop reading here if you don't care why.)
409
410           Booting with initramfs extracts a gzipped cpio archive into rootfs
411           (which is a variant of ramfs/tmpfs).  Because rootfs can't be moved
412           or unmounted*, pivot_root will not work from initramfs.  Instead,
413           switch_root deletes everything out of rootfs (including itself),
414           does a mount --move that overmounts rootfs with the new root, and
415           then execs the specified init program.
416
417           * Because the Linux kernel uses rootfs internally as the starting
418           and ending point for searching through the kernel's doubly linked
419           list of active mount points.  That's why.
420
421 config BUSYBOX_CONFIG_UMOUNT
422         bool "umount"
423         default y
424         help
425           When you want to remove a mounted filesystem from its current mount point,
426           for example when you are shutting down the system, the 'umount' utility is
427           the tool to use.  If you enabled the 'mount' utility, you almost certainly
428           also want to enable 'umount'.
429
430 config BUSYBOX_CONFIG_FEATURE_UMOUNT_ALL
431         bool "umount -a option"
432         default y
433         depends on BUSYBOX_CONFIG_UMOUNT
434         help
435           Support -a option to unmount all currently mounted filesystems.
436
437 comment "Common options for mount/umount"
438         depends on BUSYBOX_CONFIG_MOUNT || BUSYBOX_CONFIG_UMOUNT
439
440 config BUSYBOX_CONFIG_FEATURE_MOUNT_LOOP
441         bool "Support loopback mounts"
442         default y
443         depends on BUSYBOX_CONFIG_MOUNT || BUSYBOX_CONFIG_UMOUNT
444         help
445           Enabling this feature allows automatic mounting of files (containing
446           filesystem images) via the linux kernel's loopback devices.  The mount
447           command will detect you are trying to mount a file instead of a block
448           device, and transparently associate the file with a loopback device.
449           The umount command will also free that loopback device.
450
451           You can still use the 'losetup' utility (to manually associate files
452           with loop devices) if you need to do something advanced, such as
453           specify an offset or cryptographic options to the loopback device.
454           (If you don't want umount to free the loop device, use "umount -D".)
455
456 config BUSYBOX_CONFIG_FEATURE_MTAB_SUPPORT
457         bool "Support for the old /etc/mtab file"
458         default n
459         depends on BUSYBOX_CONFIG_MOUNT || BUSYBOX_CONFIG_UMOUNT
460         help
461           Historically, Unix systems kept track of the currently mounted
462           partitions in the file "/etc/mtab".  These days, the kernel exports
463           the list of currently mounted partitions in "/proc/mounts", rendering
464           the old mtab file obsolete.  (In modern systems, /etc/mtab should be
465           a symlink to /proc/mounts.)
466
467           The only reason to have mount maintain an /etc/mtab file itself is if
468           your stripped-down embedded system does not have a /proc directory.
469           If you must use this, keep in mind it's inherently brittle (for
470           example a mount under chroot won't update it), can't handle modern
471           features like separate per-process filesystem namespaces, requires
472           that your /etc directory be writeable, tends to get easily confused
473           by --bind or --move mounts, won't update if you rename a directory
474           that contains a mount point, and so on.  (In brief: avoid.)
475
476           About the only reason to use this is if you've removed /proc from
477           your kernel.
478
479 endmenu
480