dmesg: try to detect buffer size
[oweals/busybox.git] / util-linux / Config.in
index ffa31a009fee419f9ee6e3942e339ddca691ebf3..5f5adc0fe4a7b2fd066fdef7bc369b4bbbb3a5b6 100644 (file)
 
 menu "Linux System Utilities"
 
+config ACPID
+       bool "acpid"
+       default n
+       help
+         acpid listens to ACPI events coming either in textual form from
+         /proc/acpi/event (though it is marked deprecated it is still widely
+         used and _is_ a standard) or in binary form from specified evdevs
+         (just use /dev/input/event*).
+
+         It parses the event to retrieve ACTION and a possible PARAMETER.
+         It then spawns /etc/acpi/<ACTION>[/<PARAMETER>] either via run-parts
+         (if the resulting path is a directory) or directly as an executable.
 
-config CONFIG_DMESG
+         N.B. acpid relies on run-parts so have the latter installed.
+
+config FEATURE_ACPID_COMPAT
+       bool "Accept and ignore redundant options"
+       default n
+       depends on ACPID
+       help
+         Accept and ignore compatibility options -g -m -s -S -v.
+
+config BLKID
+       bool "blkid"
+       default n
+       select VOLUMEID
+       help
+         Lists labels and UUIDs of all filesystems.
+         WARNING:
+         With all submodules selected, it will add ~8k to busybox.
+
+config DMESG
        bool "dmesg"
        default n
        help
-         dmesg is used to examine or control the kernel ring buffer.  When the
+         dmesg is used to examine or control the kernel ring buffer. When the
          Linux kernel prints messages to the system log, they are stored in
-         the kernel ring buffer.  You can use dmesg to print the kernel's ring
+         the kernel ring buffer. You can use dmesg to print the kernel's ring
          buffer, clear the kernel ring buffer, change the size of the kernel
          ring buffer, and change the priority level at which kernel messages
-         are also logged to the system console.  Enable this option if you
+         are also logged to the system console. Enable this option if you
          wish to enable the 'dmesg' utility.
 
-config CONFIG_FBSET
+config FEATURE_DMESG_PRETTY
+       bool "Pretty dmesg output"
+       default y
+       depends on DMESG
+       help
+         If you wish to scrub the syslog level from the output, say 'Y' here.
+         The syslog level is a string prefixed to every line with the form
+         "<#>".
+
+         With this option you will see:
+           # dmesg
+           Linux version 2.6.17.4 .....
+           BIOS-provided physical RAM map:
+            BIOS-e820: 0000000000000000 - 000000000009f000 (usable)
+
+         Without this option you will see:
+           # dmesg
+           <5>Linux version 2.6.17.4 .....
+           <6>BIOS-provided physical RAM map:
+           <6> BIOS-e820: 0000000000000000 - 000000000009f000 (usable)
+
+config FBSET
        bool "fbset"
        default n
        help
          fbset is used to show or change the settings of a Linux frame buffer
-         device.  The frame buffer device provides a simple and unique
-         interface to access a graphic display.  Enable this option if you wish
-         to enable the 'fbset' utility.
-
+         device. The frame buffer device provides a simple and unique
+         interface to access a graphics display. Enable this option
+         if you wish to enable the 'fbset' utility.
 
-config CONFIG_FEATURE_FBSET_FANCY
-       bool "  Turn on extra fbset options"
+config FEATURE_FBSET_FANCY
+       bool "Turn on extra fbset options"
        default n
-       depends on CONFIG_FBSET
+       depends on FBSET
        help
          This option enables extended fbset options, allowing one to set the
-         framebuffer size, color depth, etc.  interface to access a graphic
-         display.  Enable this option if you wish to enable extended fbset
+         framebuffer size, color depth, etc. interface to access a graphics
+         display. Enable this option if you wish to enable extended fbset
          options.
 
-config CONFIG_FEATURE_FBSET_READMODE
-       bool "  Turn on fbset readmode support"
+config FEATURE_FBSET_READMODE
+       bool "Turn on fbset readmode support"
        default n
-       depends on CONFIG_FBSET
+       depends on FBSET
        help
          This option allows fbset to read the video mode database stored by
          default as /etc/fb.modes, which can be used to set frame buffer
          device to pre-defined video modes.
 
-config CONFIG_FDFLUSH
+config FDFLUSH
        bool "fdflush"
        default n
        help
