# DO NOT EDIT. This file is generated from Config.src
#
# For a description of the syntax of this configuration file,
# see docs/Kconfig-language.txt.
#

menu "Archival Utilities"

config BUSYBOX_CONFIG_FEATURE_SEAMLESS_XZ
	bool "Make tar, rpm, modprobe etc understand .xz data"
	default BUSYBOX_DEFAULT_FEATURE_SEAMLESS_XZ

config BUSYBOX_CONFIG_FEATURE_SEAMLESS_LZMA
	bool "Make tar, rpm, modprobe etc understand .lzma data"
	default BUSYBOX_DEFAULT_FEATURE_SEAMLESS_LZMA

config BUSYBOX_CONFIG_FEATURE_SEAMLESS_BZ2
	bool "Make tar, rpm, modprobe etc understand .bz2 data"
	default BUSYBOX_DEFAULT_FEATURE_SEAMLESS_BZ2

config BUSYBOX_CONFIG_FEATURE_SEAMLESS_GZ
	bool "Make tar, rpm, modprobe etc understand .gz data"
	default BUSYBOX_DEFAULT_FEATURE_SEAMLESS_GZ

config BUSYBOX_CONFIG_FEATURE_SEAMLESS_Z
	bool "Make tar, rpm, modprobe etc understand .Z data"
	default BUSYBOX_DEFAULT_FEATURE_SEAMLESS_Z  # it is ancient

config BUSYBOX_CONFIG_AR
	bool "ar (9.5 kb)"
	default BUSYBOX_DEFAULT_AR  # needs to be improved to be able to replace binutils ar
	help
	ar is an archival utility program used to create, modify, and
	extract contents from archives. In practice, it is used exclusively
	for object module archives used by compilers.

	Unless you have a specific application which requires ar, you should
	probably say N here: most compilers come with their own ar utility.

config BUSYBOX_CONFIG_FEATURE_AR_LONG_FILENAMES
	bool "Support long filenames (not needed for debs)"
	default BUSYBOX_DEFAULT_FEATURE_AR_LONG_FILENAMES
	depends on BUSYBOX_CONFIG_AR
	help
	By default the ar format can only store the first 15 characters
	of the filename, this option removes that limitation.
	It supports the GNU ar long filename method which moves multiple long
	filenames into a the data section of a new ar entry.

config BUSYBOX_CONFIG_FEATURE_AR_CREATE
	bool "Support archive creation"
	default BUSYBOX_DEFAULT_FEATURE_AR_CREATE
	depends on BUSYBOX_CONFIG_AR
	help
	This enables archive creation (-c and -r) with busybox ar.
config BUSYBOX_CONFIG_UNCOMPRESS
	bool "uncompress (7.1 kb)"
	default BUSYBOX_DEFAULT_UNCOMPRESS  # ancient
	help
	uncompress is used to decompress archives created by compress.
	Not much used anymore, replaced by gzip/gunzip.
config BUSYBOX_CONFIG_GUNZIP
	bool "gunzip (11 kb)"
	default BUSYBOX_DEFAULT_GUNZIP
	select BUSYBOX_CONFIG_FEATURE_GZIP_DECOMPRESS
	help
	gunzip is used to decompress archives created by gzip.
	You can use the '-t' option to test the integrity of
	an archive, without decompressing it.

config BUSYBOX_CONFIG_ZCAT
	bool "zcat (24 kb)"
	default BUSYBOX_DEFAULT_ZCAT
	select BUSYBOX_CONFIG_FEATURE_GZIP_DECOMPRESS
	help
	Alias to "gunzip -c".

config BUSYBOX_CONFIG_FEATURE_GUNZIP_LONG_OPTIONS
	bool "Enable long options"
	default BUSYBOX_DEFAULT_FEATURE_GUNZIP_LONG_OPTIONS
	depends on (BUSYBOX_CONFIG_GUNZIP || BUSYBOX_CONFIG_ZCAT) && BUSYBOX_CONFIG_LONG_OPTS
config BUSYBOX_CONFIG_BUNZIP2
	bool "bunzip2 (8.7 kb)"
	default BUSYBOX_DEFAULT_BUNZIP2
	select BUSYBOX_CONFIG_FEATURE_BZIP2_DECOMPRESS
	help
	bunzip2 is a compression utility using the Burrows-Wheeler block
	sorting text compression algorithm, and Huffman coding. Compression
	is generally considerably better than that achieved by more
	conventional LZ77/LZ78-based compressors, and approaches the
	performance of the PPM family of statistical compressors.

	Unless you have a specific application which requires bunzip2, you
	should probably say N here.

