[adm5120] fix support for 2.6.38 kernel
[openwrt.git] / package / busybox / config / miscutils / Config.in
index 1ddfb94..e69d684 100644 (file)
@@ -1,3 +1,4 @@
+# DO NOT EDIT. This file is generated from Config.src
 #
 # For a description of the syntax of this configuration file,
 # see scripts/kbuild/config-language.txt.
 #
 # For a description of the syntax of this configuration file,
 # see scripts/kbuild/config-language.txt.
@@ -5,9 +6,158 @@
 
 menu "Miscellaneous Utilities"
 
 
 menu "Miscellaneous Utilities"
 
+config BUSYBOX_CONFIG_CONSPY
+       bool "conspy"
+       default n
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         A text-mode VNC like program for Linux virtual terminals.
+         example:  conspy NUM      shared access to console num
+         or        conspy -nd NUM  screenshot of console num
+         or        conspy -cs NUM  poor man's GNU screen like
+config BUSYBOX_CONFIG_LESS
+       bool "less"
+       default y
+       help
+         'less' is a pager, meaning that it displays text files. It possesses
+         a wide array of features, and is an improvement over 'more'.
+
+config BUSYBOX_CONFIG_FEATURE_LESS_MAXLINES
+       int "Max number of input lines less will try to eat"
+       default 9999999
+       depends on BUSYBOX_CONFIG_LESS
+
+config BUSYBOX_CONFIG_FEATURE_LESS_BRACKETS
+       bool "Enable bracket searching"
+       default n
+       depends on BUSYBOX_CONFIG_LESS
+       help
+         This option adds the capability to search for matching left and right
+         brackets, facilitating programming.
+
+config BUSYBOX_CONFIG_FEATURE_LESS_FLAGS
+       bool "Enable extra flags"
+       default n
+       depends on BUSYBOX_CONFIG_LESS
+       help
+         The extra flags provided do the following:
+
+         The -M flag enables a more sophisticated status line.
+         The -m flag enables a simpler status line with a percentage.
+
+config BUSYBOX_CONFIG_FEATURE_LESS_MARKS
+       bool "Enable marks"
+       default n
+       depends on BUSYBOX_CONFIG_LESS
+       help
+         Marks enable positions in a file to be stored for easy reference.
+
+config BUSYBOX_CONFIG_FEATURE_LESS_REGEXP
+       bool "Enable regular expressions"
+       default n
+       depends on BUSYBOX_CONFIG_LESS
+       help
+         Enable regular expressions, allowing complex file searches.
+
+config BUSYBOX_CONFIG_FEATURE_LESS_WINCH
+       bool "Enable automatic resizing on window size changes"
+       default n
+       depends on BUSYBOX_CONFIG_LESS
+       help
+         Makes less track window size changes.
+
+config BUSYBOX_CONFIG_FEATURE_LESS_ASK_TERMINAL
+       bool "Use 'tell me cursor position' ESC sequence to measure window"
+       default n
+       depends on BUSYBOX_CONFIG_FEATURE_LESS_WINCH
+       help
+         Makes less track window size changes.
+         If terminal size can't be retrieved and $LINES/$COLUMNS are not set,
+         this option makes less perform a last-ditch effort to find it:
+         position cursor to 999,999 and ask terminal to report real
+         cursor position using "ESC [ 6 n" escape sequence, then read stdin.
+
+         This is not clean but helps a lot on serial lines and such.
+
+config BUSYBOX_CONFIG_FEATURE_LESS_DASHCMD
+       bool "Enable flag changes ('-' command)"
+       default n
+       depends on BUSYBOX_CONFIG_LESS
+       help
+         This enables the ability to change command-line flags within
+         less itself ('-' keyboard command).
+
+config BUSYBOX_CONFIG_FEATURE_LESS_LINENUMS
+       bool "Enable dynamic switching of line numbers"
+       default n
+       depends on BUSYBOX_CONFIG_FEATURE_LESS_DASHCMD
+       help
+         Enables "-N" command.
+config BUSYBOX_CONFIG_NANDWRITE
+       bool "nandwrite"
+       default n
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Write to the specified MTD device, with bad blocks awareness
+
+config BUSYBOX_CONFIG_NANDDUMP
+       bool "nanddump"
+       default n
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Dump the content of raw NAND chip
+config BUSYBOX_CONFIG_SETSERIAL
+       bool "setserial"
+       default n
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Retrieve or set Linux serial port.
+config BUSYBOX_CONFIG_UBIATTACH
+       bool "ubiattach"
+       default n
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Attach MTD device to an UBI device.
+
+config BUSYBOX_CONFIG_UBIDETACH
+       bool "ubidetach"
+       default n
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Detach MTD device from an UBI device.
+
+config BUSYBOX_CONFIG_UBIMKVOL
+       bool "ubimkvol"
+       default n
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Create a UBI volume.
+
+config BUSYBOX_CONFIG_UBIRMVOL
+       bool "ubirmvol"
+       default n
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Delete a UBI volume.
+
+config BUSYBOX_CONFIG_UBIRSVOL
+       bool "ubirsvol"
+       default n
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Resize a UBI volume.
+
+config BUSYBOX_CONFIG_UBIUPDATEVOL
+       bool "ubiupdatevol"
+       default n
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Update a UBI volume.
+
 config BUSYBOX_CONFIG_ADJTIMEX
        bool "adjtimex"
        default n
 config BUSYBOX_CONFIG_ADJTIMEX
        bool "adjtimex"
        default n
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
          Adjtimex reads and optionally sets adjustment parameters for
          the Linux clock adjustment algorithm.
        help
          Adjtimex reads and optionally sets adjustment parameters for
          the Linux clock adjustment algorithm.