-         Fdflush is only needed when changing media on slightly-broken
-         removable media drives.  It is used to make Linux believe that a
+         fdflush is only needed when changing media on slightly-broken
+         removable media drives. It is used to make Linux believe that a
          hardware disk-change switch has been actuated, which causes Linux to
-         forget anything it has cached from the previous media.  If you have
+         forget anything it has cached from the previous media. If you have
          such a slightly-broken drive, you will need to run fdflush every time
-         you change a disk.  Most people have working hardware and can safely
-         say leave this disabled.
+         you change a disk. Most people have working hardware and can safely
+         leave this disabled.
 
-config CONFIG_FDFORMAT
+config FDFORMAT
        bool "fdformat"
        default n
        help
-         Fdformat is used to low-level format a floppy disk.
+         fdformat is used to low-level format a floppy disk.
 
-config CONFIG_FDISK
+config FDISK
        bool "fdisk"
        default n
        help
          The fdisk utility is used to divide hard disks into one or more
-         logical disks, which are generally called partitions.  This utility
-         can be used to list and edit the set of partitions or BSD style 
+         logical disks, which are generally called partitions. This utility
+         can be used to list and edit the set of partitions or BSD style
          'disk slices' that are defined on a hard drive.
 
-if !CONFIG_LFS
 config FDISK_SUPPORT_LARGE_DISKS
-       bool "  support over 4Gb disks"
+       bool "Support over 4GB disks"
        default y
-       depends on CONFIG_FDISK
+       depends on FDISK
        help
-         Previous set detected unsupport large file, but you can support
-         large disks after enable this option
-endif
+         Enable this option to support large disks > 4GB.
 
-config CONFIG_FEATURE_FDISK_WRITABLE
-       bool "  Write support" 
+config FEATURE_FDISK_WRITABLE
+       bool "Write support"
        default y
-       depends on CONFIG_FDISK
+       depends on FDISK
        help
          Enabling this option allows you to create or change a partition table
-         and write those changes out to disk.  If you leave this option
+         and write those changes out to disk. If you leave this option
          disabled, you will only be able to view the partition table.
 
-config CONFIG_FEATURE_AIX_LABEL
-       bool "  Support AIX disklabels"
+config FEATURE_AIX_LABEL
+       bool "Support AIX disklabels"
        default n
-       depends on CONFIG_FDISK && CONFIG_FEATURE_FDISK_WRITABLE  
+       depends on FDISK && FEATURE_FDISK_WRITABLE
        help
          Enabling this option allows you to create or change AIX disklabels.
          Most people can safely leave this option disabled.
 
-config CONFIG_FEATURE_SGI_LABEL
-       bool "  Support SGI disklabels"
+config FEATURE_SGI_LABEL
+       bool "Support SGI disklabels"
        default n
-       depends on CONFIG_FDISK && CONFIG_FEATURE_FDISK_WRITABLE
+       depends on FDISK && FEATURE_FDISK_WRITABLE
        help
          Enabling this option allows you to create or change SGI disklabels.
          Most people can safely leave this option disabled.
 
-config CONFIG_FEATURE_SUN_LABEL
-       bool "  Support SUN disklabels"
+config FEATURE_SUN_LABEL
+       bool "Support SUN disklabels"
        default n
-       depends on CONFIG_FDISK && CONFIG_FEATURE_FDISK_WRITABLE        
+       depends on FDISK && FEATURE_FDISK_WRITABLE
        help
          Enabling this option allows you to create or change SUN disklabels.
          Most people can safely leave this option disabled.
 
-config CONFIG_FEATURE_OSF_LABEL
-       bool "  Support BSD disklabels"
+config FEATURE_OSF_LABEL
+       bool "Support BSD disklabels"
        default n
-       depends on CONFIG_FDISK && CONFIG_FEATURE_FDISK_WRITABLE
+       depends on FDISK && FEATURE_FDISK_WRITABLE
        help
          Enabling this option allows you to create or change BSD disklabels
          and define and edit BSD disk slices.
 
-config CONFIG_FEATURE_FDISK_ADVANCED
-       bool "  Support expert mode"
+config FEATURE_FDISK_ADVANCED
+       bool "Support expert mode"
        default n
-       depends on CONFIG_FDISK && CONFIG_FEATURE_FDISK_WRITABLE
+       depends on FDISK && FEATURE_FDISK_WRITABLE
        help
          Enabling this option allows you to do terribly unsafe things like
          define arbitrary drive geometry, move the beginning of data in a