config BUSYBOX_CONFIG_BZCAT
	bool "bzcat (8.7 kb)"
	default BUSYBOX_DEFAULT_BZCAT
	select BUSYBOX_CONFIG_FEATURE_BZIP2_DECOMPRESS
	help
	Alias to "bunzip2 -c".
config BUSYBOX_CONFIG_UNLZMA
	bool "unlzma (7.5 kb)"
	default BUSYBOX_DEFAULT_UNLZMA
	help
	unlzma is a compression utility using the Lempel-Ziv-Markov chain
	compression algorithm, and range coding. Compression
	is generally considerably better than that achieved by the bzip2
	compressors.

config BUSYBOX_CONFIG_LZCAT
	bool "lzcat (7.5 kb)"
	default BUSYBOX_DEFAULT_LZCAT
	help
	Alias to "unlzma -c".

config BUSYBOX_CONFIG_LZMA
	bool "lzma -d"
	default BUSYBOX_DEFAULT_LZMA
	help
	Enable this option if you want commands like "lzma -d" to work.
	IOW: you'll get lzma applet, but it will always require -d option.
config BUSYBOX_CONFIG_UNXZ
	bool "unxz (13 kb)"
	default BUSYBOX_DEFAULT_UNXZ
	help
	unxz is a unlzma successor.

config BUSYBOX_CONFIG_XZCAT
	bool "xzcat (13 kb)"
	default BUSYBOX_DEFAULT_XZCAT
	help
	Alias to "unxz -c".

config BUSYBOX_CONFIG_XZ
	bool "xz -d"
	default BUSYBOX_DEFAULT_XZ
	help
	Enable this option if you want commands like "xz -d" to work.
	IOW: you'll get xz applet, but it will always require -d option.
config BUSYBOX_CONFIG_BZIP2
	bool "bzip2 (16 kb)"
	default BUSYBOX_DEFAULT_BZIP2
	help
	bzip2 is a compression utility using the Burrows-Wheeler block
	sorting text compression algorithm, and Huffman coding. Compression
	is generally considerably better than that achieved by more
	conventional LZ77/LZ78-based compressors, and approaches the
	performance of the PPM family of statistical compressors.

	Unless you have a specific application which requires bzip2, you
	should probably say N here.

config BUSYBOX_CONFIG_BZIP2_SMALL
	int "Trade bytes for speed (0:fast, 9:small)"
	default BUSYBOX_DEFAULT_BZIP2_SMALL  # all "fast or small" options default to small
	range 0 9
	depends on BUSYBOX_CONFIG_BZIP2
	help
	Trade code size versus speed.
	Approximate values with gcc-6.3.0 "bzip -9" compressing
	linux-4.15.tar were:
	value         time (sec)  code size (386)
	9 (smallest)       70.11             7687
	8                  67.93             8091
	7                  67.88             8405
	6                  67.78             8624
	5                  67.05             9427
	4-0 (fastest)      64.14            12083

config BUSYBOX_CONFIG_FEATURE_BZIP2_DECOMPRESS
	bool "Enable decompression"
	default BUSYBOX_DEFAULT_FEATURE_BZIP2_DECOMPRESS
	depends on BUSYBOX_CONFIG_BZIP2 || BUSYBOX_CONFIG_BUNZIP2 || BUSYBOX_CONFIG_BZCAT
	help
	Enable -d (--decompress) and -t (--test) options for bzip2.
	This will be automatically selected if bunzip2 or bzcat is
	enabled.
config BUSYBOX_CONFIG_CPIO
	bool "cpio (15 kb)"
	default BUSYBOX_DEFAULT_CPIO
	help
	cpio is an archival utility program used to create, modify, and
	extract contents from archives.
	cpio has 110 bytes of overheads for every stored file.

	This implementation of cpio can extract cpio archives created in the
	"newc" or "crc" format.

	Unless you have a specific application which requires cpio, you
	should probably say N here.

config BUSYBOX_CONFIG_FEATURE_CPIO_O
	bool "Support archive creation"
	default BUSYBOX_DEFAULT_FEATURE_CPIO_O
	depends on BUSYBOX_CONFIG_CPIO
	help
	This implementation of cpio can create cpio archives in the "newc"
	format only.