@@ -19,6 +169,43 @@ config BUSYBOX_CONFIG_BBCONFIG
          The bbconfig applet will print the config file with which
          busybox was built.
 
          The bbconfig applet will print the config file with which
          busybox was built.
 
+config BUSYBOX_CONFIG_FEATURE_COMPRESS_BBCONFIG
+       bool "Compress bbconfig data"
+       default n
+       depends on BUSYBOX_CONFIG_BBCONFIG
+       help
+         Store bbconfig data in compressed form, uncompress them on-the-fly
+         before output.
+
+         If you have a really tiny busybox with few applets enabled (and
+         bunzip2 isn't one of them), the overhead of the decompressor might
+         be noticeable. Also, if you run executables directly from ROM
+         and have very little memory, this might not be a win. Otherwise,
+         you probably want this.
+
+config BUSYBOX_CONFIG_BEEP
+       bool "beep"
+       default n
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         The beep applets beeps in a given freq/Hz.
+
+config BUSYBOX_CONFIG_FEATURE_BEEP_FREQ
+       int "default frequency"
+       range 0 2147483647
+       default 4000
+       depends on BUSYBOX_CONFIG_BEEP
+       help
+         Frequency for default beep.
+
+config BUSYBOX_CONFIG_FEATURE_BEEP_LENGTH_MS
+       int "default length"
+       range 0 2147483647
+       default 30
+       depends on BUSYBOX_CONFIG_BEEP
+       help
+         Length in ms for default beep.
+
 config BUSYBOX_CONFIG_CHAT
        bool "chat"
        default n
 config BUSYBOX_CONFIG_CHAT
        bool "chat"
        default n
@@ -96,7 +283,6 @@ config BUSYBOX_CONFIG_CHRT
 config BUSYBOX_CONFIG_CROND
        bool "crond"
        default y
 config BUSYBOX_CONFIG_CROND
        bool "crond"
        default y
-       select BUSYBOX_CONFIG_FEATURE_SUID
        select BUSYBOX_CONFIG_FEATURE_SYSLOG
        help
          Crond is a background daemon that parses individual crontab
        select BUSYBOX_CONFIG_FEATURE_SYSLOG
        help
          Crond is a background daemon that parses individual crontab
@@ -115,11 +301,11 @@ config BUSYBOX_CONFIG_FEATURE_CROND_D
          -d sets loglevel to 0 (most verbose) and directs all output to stderr.
 
 config BUSYBOX_CONFIG_FEATURE_CROND_CALL_SENDMAIL
          -d sets loglevel to 0 (most verbose) and directs all output to stderr.
 
 config BUSYBOX_CONFIG_FEATURE_CROND_CALL_SENDMAIL
-       bool "Using /usr/sbin/sendmail?"
+       bool "Report command output via email (using sendmail)"
        default n
        depends on BUSYBOX_CONFIG_CROND
        help
        default n
        depends on BUSYBOX_CONFIG_CROND
        help
-         Support calling /usr/sbin/sendmail for send cmd outputs.
+         Command output will be sent to corresponding user via email.
 
 config BUSYBOX_CONFIG_FEATURE_CROND_DIR
        string "crond spool directory"
 
 config BUSYBOX_CONFIG_FEATURE_CROND_DIR
        string "crond spool directory"
@@ -131,7 +317,6 @@ config BUSYBOX_CONFIG_FEATURE_CROND_DIR
 config BUSYBOX_CONFIG_CRONTAB
        bool "crontab"
        default y
 config BUSYBOX_CONFIG_CRONTAB
        bool "crontab"
        default y
-       select BUSYBOX_CONFIG_FEATURE_SUID
        help
          Crontab manipulates the crontab for a particular user. Only
          the superuser may specify a different user and/or crontab directory.
        help
          Crontab manipulates the crontab for a particular user. Only
          the superuser may specify a different user and/or crontab directory.
@@ -156,6 +341,7 @@ config BUSYBOX_CONFIG_FEATURE_DC_LIBM
 config BUSYBOX_CONFIG_DEVFSD
        bool "devfsd (obsolete)"
        default n
 config BUSYBOX_CONFIG_DEVFSD
        bool "devfsd (obsolete)"
        default n
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
        select BUSYBOX_CONFIG_FEATURE_SYSLOG
        help
          This is deprecated and should NOT be used anymore.
        select BUSYBOX_CONFIG_FEATURE_SYSLOG
        help
          This is deprecated and should NOT be used anymore.
@@ -199,6 +385,7 @@ config BUSYBOX_CONFIG_DEVFSD_VERBOSE
 config BUSYBOX_CONFIG_FEATURE_DEVFS
        bool "Use devfs names for all devices (obsolete)"
        default n
 config BUSYBOX_CONFIG_FEATURE_DEVFS
        bool "Use devfs names for all devices (obsolete)"
        default n
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
          This is obsolete and should NOT be used anymore.
          Use linux >= 2.6 (optionally with hotplug) and mdev instead!
        help
          This is obsolete and should NOT be used anymore.
          Use linux >= 2.6 (optionally with hotplug) and mdev instead!
@@ -218,6 +405,7 @@ config BUSYBOX_CONFIG_DEVMEM
 config BUSYBOX_CONFIG_EJECT
        bool "eject"
        default n
 config BUSYBOX_CONFIG_EJECT
        bool "eject"
        default n
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
          Used to eject cdroms. (defaults to /dev/cdrom)
 
        help
          Used to eject cdroms. (defaults to /dev/cdrom)
 
@@ -232,6 +420,7 @@ config BUSYBOX_CONFIG_FEATURE_EJECT_SCSI
 config BUSYBOX_CONFIG_FBSPLASH
        bool "fbsplash"
        default n
 config BUSYBOX_CONFIG_FBSPLASH
        bool "fbsplash"
        default n
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
          Shows splash image and progress bar on framebuffer device.
          Can be used during boot phase of an embedded device. ~2kb.
        help
          Shows splash image and progress bar on framebuffer device.
          Can be used during boot phase of an embedded device. ~2kb.
@@ -250,9 +439,30 @@ config BUSYBOX_CONFIG_FBSPLASH
            "NN" (ASCII decimal number) - percentage to show on progress bar
            "exit" - well you guessed it
 
            "NN" (ASCII decimal number) - percentage to show on progress bar
            "exit" - well you guessed it
 
+config BUSYBOX_CONFIG_FLASHCP
+       bool "flashcp"
+       default n  # doesn't build on Ubuntu 8.04
+       help
+         The flashcp binary, inspired by mtd-utils as of git head 5eceb74f7.
+         This utility is used to copy images into a MTD device.
+
+config BUSYBOX_CONFIG_FLASH_LOCK
+       bool "flash_lock"
+       default n  # doesn't build on Ubuntu 8.04
+       help
+         The flash_lock binary from mtd-utils as of git head 5ec0c10d0. This
+         utility locks part or all of the flash device.
+
+config BUSYBOX_CONFIG_FLASH_UNLOCK
+       bool "flash_unlock"
+       default n  # doesn't build on Ubuntu 8.04
+       help
+         The flash_unlock binary from mtd-utils as of git head 5ec0c10d0. This
+         utility unlocks part or all of the flash device.
+
 config BUSYBOX_CONFIG_FLASH_ERASEALL
        bool "flash_eraseall"
 config BUSYBOX_CONFIG_FLASH_ERASEALL
        bool "flash_eraseall"
-       default n
+       default n  # doesn't build on Ubuntu 8.04
        help
          The flash_eraseall binary from mtd-utils as of git head c4c6a59eb.
          This utility is used to erase the whole MTD device.
        help
          The flash_eraseall binary from mtd-utils as of git head c4c6a59eb.
          This utility is used to erase the whole MTD device.
@@ -260,13 +470,14 @@ config BUSYBOX_CONFIG_FLASH_ERASEALL
 config BUSYBOX_CONFIG_IONICE
        bool "ionice"
        default n
 config BUSYBOX_CONFIG_IONICE
        bool "ionice"
        default n
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
          Set/set program io scheduling class and priority
          Requires kernel >= 2.6.13
 
 config BUSYBOX_CONFIG_INOTIFYD
        bool "inotifyd"
        help
          Set/set program io scheduling class and priority
          Requires kernel >= 2.6.13
 
 config BUSYBOX_CONFIG_INOTIFYD
        bool "inotifyd"
-       default n
+       default n  # doesn't build on Knoppix 5
        help
          Simple inotify daemon. Reports filesystem changes. Requires
          kernel >= 2.6.13
        help
          Simple inotify daemon. Reports filesystem changes. Requires
          kernel >= 2.6.13
@@ -274,14 +485,14 @@ config BUSYBOX_CONFIG_INOTIFYD
 config BUSYBOX_CONFIG_LAST
        bool "last"
        default n
 config BUSYBOX_CONFIG_LAST
        bool "last"
        default n
-       select BUSYBOX_CONFIG_FEATURE_WTMP
+       depends on BUSYBOX_CONFIG_FEATURE_WTMP
        help
          'last' displays a list of the last users that logged into the system.
 
 choice
        prompt "Choose last implementation"
        depends on BUSYBOX_CONFIG_LAST
        help
          'last' displays a list of the last users that logged into the system.
 
 choice
        prompt "Choose last implementation"
        depends on BUSYBOX_CONFIG_LAST
-       default BUSYBOX_CONFIG_FEATURE_LAST_SMALL
+       default BUSYBOX_CONFIG_FEATURE_LAST_FANCY
 
 config BUSYBOX_CONFIG_FEATURE_LAST_SMALL
        bool "small"
 
 config BUSYBOX_CONFIG_FEATURE_LAST_SMALL
        bool "small"
@@ -296,75 +507,10 @@ config BUSYBOX_CONFIG_FEATURE_LAST_FANCY
          logged into the system (mimics sysvinit last). +900 bytes.
 endchoice
 
          logged into the system (mimics sysvinit last). +900 bytes.
 endchoice
 
-config BUSYBOX_CONFIG_LESS
-       bool "less"
-       default y
-       help
-         'less' is a pager, meaning that it displays text files. It possesses
-         a wide array of features, and is an improvement over 'more'.
-
-config BUSYBOX_CONFIG_FEATURE_LESS_MAXLINES
-       int "Max number of input lines less will try to eat"
-       default 9999999
-       depends on BUSYBOX_CONFIG_LESS
-
-config BUSYBOX_CONFIG_FEATURE_LESS_BRACKETS
-       bool "Enable bracket searching"
-       default n
-       depends on BUSYBOX_CONFIG_LESS
-       help
-         This option adds the capability to search for matching left and right
-         brackets, facilitating programming.
-
-config BUSYBOX_CONFIG_FEATURE_LESS_FLAGS
-       bool "Enable extra flags"
-       default n
-       depends on BUSYBOX_CONFIG_LESS
-       help
-         The extra flags provided do the following:
-
-         The -M flag enables a more sophisticated status line.
-         The -m flag enables a simpler status line with a percentage.
-
-config BUSYBOX_CONFIG_FEATURE_LESS_MARKS
-       bool "Enable marks"
-       default n
-       depends on BUSYBOX_CONFIG_LESS
-       help
-         Marks enable positions in a file to be stored for easy reference.
-
-config BUSYBOX_CONFIG_FEATURE_LESS_REGEXP
-       bool "Enable regular expressions"
-       default n
-       depends on BUSYBOX_CONFIG_LESS
-       help
-         Enable regular expressions, allowing complex file searches.
-
-config BUSYBOX_CONFIG_FEATURE_LESS_WINCH
-       bool "Enable automatic resizing on window size changes"
-       default n
-       depends on BUSYBOX_CONFIG_LESS
-       help
-         Makes less track window size changes.
-
-config BUSYBOX_CONFIG_FEATURE_LESS_DASHCMD
-       bool "Enable flag changes ('-' command)"
-       default n
-       depends on BUSYBOX_CONFIG_LESS
-       help
-         This enables the ability to change command-line flags within
-         less itself ('-' keyboard command).
-
-config BUSYBOX_CONFIG_FEATURE_LESS_LINENUMS
-       bool "Enable dynamic switching of line numbers"
-       default n
-       depends on BUSYBOX_CONFIG_FEATURE_LESS_DASHCMD
-       help
-         Enable "-N" command.
-
 config BUSYBOX_CONFIG_HDPARM
        bool "hdparm"
        default n
 config BUSYBOX_CONFIG_HDPARM
        bool "hdparm"
        default n
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
          Get/Set hard drive parameters. Primarily intended for ATA
          drives. Adds about 13k (or around 30k if you enable the
        help
          Get/Set hard drive parameters. Primarily intended for ATA
          drives. Adds about 13k (or around 30k if you enable the
@@ -432,15 +578,15 @@ config BUSYBOX_CONFIG_MAKEDEVS
        help
          'makedevs' is a utility used to create a batch of devices with
          one command.
        help
          'makedevs' is a utility used to create a batch of devices with
          one command.
-         .
+
          There are two choices for command line behaviour, the interface
          as used by LEAF/Linux Router Project, or a device table file.
          There are two choices for command line behaviour, the interface
          as used by LEAF/Linux Router Project, or a device table file.
-         .
+
          'leaf' is traditionally what busybox follows, it allows multiple
          devices of a particluar type to be created per command.
          e.g. /dev/hda[0-9]
          Device properties are passed as command line arguments.
          'leaf' is traditionally what busybox follows, it allows multiple
          devices of a particluar type to be created per command.
          e.g. /dev/hda[0-9]
          Device properties are passed as command line arguments.
-         .
+
          'table' reads device properties from a file or stdin, allowing
          a batch of unrelated devices to be made with one command.
          User/group names are allowed as an alternative to uid/gid.
          'table' reads device properties from a file or stdin, allowing
          a batch of unrelated devices to be made with one command.
          User/group names are allowed as an alternative to uid/gid.
@@ -487,6 +633,7 @@ config BUSYBOX_CONFIG_MT
 config BUSYBOX_CONFIG_RAIDAUTORUN
        bool "raidautorun"
        default n
 config BUSYBOX_CONFIG_RAIDAUTORUN
        bool "raidautorun"
        default n
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
          raidautorun tells the kernel md driver to
          search and start RAID arrays.
        help
          raidautorun tells the kernel md driver to
          search and start RAID arrays.
@@ -495,6 +642,7 @@ config BUSYBOX_CONFIG_READAHEAD
        bool "readahead"
        default n
        depends on BUSYBOX_CONFIG_LFS
        bool "readahead"
        default n
        depends on BUSYBOX_CONFIG_LFS
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
          Preload the files listed on the command line into RAM cache so that
          subsequent reads on these files will not block on disk I/O.
        help
          Preload the files listed on the command line into RAM cache so that
          subsequent reads on these files will not block on disk I/O.
@@ -508,9 +656,22 @@ config BUSYBOX_CONFIG_READAHEAD
          As readahead(2) blocks until each file has been read, it is best to
          run this applet as a background job.
 
          As readahead(2) blocks until each file has been read, it is best to
          run this applet as a background job.
 
+config BUSYBOX_CONFIG_RFKILL
+       bool "rfkill"
+       default n  # doesn't build on Ubuntu 9.04
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
+       help
+         Enable/disable wireless devices.
+
+         rfkill list : list all wireless devices
+         rfkill list bluetooth : list all bluetooth devices
+         rfkill list 1 : list device corresponding to the given index
+         rfkill block|unblock wlan : block/unblock all wlan(wifi) devices
+
 config BUSYBOX_CONFIG_RUNLEVEL
        bool "runlevel"
        default n
 config BUSYBOX_CONFIG_RUNLEVEL
        bool "runlevel"
        default n
+       depends on BUSYBOX_CONFIG_FEATURE_UTMP
        help
          find the current and previous system runlevel.
 
        help
          find the current and previous system runlevel.
 
@@ -520,6 +681,7 @@ config BUSYBOX_CONFIG_RUNLEVEL
 config BUSYBOX_CONFIG_RX
        bool "rx"
        default n
 config BUSYBOX_CONFIG_RX
        bool "rx"
        default n
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
          Receive files using the Xmodem protocol.
 
        help
          Receive files using the Xmodem protocol.
 
@@ -538,7 +700,7 @@ config BUSYBOX_CONFIG_STRINGS
 
 config BUSYBOX_CONFIG_TASKSET
        bool "taskset"
 
 config BUSYBOX_CONFIG_TASKSET
        bool "taskset"
-       default n
+       default n  # doesn't build on some non-x86 targets (m68k)
        help
          Retrieve or set a processes's CPU affinity.
          This requires sched_{g,s}etaffinity support in your libc.
        help
          Retrieve or set a processes's CPU affinity.
          This requires sched_{g,s}etaffinity support in your libc.
@@ -576,9 +738,23 @@ config BUSYBOX_CONFIG_TTYSIZE
          error, but returns default 80x24.
          Usage in shell scripts: width=`ttysize w`.
 
          error, but returns default 80x24.
          Usage in shell scripts: width=`ttysize w`.
 
+config BUSYBOX_CONFIG_VOLNAME
+       bool "volname"
+       default n
+       help
+         Prints a CD-ROM volume name.
+
+config BUSYBOX_CONFIG_WALL
+       bool "wall"
+       default n
+       depends on BUSYBOX_CONFIG_FEATURE_UTMP
+       help
+         Write a message to all users that are logged in.
+
 config BUSYBOX_CONFIG_WATCHDOG
        bool "watchdog"
        default y
 config BUSYBOX_CONFIG_WATCHDOG
        bool "watchdog"
        default y
+       select BUSYBOX_CONFIG_PLATFORM_LINUX
        help
          The watchdog utility is used with hardware or software watchdog
          device drivers. It opens the specified watchdog device special file
        help
          The watchdog utility is used with hardware or software watchdog
          device drivers. It opens the specified watchdog device special file
This page took 0.03409 seconds and 4 git commands to generate.