-         partition, and similarly evil things.  Unless you have a very good
+         partition, and similarly evil things. Unless you have a very good
          reason you would be wise to leave this disabled.
 
-config CONFIG_FREERAMDISK
+config FINDFS
+       bool "findfs"
+       default n
+       select VOLUMEID
+       help
+         Prints the name of a filesystem with given label or UUID.
+         WARNING:
+         With all submodules selected, it will add ~8k to busybox.
+
+config FREERAMDISK
        bool "freeramdisk"
        default n
        help
-         Linux allows you to create ramdisks.  This utility allows you to
+         Linux allows you to create ramdisks. This utility allows you to
          delete them and completely free all memory that was used for the
-         ramdisk.  For example, if you boot Linux into a ramdisk and later
+         ramdisk. For example, if you boot Linux into a ramdisk and later
          pivot_root, you may want to free the memory that is allocated to the
-         ramdisk.  If you have no use for freeing memory from a ramdisk, leave
+         ramdisk. If you have no use for freeing memory from a ramdisk, leave
          this disabled.
 
-config CONFIG_FSCK_MINIX
+config FSCK_MINIX
        bool "fsck_minix"
        default n
        help
          The minix filesystem is a nice, small, compact, read-write filesystem
-         with little overhead.  It is not a journaling filesystem however and
-         can encounted corruption if it is not properly unmounted or if the
-         power goes off in the middle of a write.  This utility allows you to
+         with little overhead. It is not a journaling filesystem however and
+         can experience corruption if it is not properly unmounted or if the
+         power goes off in the middle of a write. This utility allows you to
          check for and attempt to repair any corruption that occurs to a minix
          filesystem.
 
-config CONFIG_MKFS_MINIX
+config MKFS_MINIX
        bool "mkfs_minix"
        default n
        help
          The minix filesystem is a nice, small, compact, read-write filesystem
-         with little overhead.  If you wish to be able to create minix filesystems
-         this utility will do the job for you.
+         with little overhead. If you wish to be able to create minix
+         filesystems this utility will do the job for you.
 
 comment "Minix filesystem support"
-    depends on CONFIG_FSCK_MINIX || CONFIG_MKFS_MINIX
+       depends on FSCK_MINIX || MKFS_MINIX
 
-config CONFIG_FEATURE_MINIX2
-       bool "  Support Minix fs v2 (fsck_minix/mkfs_minix)"
+config FEATURE_MINIX2
+       bool "Support Minix fs v2 (fsck_minix/mkfs_minix)"
        default y
-       depends on CONFIG_FSCK_MINIX || CONFIG_MKFS_MINIX
+       depends on FSCK_MINIX || MKFS_MINIX
+       help
+         If you wish to be able to create version 2 minix filesystems, enable
+         this. If you enabled 'mkfs_minix' then you almost certainly want to
+         be using the version 2 filesystem support.
+
+config MKFS_VFAT
+       bool "mkfs_vfat"
+       default n
        help
-         If you wish to be able to create version 2 minix filesystems, enable this.
-         If you enabled 'mkfs_minix' then you almost certainly want to be using the
-         version 2 filesystem support.
+         Utility to create FAT32 filesystems.
 
-config CONFIG_GETOPT
+config GETOPT
        bool "getopt"
        default n
        help
          The getopt utility is used to break up (parse) options in command
          lines to make it easy to write complex shell scripts that also check
-         for legal (and illegal) options.  If you want to write horribly
+         for legal (and illegal) options. If you want to write horribly
          complex shell scripts, or use some horribly complex shell script
-         written by others, this utility may be for you.  Most people will
+         written by others, this utility may be for you. Most people will
          wisely leave this disabled.
 
-config CONFIG_HEXDUMP
+config FEATURE_GETOPT_LONG
+       bool "Support option -l"
+       default y if LONG_OPTS
+       depends on GETOPT
+       help
+         Enable support for long options (option -l).
+
+config HEXDUMP
        bool "hexdump"
        default n
        help
          The hexdump utility is used to display binary data in a readable
          way that is comparable to the output from most hex editors.
 