config BUSYBOX_CONFIG_FEATURE_CPIO_P
	bool "Support passthrough mode"
	default BUSYBOX_DEFAULT_FEATURE_CPIO_P
	depends on BUSYBOX_CONFIG_FEATURE_CPIO_O
	help
	Passthrough mode. Rarely used.

config BUSYBOX_CONFIG_FEATURE_CPIO_IGNORE_DEVNO
	bool "Support --ignore-devno like GNU cpio"
	default BUSYBOX_DEFAULT_FEATURE_CPIO_IGNORE_DEVNO
	depends on BUSYBOX_CONFIG_FEATURE_CPIO_O && BUSYBOX_CONFIG_LONG_OPTS
	help
	Optionally ignore device numbers when creating archives.

config BUSYBOX_CONFIG_FEATURE_CPIO_RENUMBER_INODES
	bool "Support --renumber-inodes like GNU cpio"
	default BUSYBOX_DEFAULT_FEATURE_CPIO_RENUMBER_INODES
	depends on BUSYBOX_CONFIG_FEATURE_CPIO_O && BUSYBOX_CONFIG_LONG_OPTS
	help
	Optionally renumber inodes when creating archives.
config BUSYBOX_CONFIG_DPKG
	bool "dpkg (43 kb)"
	default BUSYBOX_DEFAULT_DPKG
	select BUSYBOX_CONFIG_FEATURE_SEAMLESS_GZ
	help
	dpkg is a medium-level tool to install, build, remove and manage
	Debian packages.

	This implementation of dpkg has a number of limitations,
	you should use the official dpkg if possible.
config BUSYBOX_CONFIG_DPKG_DEB
	bool "dpkg-deb (30 kb)"
	default BUSYBOX_DEFAULT_DPKG_DEB
	select BUSYBOX_CONFIG_FEATURE_SEAMLESS_GZ
	help
	dpkg-deb unpacks and provides information about Debian archives.

	This implementation of dpkg-deb cannot pack archives.

	Unless you have a specific application which requires dpkg-deb,
	say N here.
config BUSYBOX_CONFIG_GZIP
	bool "gzip (17 kb)"
	default BUSYBOX_DEFAULT_GZIP
	help
	gzip is used to compress files.
	It's probably the most widely used UNIX compression program.

config BUSYBOX_CONFIG_FEATURE_GZIP_LONG_OPTIONS
	bool "Enable long options"
	default BUSYBOX_DEFAULT_FEATURE_GZIP_LONG_OPTIONS
	depends on BUSYBOX_CONFIG_GZIP && BUSYBOX_CONFIG_LONG_OPTS

config BUSYBOX_CONFIG_GZIP_FAST
	int "Trade memory for speed (0:small,slow - 2:fast,big)"
	default BUSYBOX_DEFAULT_GZIP_FAST
	range 0 2
	depends on BUSYBOX_CONFIG_GZIP
	help
	Enable big memory options for gzip.
	0: small buffers, small hash-tables
	1: larger buffers, larger hash-tables
	2: larger buffers, largest hash-tables
	Larger models may give slightly better compression

config BUSYBOX_CONFIG_FEATURE_GZIP_LEVELS
	bool "Enable compression levels"
	default BUSYBOX_DEFAULT_FEATURE_GZIP_LEVELS
	depends on BUSYBOX_CONFIG_GZIP
	help
	Enable support for compression levels 4-9. The default level
	is 6. If levels 1-3 are specified, 4 is used.
	If this option is not selected, -N options are ignored and -6
	is used.

config BUSYBOX_CONFIG_FEATURE_GZIP_DECOMPRESS
	bool "Enable decompression"
	default BUSYBOX_DEFAULT_FEATURE_GZIP_DECOMPRESS
	depends on BUSYBOX_CONFIG_GZIP || BUSYBOX_CONFIG_GUNZIP || BUSYBOX_CONFIG_ZCAT
	help
	Enable -d (--decompress) and -t (--test) options for gzip.
	This will be automatically selected if gunzip or zcat is
	enabled.
config BUSYBOX_CONFIG_LZOP
	bool "lzop (12 kb)"
	default BUSYBOX_DEFAULT_LZOP
	help
	Lzop compression/decompresion.