-config CONFIG_HWCLOCK
+config FEATURE_HEXDUMP_REVERSE
+       bool "Support -R, reverse of 'hexdump -Cv'"
+       default n
+       depends on HEXDUMP
+       help
+         The hexdump utility is used to display binary data in an ascii
+         readable way. This option creates binary data from an ascii input.
+         NB: this option is non-standard. It's unwise to use it in scripts
+         aimed to be portable.
+
+config HD
+       bool "hd"
+       default n
+       select HEXDUMP
+       help
+         hd is an alias to hexdump -C.
+
+config HWCLOCK
        bool "hwclock"
        default n
        help
          The hwclock utility is used to read and set the hardware clock
-         on a system.  This is primarily used to set the correct time in
-         the hardware close, so the hardware will keep the correct time 
-         when Linux is _not_ running.
+         on a system. This is primarily used to set the current time on
+         shutdown in the hardware clock, so the hardware will keep the
+         correct time when Linux is _not_ running.
 
-config CONFIG_FEATURE_HWCLOCK_LONGOPTIONS
-       bool "  Support long options (--hctosys,...)"
+config FEATURE_HWCLOCK_LONG_OPTIONS
+       bool "Support long options (--hctosys,...)"
        default n
-       depends on CONFIG_HWCLOCK
+       depends on HWCLOCK && LONG_OPTS
        help
-         By default, the hwclock utility only uses short options.  If you
-         are overly fond of the long options, such as --hctosys, --utc, etc)
+         By default, the hwclock utility only uses short options. If you
+         are overly fond of its long options, such as --hctosys, --utc, etc)
          then enable this option.
 
-config CONFIG_LOSETUP
+config FEATURE_HWCLOCK_ADJTIME_FHS
+       bool "Use FHS /var/lib/hwclock/adjtime"
+       default y
+       depends on HWCLOCK
+       help
+         Starting with FHS 2.3, the adjtime state file is supposed to exist
+         at /var/lib/hwclock/adjtime instead of /etc/adjtime. If you wish
+         to use the FHS behavior, answer Y here, otherwise answer N for the
+         classic /etc/adjtime path.
+
+         pathname.com/fhs/pub/fhs-2.3.html#VARLIBHWCLOCKSTATEDIRECTORYFORHWCLO
+
+config IPCRM
+       bool "ipcrm"
+       default n
+       select FEATURE_SUID
+       help
+         The ipcrm utility allows the removal of System V interprocess
+         communication (IPC) objects and the associated data structures
+         from the system.
+
+config IPCS
+       bool "ipcs"
+       default n
+       select FEATURE_SUID
+       help
+         The ipcs utility is used to provide information on the currently
+         allocated System V interprocess (IPC) objects in the system.
+
+config LOSETUP
        bool "losetup"
        default n
        help
          losetup is used to associate or detach a loop device with a regular
-         file or block device, and to query the status of a loop device.  This
+         file or block device, and to query the status of a loop device. This
          version does not currently support enabling data encryption.
 
-config CONFIG_MKSWAP
+config MDEV
+       bool "mdev"
+       default n
+       help
+         mdev is a mini-udev implementation for dynamically creating device
+         nodes in the /dev directory.
+
+         For more information, please see docs/mdev.txt
+
+config FEATURE_MDEV_CONF
+       bool "Support /etc/mdev.conf"
+       default n
+       depends on MDEV
+       help
+         Add support for the mdev config file to control ownership and
+         permissions of the device nodes.
+
+         For more information, please see docs/mdev.txt
+
+config FEATURE_MDEV_RENAME
+       bool "Support subdirs/symlinks"
+       default n
+       depends on FEATURE_MDEV_CONF
+       help
+         Add support for renaming devices and creating symlinks.
+
+         For more information, please see docs/mdev.txt
+
+config FEATURE_MDEV_RENAME_REGEXP
+       bool "Support regular expressions substitutions when renaming device"
+       default n
+       depends on FEATURE_MDEV_RENAME
+       help
+         Add support for regular expressions substitutions when renaming
+         device.
+
+config FEATURE_MDEV_EXEC
+       bool "Support command execution at device addition/removal"
+       default n
+       depends on FEATURE_MDEV_CONF
+       help
+         This adds support for an optional field to /etc/mdev.conf for
+         executing commands when devices are created/removed.
+
+         For more information, please see docs/mdev.txt
+
+config FEATURE_MDEV_LOAD_FIRMWARE
+       bool "Support loading of firmwares"
+       default n
+       depends on MDEV
+       help
+         Some devices need to load firmware before they can be usable.
+
+         These devices will request userspace look up the files in
+         /lib/firmware/ and if it exists, send it to the kernel for
+         loading into the hardware.
+
+config MKSWAP
        bool "mkswap"
        default n
        help
          The mkswap utility is used to configure a file or disk partition as
-         Linux swap space.  This allows Linux to use the entire file or
+         Linux swap space. This allows Linux to use the entire file or
          partition as if it were additional RAM, which can greatly increase
-         the capability of low-memory machines.  This additional memory is
+         the capability of low-memory machines. This additional memory is
          much slower than real RAM, but can be very helpful at preventing your
-         applications being killed by the Linux out of memory (OOM) killer.  Once
-         you have created swap space using 'mkswap' you need to enable the swap
-         space using the 'swapon' utility.
+         applications being killed by the Linux out of memory (OOM) killer.
+         Once you have created swap space using 'mkswap' you need to enable
+         the swap space using the 'swapon' utility.
+
+config FEATURE_MKSWAP_UUID
+       bool "UUID support"
+       default n
+       depends on MKSWAP
+       help
+         Generate swap spaces with universally unique identifiers.
 
-config CONFIG_MORE
+config MORE
        bool "more"
        default n
        help
-         More is a simple utility which allows you to read text one screen
-         sized page at a time.  If you want to read text that is larger than
+         more is a simple utility which allows you to read text one screen
+         sized page at a time. If you want to read text that is larger than
          the screen, and you are using anything faster than a 300 baud modem,
-         you will probably find this utility very helpful.  If you don't have
+         you will probably find this utility very helpful. If you don't have
          any need to reading text files, you can leave this disabled.
 
-config CONFIG_FEATURE_USE_TERMIOS
-       bool "  Use termios to manipulate the screen"
+config FEATURE_USE_TERMIOS
+       bool "Use termios to manipulate the screen"
        default y
-       depends on CONFIG_MORE
+       depends on MORE || TOP
        help
          This option allows utilities such as 'more' and 'top' to determine
-         the size of the screen.  If you leave this disabled, your utilities
-         that display things on the screen with be especially primitive and
+         the size of the screen. If you leave this disabled, your utilities
+         that display things on the screen will be especially primitive and
          will be unable to determine the current screen size, and will be
          unable to move the cursor.
 