config BUSYBOX_CONFIG_UNLZOP
	bool "unlzop (13 kb)"
	default BUSYBOX_DEFAULT_UNLZOP  # INCOMPAT: upstream lzop does not provide such tool
	help
	Lzop decompresion.

config BUSYBOX_CONFIG_LZOPCAT
	bool "lzopcat (13 kb)"
	default BUSYBOX_DEFAULT_LZOPCAT  # INCOMPAT: upstream lzop does not provide such tool
	help
	Alias to "lzop -dc".

config BUSYBOX_CONFIG_LZOP_COMPR_HIGH
	bool "lzop compression levels 7,8,9 (not very useful)"
	default BUSYBOX_DEFAULT_LZOP_COMPR_HIGH
	depends on BUSYBOX_CONFIG_LZOP || BUSYBOX_CONFIG_UNLZOP || BUSYBOX_CONFIG_LZOPCAT
	help
	High levels (7,8,9) of lzop compression. These levels
	are actually slower than gzip at equivalent compression ratios
	and take up 3.2K of code.
config BUSYBOX_CONFIG_RPM
	bool "rpm (32 kb)"
	default BUSYBOX_DEFAULT_RPM
	help
	Mini RPM applet - queries and extracts RPM packages.
config BUSYBOX_CONFIG_RPM2CPIO
	bool "rpm2cpio (21 kb)"
	default BUSYBOX_DEFAULT_RPM2CPIO
	help
	Converts a RPM file into a CPIO archive.
config BUSYBOX_CONFIG_TAR
	bool "tar (39 kb)"
	default BUSYBOX_DEFAULT_TAR
	help
	tar is an archiving program. It's commonly used with gzip to
	create compressed archives. It's probably the most widely used
	UNIX archive program.

config BUSYBOX_CONFIG_FEATURE_TAR_LONG_OPTIONS
	bool "Enable long options"
	default BUSYBOX_DEFAULT_FEATURE_TAR_LONG_OPTIONS
	depends on BUSYBOX_CONFIG_TAR && BUSYBOX_CONFIG_LONG_OPTS

config BUSYBOX_CONFIG_FEATURE_TAR_CREATE
	bool "Enable -c (archive creation)"
	default BUSYBOX_DEFAULT_FEATURE_TAR_CREATE
	depends on BUSYBOX_CONFIG_TAR

config BUSYBOX_CONFIG_FEATURE_TAR_AUTODETECT
	bool "Autodetect compressed tarballs"
	default BUSYBOX_DEFAULT_FEATURE_TAR_AUTODETECT
	depends on BUSYBOX_CONFIG_TAR && (BUSYBOX_CONFIG_FEATURE_SEAMLESS_Z || BUSYBOX_CONFIG_FEATURE_SEAMLESS_GZ || BUSYBOX_CONFIG_FEATURE_SEAMLESS_BZ2 || BUSYBOX_CONFIG_FEATURE_SEAMLESS_LZMA || BUSYBOX_CONFIG_FEATURE_SEAMLESS_XZ)
	help
	With this option tar can automatically detect compressed
	tarballs. Currently it works only on files (not pipes etc).

config BUSYBOX_CONFIG_FEATURE_TAR_FROM
	bool "Enable -X (exclude from) and -T (include from) options"
	default BUSYBOX_DEFAULT_FEATURE_TAR_FROM
	depends on BUSYBOX_CONFIG_TAR
	help
	If you enable this option you'll be able to specify
	a list of files to include or exclude from an archive.

config BUSYBOX_CONFIG_FEATURE_TAR_OLDGNU_COMPATIBILITY
	bool "Support old tar header format"
	default BUSYBOX_DEFAULT_FEATURE_TAR_OLDGNU_COMPATIBILITY
	depends on BUSYBOX_CONFIG_TAR || BUSYBOX_CONFIG_DPKG
	help
	This option is required to unpack archives created in
	the old GNU format; help to kill this old format by
	repacking your ancient archives with the new format.

config BUSYBOX_CONFIG_FEATURE_TAR_OLDSUN_COMPATIBILITY
	bool "Enable untarring of tarballs with checksums produced by buggy Sun tar"
	default BUSYBOX_DEFAULT_FEATURE_TAR_OLDSUN_COMPATIBILITY
	depends on BUSYBOX_CONFIG_TAR || BUSYBOX_CONFIG_DPKG
	help
	This option is required to unpack archives created by some old
	version of Sun's tar (it was calculating checksum using signed
	arithmetic). It is said to be fixed in newer Sun tar, but "old"
	tarballs still exist.