-config CONFIG_PIVOT_ROOT
+config VOLUMEID
+       bool #No description makes it a hidden option
+       default n
+
+config FEATURE_VOLUMEID_EXT
+       bool "Ext filesystem"
+       default n
+       depends on VOLUMEID
+       help
+         TODO
+
+config FEATURE_VOLUMEID_REISERFS
+       bool "Reiser filesystem"
+       default n
+       depends on VOLUMEID
+       help
+         TODO
+
+config FEATURE_VOLUMEID_FAT
+       bool "fat filesystem"
+       default n
+       depends on VOLUMEID
+       help
+         TODO
+
+config FEATURE_VOLUMEID_HFS
+       bool "hfs filesystem"
+       default n
+       depends on VOLUMEID
+       help
+         TODO
+
+config FEATURE_VOLUMEID_JFS
+       bool "jfs filesystem"
+       default n
+       depends on VOLUMEID
+       help
+         TODO
+
+### config FEATURE_VOLUMEID_UFS
+###    bool "ufs filesystem"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+
+config FEATURE_VOLUMEID_XFS
+       bool "xfs filesystem"
+       default n
+       depends on VOLUMEID
+       help
+         TODO
+
+config FEATURE_VOLUMEID_NTFS
+       bool "ntfs filesystem"
+       default n
+       depends on VOLUMEID
+       help
+         TODO
+
+config FEATURE_VOLUMEID_ISO9660
+       bool "iso9660 filesystem"
+       default n
+       depends on VOLUMEID
+       help
+         TODO
+
+config FEATURE_VOLUMEID_UDF
+       bool "udf filesystem"
+       default n
+       depends on VOLUMEID
+       help
+         TODO
+
+config FEATURE_VOLUMEID_LUKS
+       bool "luks filesystem"
+       default n
+       depends on VOLUMEID
+       help
+         TODO
+
+config FEATURE_VOLUMEID_LINUXSWAP
+       bool "linux swap filesystem"
+       default n
+       depends on VOLUMEID
+       help
+         TODO
+
+### config FEATURE_VOLUMEID_LVM
+###    bool "lvm"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+
+config FEATURE_VOLUMEID_CRAMFS
+       bool "cramfs filesystem"
+       default n
+       depends on VOLUMEID
+       help
+         TODO
+
+### config FEATURE_VOLUMEID_HPFS
+###    bool "hpfs filesystem"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+
+config FEATURE_VOLUMEID_ROMFS
+       bool "romfs filesystem"
+       default n
+       depends on VOLUMEID
+       help
+         TODO
+
+config FEATURE_VOLUMEID_SYSV
+       bool "sysv filesystem"
+       default n
+       depends on VOLUMEID
+       help
+         TODO
+
+### config FEATURE_VOLUMEID_MINIX
+###    bool "minix filesystem"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+
+### These only detect partition tables - not used (yet?)
+### config FEATURE_VOLUMEID_MAC
+###    bool "mac filesystem"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+###
+### config FEATURE_VOLUMEID_MSDOS
+###    bool "msdos filesystem"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+
+config FEATURE_VOLUMEID_OCFS2
+       bool "ocfs2 filesystem"
+       default n
+       depends on VOLUMEID
+       help
+         TODO
+
+### config FEATURE_VOLUMEID_HIGHPOINTRAID
+###    bool "highpoint raid"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+
+### config FEATURE_VOLUMEID_ISWRAID
+###    bool "intel raid"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+
+### config FEATURE_VOLUMEID_LSIRAID
+###    bool "lsi raid"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+
+### config FEATURE_VOLUMEID_VIARAID
+###    bool "via raid"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+
+### config FEATURE_VOLUMEID_SILICONRAID
+###    bool "silicon raid"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+
+### config FEATURE_VOLUMEID_NVIDIARAID
+###    bool "nvidia raid"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+
+### config FEATURE_VOLUMEID_PROMISERAID
+###    bool "promise raid"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+
+config FEATURE_VOLUMEID_LINUXRAID
+       bool "linuxraid"
+       default n
+       depends on VOLUMEID
+       help
+         TODO
+
+config MOUNT
+       bool "mount"
+       default n
+       help
+         All files and filesystems in Unix are arranged into one big directory
+         tree. The 'mount' utility is used to graft a filesystem onto a
+         particular part of the tree. A filesystem can either live on a block
+         device, or it can be accessible over the network, as is the case with
+         NFS filesystems. Most people using BusyBox will also want to enable
+         the 'mount' utility.
+
+config FEATURE_MOUNT_FAKE
+       bool "Support option -f"
+       default n
+       depends on MOUNT
+       help
+         Enable support for faking a file system mount.
+
+config FEATURE_MOUNT_VERBOSE
+       bool "Support option -v"
+       default n
+       depends on MOUNT
+       help
+         Enable multi-level -v[vv...] verbose messages. Useful if you
+         debug mount problems and want to see what is exactly passed
+         to the kernel.
+
+config FEATURE_MOUNT_HELPERS
+       bool "Support mount helpers"
+       default n
+       depends on MOUNT
+       help
+         Enable mounting of virtual file systems via external helpers.
+         E.g. "mount obexfs#-b00.11.22.33.44.55 /mnt" will in effect call
+         "obexfs -b00.11.22.33.44.55 /mnt"
+         Also "mount -t sometype [-o opts] fs /mnt" will try
+         "sometype [-o opts] fs /mnt" if simple mount syscall fails.
+         The idea is to use such virtual filesystems in /etc/fstab.
+
+config FEATURE_MOUNT_LABEL
+       bool "Support specifiying devices by label or UUID"
+       default n
+       depends on MOUNT
+       select VOLUMEID
+       help
+         This allows for specifying a device by label or uuid, rather than by
+         name. This feature utilizes the same functionality as blkid/findfs.
+
+config FEATURE_MOUNT_NFS
+       bool "Support mounting NFS file systems"
+       default n
+       depends on MOUNT
+       select FEATURE_HAVE_RPC
+       select FEATURE_SYSLOG
+       help
+         Enable mounting of NFS file systems.
+
+config FEATURE_MOUNT_CIFS
+       bool "Support mounting CIFS/SMB file systems"
+       default n
+       depends on MOUNT
+       help
+         Enable support for samba mounts.
+
+config FEATURE_MOUNT_FLAGS
+       depends on MOUNT
+       bool "Support lots of -o flags in mount"
+       default y
+       help
+         Without this, mount only supports ro/rw/remount. With this, it
+         supports nosuid, suid, dev, nodev, exec, noexec, sync, async, atime,
+         noatime, diratime, nodiratime, loud, bind, move, shared, slave,
+         private, unbindable, rshared, rslave, rprivate, and runbindable.
+
+config FEATURE_MOUNT_FSTAB
+       depends on MOUNT
+       bool "Support /etc/fstab and -a"
+       default y
+       help
+         Support mount all and looking for files in /etc/fstab.
+
+config PIVOT_ROOT
        bool "pivot_root"
        default n
        help
          The pivot_root utility swaps the mount points for the root filesystem
-         with some other mounted filesystem.  This allows you to do all sorts
+         with some other mounted filesystem. This allows you to do all sorts
          of wild and crazy things with your Linux system and is far more
          powerful than 'chroot'.
 
-config CONFIG_RDATE
+         Note: This is for initrd in linux 2.4. Under initramfs (introduced
+         in linux 2.6) use switch_root instead.
+
+config RDATE
        bool "rdate"
        default n
        help
-         The rdate utility allows you to syncronize the date and time of your 
+         The rdate utility allows you to synchronize the date and time of your
          system clock with the date and time of a remote networked system using
          the RFC868 protocol, which is built into the inetd daemon on most
          systems.
 
-config CONFIG_SWAPONOFF
+config RDEV
+       bool "rdev"
+       default n
+       help
+         Print the device node associated with the filesystem mounted at '/'.
+
+config READPROFILE
+       bool "readprofile"
+       default n
+       help
+         This allows you to parse /proc/profile for basic profiling.
+
+config RTCWAKE
+       bool "rtcwake"
+       default n
+       help
+         Enter a system sleep state until specified wakeup time.
+
+config SCRIPT
+       bool "script"
+       default n
+       help
+         The script makes typescript of terminal session.
+
+config SCRIPTREPLAY
+       bool "scriptreplay"
+       default n
+       help
+         This program replays a typescript, using timing information
+         given by script -t.
+
+config SETARCH
+       bool "setarch"
+       default n
+       help
+         The linux32 utility is used to create a 32bit environment for the
+         specified program (usually a shell). It only makes sense to have
+         this util on a system that supports both 64bit and 32bit userland
+         (like amd64/x86, ppc64/ppc, sparc64/sparc, etc...).
+
+config SWAPONOFF
        bool "swaponoff"
        default n
        help
          This option enables both the 'swapon' and the 'swapoff' utilities.
          Once you have created some swap space using 'mkswap', you also need
-         to enable your swap space with the 'swapon' utility.  The 'swapoff'
+         to enable your swap space with the 'swapon' utility. The 'swapoff'
          utility is used, typically at system shutdown, to disable any swap
-         space.  If you are not using any swap space, you can leave this
+         space. If you are not using any swap space, you can leave this
          option disabled.
 
-config CONFIG_MOUNT
-       bool "mount"
+config FEATURE_SWAPON_PRI
+       bool "Support priority option -p"
        default n
+       depends on SWAPONOFF
        help
-         All files and filesystems in Unix are arranged into one big directory
-         tree.  The 'mount' utility is used to graft a filesystem onto a
-         particular part of the tree.  A filesystem can either live on a block
-         device, or it can be accessible over the network, as is the case with
-         NFS filesystems.  Most people using BusyBox will also want to enable
-         the 'mount' utility.
+         Enable support for setting swap device priority in swapon.
 
-config CONFIG_NFSMOUNT
-       bool "  Support mounting nfs file systems"
+config SWITCH_ROOT
+       bool "switch_root"
        default n
-       depends on CONFIG_MOUNT
        help