config BUSYBOX_CONFIG_FEATURE_TAR_GNU_EXTENSIONS
	bool "Support GNU tar extensions (long filenames)"
	default BUSYBOX_DEFAULT_FEATURE_TAR_GNU_EXTENSIONS
	depends on BUSYBOX_CONFIG_TAR || BUSYBOX_CONFIG_DPKG

config BUSYBOX_CONFIG_FEATURE_TAR_TO_COMMAND
	bool "Support writing to an external program (--to-command)"
	default BUSYBOX_DEFAULT_FEATURE_TAR_TO_COMMAND
	depends on BUSYBOX_CONFIG_TAR && BUSYBOX_CONFIG_FEATURE_TAR_LONG_OPTIONS
	help
	If you enable this option you'll be able to instruct tar to send
	the contents of each extracted file to the standard input of an
	external program.

config BUSYBOX_CONFIG_FEATURE_TAR_UNAME_GNAME
	bool "Enable use of user and group names"
	default BUSYBOX_DEFAULT_FEATURE_TAR_UNAME_GNAME
	depends on BUSYBOX_CONFIG_TAR
	help
	Enable use of user and group names in tar. This affects contents
	listings (-t) and preserving permissions when unpacking (-p).
	+200 bytes.

config BUSYBOX_CONFIG_FEATURE_TAR_NOPRESERVE_TIME
	bool "Enable -m (do not preserve time) GNU option"
	default BUSYBOX_DEFAULT_FEATURE_TAR_NOPRESERVE_TIME
	depends on BUSYBOX_CONFIG_TAR

config BUSYBOX_CONFIG_FEATURE_TAR_SELINUX
	bool "Support extracting SELinux labels"
	default BUSYBOX_DEFAULT_FEATURE_TAR_SELINUX
	depends on BUSYBOX_CONFIG_TAR && BUSYBOX_CONFIG_SELINUX
	help
	With this option busybox supports restoring SELinux labels
	when extracting files from tar archives.
config BUSYBOX_CONFIG_UNZIP
	bool "unzip (26 kb)"
	default BUSYBOX_DEFAULT_UNZIP
	help
	unzip will list or extract files from a ZIP archive,
	commonly found on DOS/WIN systems. The default behavior
	(with no options) is to extract the archive into the
	current directory.

config BUSYBOX_CONFIG_FEATURE_UNZIP_CDF
	bool "Read and use Central Directory data"
	default BUSYBOX_DEFAULT_FEATURE_UNZIP_CDF
	depends on BUSYBOX_CONFIG_UNZIP
	help
	If you know that you only need to deal with simple
	ZIP files without deleted/updated files, SFX archives etc,
	you can reduce code size by unselecting this option.
	To support less trivial ZIPs, say Y.

config BUSYBOX_CONFIG_FEATURE_UNZIP_BZIP2
	bool "Support compression method 12 (bzip2)"
	default BUSYBOX_DEFAULT_FEATURE_UNZIP_BZIP2
	depends on BUSYBOX_CONFIG_FEATURE_UNZIP_CDF && BUSYBOX_CONFIG_DESKTOP

config BUSYBOX_CONFIG_FEATURE_UNZIP_LZMA
	bool "Support compression method 14 (lzma)"
	default BUSYBOX_DEFAULT_FEATURE_UNZIP_LZMA
	depends on BUSYBOX_CONFIG_FEATURE_UNZIP_CDF && BUSYBOX_CONFIG_DESKTOP

config BUSYBOX_CONFIG_FEATURE_UNZIP_XZ
	bool "Support compression method 95 (xz)"
	default BUSYBOX_DEFAULT_FEATURE_UNZIP_XZ
	depends on BUSYBOX_CONFIG_FEATURE_UNZIP_CDF && BUSYBOX_CONFIG_DESKTOP

config BUSYBOX_CONFIG_FEATURE_LZMA_FAST
	bool "Optimize lzma for speed"
	default BUSYBOX_DEFAULT_FEATURE_LZMA_FAST
	depends on BUSYBOX_CONFIG_UNLZMA || BUSYBOX_CONFIG_LZCAT || BUSYBOX_CONFIG_LZMA || BUSYBOX_CONFIG_FEATURE_SEAMLESS_LZMA
	help
	This option reduces decompression time by about 25% at the cost of
	a 1K bigger binary.

endmenu