-        Enable mounting of NFS file systems.
+         The switch_root utility is used from initramfs to select a new
+         root device. Under initramfs, you have to use this instead of
+         pivot_root. (Stop reading here if you don't care why.)
+
+         Booting with initramfs extracts a gzipped cpio archive into rootfs
+         (which is a variant of ramfs/tmpfs). Because rootfs can't be moved
+         or unmounted*, pivot_root will not work from initramfs. Instead,
+         switch_root deletes everything out of rootfs (including itself),
+         does a mount --move that overmounts rootfs with the new root, and
+         then execs the specified init program.
 
-config CONFIG_UMOUNT
+         * Because the Linux kernel uses rootfs internally as the starting
+         and ending point for searching through the kernel's doubly linked
+         list of active mount points. That's why.
+
+config UMOUNT
        bool "umount"
        default n
        help
-         When you want to remove a mounted filesystem from its current mount point,
-         for example when you are shutting down the system, the 'umount' utility is
-         the tool to use.  If you enabled the 'mount' utility, you almost certainly
-         also want to enable 'umount'.
+         When you want to remove a mounted filesystem from its current mount
+         point, for example when you are shutting down the system, the
+         'umount' utility is the tool to use. If you enabled the 'mount'
+         utility, you almost certainly also want to enable 'umount'.
 
-config CONFIG_FEATURE_MOUNT_FORCE
-       bool "  Support forced filesystem unmounting"
+config FEATURE_UMOUNT_ALL
+       bool "Support option -a"
        default n
-       depends on CONFIG_UMOUNT
+       depends on UMOUNT
        help
-         This allows you to _force_ a filesystem to be umounted.  This is generally
-         only useful when you want to get rid of an unreachable NFS system.
+         Support -a option to unmount all currently mounted filesystems.
 
 comment "Common options for mount/umount"
-       depends on CONFIG_MOUNT || CONFIG_UMOUNT
+       depends on MOUNT || UMOUNT
 
-config CONFIG_FEATURE_MOUNT_LOOP
-       bool "  Support for loop devices"
+config FEATURE_MOUNT_LOOP
+       bool "Support loopback mounts"
        default n
-       depends on CONFIG_MOUNT || CONFIG_UMOUNT
-       help
-         Enabling this feature allows mount to use the '-o' loop options,
-         which lets you loop mount files.  Mount will automagically setup and
-         free the necessary loop devices so you do not need to mess with the
-         'losetup' utility unless you really want to.  This is really only useful
-         if you plan to loop mount files.
-
-config CONFIG_FEATURE_MTAB_SUPPORT
-       bool "  Support for a real /etc/mtab (instead of /proc/mounts)"
+       depends on MOUNT || UMOUNT
+       help
+         Enabling this feature allows automatic mounting of files (containing
+         filesystem images) via the linux kernel's loopback devices.
+         The mount command will detect you are trying to mount a file instead
+         of a block device, and transparently associate the file with a
+         loopback device. The umount command will also free that loopback
+         device.
+
+         You can still use the 'losetup' utility (to manually associate files
+         with loop devices) if you need to do something advanced, such as
+         specify an offset or cryptographic options to the loopback device.
+         (If you don't want umount to free the loop device, use "umount -D".)
+
+config FEATURE_MTAB_SUPPORT
+       bool "Support for the old /etc/mtab file"
        default n
-       depends on CONFIG_MOUNT || CONFIG_UMOUNT
-       help
-         If your root filesystem is writable and you wish to have the 'mount'
-         utility create an mtab file listing the filesystems which have been
-         mounted then you should enable this option.  Most people that use
-         BusyBox have a read-only root filesystem, so they will leave this
-         option disabled and BusyBox will use the /proc/mounts file.
-
-config CONFIG_FEATURE_MTAB_FILENAME
-       string "  mtab file location"
-       default "/etc/mtab"
-       depends on CONFIG_FEATURE_MTAB_SUPPORT
-       help
-         Some people have a read only root filesystem, but they also wish to
-         have the 'mount' utility create an mtab file listing the filesystems
-         which have been mounted.  This option allows you to specify an alternative
-         location for the mtab file, such as /var/mtab, or /tmp/mtab.  The default
-         value is /etc/mtab, which is where this file is located on most desktop
-         Linux systems.
+       depends on MOUNT || UMOUNT
+       select FEATURE_MOUNT_FAKE
+       help
+         Historically, Unix systems kept track of the currently mounted
+         partitions in the file "/etc/mtab". These days, the kernel exports
+         the list of currently mounted partitions in "/proc/mounts", rendering
+         the old mtab file obsolete. (In modern systems, /etc/mtab should be
+         a symlink to /proc/mounts.)
+
+         The only reason to have mount maintain an /etc/mtab file itself is if
+         your stripped-down embedded system does not have a /proc directory.
+         If you must use this, keep in mind it's inherently brittle (for
+         example a mount under chroot won't update it), can't handle modern
+         features like separate per-process filesystem namespaces, requires
+         that your /etc directory be writeable, tends to get easily confused
+         by --bind or --move mounts, won't update if you rename a directory
+         that contains a mount point, and so on. (In brief: avoid.)
+
+         About the only reason to use this is if you've removed /proc from
+         your kernel.
 
 endmenu
-