cpio: fix a bug where we do not extract zero-sized hardlinks
[oweals/busybox.git] / archival / 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 "Archival Utilities"
7
8 config AR
9         bool "ar"
10         default n
11         help
12           ar is an archival utility program used to create, modify, and
13           extract contents from archives.  An archive is a single file holding
14           a collection of other files in a structure that makes it possible to
15           retrieve the original individual files (called archive members).
16           The original files' contents, mode (permissions), timestamp, owner,
17           and group are preserved in the archive, and can be restored on
18           extraction.
19
20           The stored filename is limited to 15 characters. (for more information
21           see long filename support).
22           ar has 60 bytes of overheads for every stored file.
23
24           This implementation of ar can extract archives, it cannot create or
25           modify them.
26           On an x86 system, the ar applet adds about 1K.
27
28           Unless you have a specific application which requires ar, you should
29           probably say N here.
30
31 config FEATURE_AR_LONG_FILENAMES
32         bool "Support for long filenames (not need for debs)"
33         default n
34         depends on AR
35         help
36           By default the ar format can only store the first 15 characters of the
37           filename, this option removes that limitation.
38           It supports the GNU ar long filename method which moves multiple long
39           filenames into a the data section of a new ar entry.
40
41 config BUNZIP2
42         bool "bunzip2"
43         default n
44         help
45           bunzip2 is a compression utility using the Burrows-Wheeler block
46           sorting text compression algorithm, and Huffman coding.  Compression
47           is generally considerably better than that achieved by more
48           conventional LZ77/LZ78-based compressors, and approaches the
49           performance of the PPM family of statistical compressors.
50
51           Unless you have a specific application which requires bunzip2, you
52           should probably say N here.
53
54 config BZIP2
55         bool "bzip2"
56         default n
57         help
58           bzip2 is a compression utility using the Burrows-Wheeler block
59           sorting text compression algorithm, and Huffman coding.  Compression
60           is generally considerably better than that achieved by more
61           conventional LZ77/LZ78-based compressors, and approaches the
62           performance of the PPM family of statistical compressors.
63
64           Unless you have a specific application which requires bzip2, you
65           should probably say N here.
66
67 config CPIO
68         bool "cpio"
69         default n
70         help
71           cpio is an archival utility program used to create, modify, and extract
72           contents from archives.
73           cpio has 110 bytes of overheads for every stored file.
74
75           This implementation of cpio can extract cpio archives created in the
76           "newc" or "crc" format, it cannot create or modify them.
77
78           Unless you have a specific application which requires cpio, you should
79           probably say N here.
80
81 config FEATURE_CPIO_O
82         bool "Support for archive creation"
83         default n
84         depends on CPIO
85         help
86           This implementation of cpio can create cpio archives in the "newc"
87           format only.
88
89 config DPKG
90         bool "dpkg"
91         default n
92         help
93           dpkg is a medium-level tool to install, build, remove and manage Debian packages.
94
95           This implementation of dpkg has a number of limitations, you should use the
96           official dpkg if possible.
97
98 config DPKG_DEB
99         bool "dpkg_deb"
100         default n
101         help
102           dpkg-deb packs, unpacks and provides information about Debian archives.
103
104           This implementation of dpkg-deb cannot pack archives.
105
106           Unless you have a specific application which requires dpkg-deb, you should
107           probably say N here.
108
109 config FEATURE_DPKG_DEB_EXTRACT_ONLY
110         bool "Extract only (-x)"
111         default n
112         depends on DPKG_DEB
113         help
114           This reduces dpkg-deb to the equivalent of "ar -p <deb> data.tar.gz | tar -zx".
115           However it saves space as none of the extra dpkg-deb, ar or tar options are
116           needed, they are linked to internally.
117
118 config GUNZIP
119         bool "gunzip"
120         default n
121         help
122           gunzip is used to decompress archives created by gzip.
123           You can use the `-t' option to test the integrity of
124           an archive, without decompressing it.
125
126 config FEATURE_GUNZIP_UNCOMPRESS
127         bool "Uncompress support"
128         default n
129         depends on GUNZIP
130         help
131           Enable if you want gunzip to have the ability to decompress
132           archives created by the program compress (not much
133           used anymore).
134
135 config GZIP
136         bool "gzip"
137         default n
138         help
139           gzip is used to compress files.
140           It's probably the most widely used UNIX compression program.
141
142 config RPM2CPIO
143         bool "rpm2cpio"
144         default n
145         help
146           Converts an RPM file into a CPIO archive.
147
148 config RPM
149         bool "rpm"
150         default n
151         help
152           Mini RPM applet - queries and extracts RPM packages.
153
154 config FEATURE_RPM_BZ2
155         bool "Enable handling of rpms with bzip2-compressed data inside"
156         default n
157         depends on RPM
158         help
159           Enable handling of rpms with bzip2-compressed data inside.
160
161 config TAR
162         bool "tar"
163         default n
164         help
165           tar is an archiving program. It's commonly used with gzip to
166           create compressed archives. It's probably the most widely used
167           UNIX archive program.
168
169 config FEATURE_TAR_CREATE
170         bool "Enable archive creation"
171         default y
172         depends on TAR
173         help
174           If you enable this option you'll be able to create
175           tar archives using the `-c' option.
176
177 config FEATURE_TAR_GZIP
178         bool "Enable -z option"
179         default y
180         depends on TAR
181         help
182           If you enable this option tar will be able to call gzip,
183           when creating or extracting tar gziped archives.
184
185 config FEATURE_TAR_BZIP2
186         bool "Enable -j option to handle .tar.bz2 files"
187         default n
188         depends on TAR
189         help
190           If you enable this option you'll be able to extract
191           archives compressed with bzip2.
192
193 config FEATURE_TAR_LZMA
194         bool "Enable -a option to handle .tar.lzma files"
195         default n
196         depends on TAR
197         help
198           If you enable this option you'll be able to extract
199           archives compressed with lzma.
200
201 config FEATURE_TAR_COMPRESS
202         bool "Enable -Z option"
203         default n
204         depends on TAR
205         help
206           If you enable this option tar will be able to call uncompress,
207           when extracting .tar.Z archives.
208
209 config FEATURE_TAR_AUTODETECT
210         bool "Let tar autodetect gz/bz2 compresses tarballs"
211         default n
212         depends on FEATURE_TAR_GZIP || FEATURE_TAR_BZIP2
213         help
214           With this option tar can automatically detect gzip/bzip2 compressed
215           tarballs. Currently it works only on seekable streams.
216
217 config FEATURE_TAR_FROM
218         bool "Enable -X (exclude from) and -T (include from) options)"
219         default n
220         depends on TAR
221         help
222           If you enable this option you'll be able to specify
223           a list of files to include or exclude from an archive.
224
225 config FEATURE_TAR_OLDGNU_COMPATIBILITY
226         bool "Support for old tar header format"
227         default N
228         depends on TAR
229         help
230           This option is required to unpack archives created in
231           the old GNU format; help to kill this old format by
232           repacking your ancient archives with the new format.
233
234 config FEATURE_TAR_OLDSUN_COMPATIBILITY
235         bool "Enable untarring of tarballs with checksums produced by buggy Sun tar"
236         default N
237         depends on TAR
238         help
239           This option is required to unpack archives created by some old
240           version of Sun's tar (it was calculating checksum using signed arithmetic).
241           It is said to be fixed in newer Sun tar, but "old" tarballs still exist.
242
243 config FEATURE_TAR_GNU_EXTENSIONS
244         bool "Support for GNU tar extensions (long filenames)"
245         default y
246         depends on TAR
247         help
248           With this option busybox supports GNU long filenames and
249           linknames.
250
251 config FEATURE_TAR_LONG_OPTIONS
252         bool "Enable long options"
253         default n
254         depends on TAR && GETOPT_LONG
255         help
256           Enable use of long options, increases size by about 400 Bytes
257
258 config FEATURE_TAR_UNAME_GNAME
259         bool "Enable use of user and group names"
260         default n
261         depends on TAR
262         help
263           Enables use of user and group names in tar. This affects contents
264           listings (-t) and preserving permissions when unpacking (-p).
265           +200 bytes.
266
267 config UNCOMPRESS
268         bool "uncompress"
269         default n
270         help
271           uncompress is used to decompress archives created by compress.
272           Not much used anymore, replaced by gzip/gunzip.
273
274 config UNLZMA
275         bool "unlzma"
276         default n
277         help
278           unlzma is a compression utility using the Lempel-Ziv-Markov chain
279           compression algorithm, and range coding.  Compression
280           is generally considerably better than that achieved by the bzip2
281           compressors.
282
283           The BusyBox unlzma applet is limited to de-compression only.
284           On an x86 system, this applet adds about 4K.
285
286           Unless you have a specific application which requires unlzma, you
287           should probably say N here.
288
289 config FEATURE_LZMA_FAST
290         bool "Optimze unlzma for speed"
291         default n
292         depends on UNLZMA
293         help
294           This option reduces decompression time by about 33% at the cost of
295           a 2K bigger binary.
296
297 config UNZIP
298         bool "unzip"
299         default n
300         help
301           unzip will list or extract files from a ZIP archive,
302           commonly found on DOS/WIN systems. The default behavior
303           (with no options) is to extract the archive into the
304           current directory. Use the `-d' option to extract to a
305           directory of your choice.
306
307 comment "Common options for cpio and tar"
308         depends on CPIO || TAR
309
310 comment "Common options for dpkg and dpkg_deb"
311         depends on DPKG || DPKG_DEB
312
313 config FEATURE_DEB_TAR_GZ
314         bool "gzip debian packages (normal)"
315         default y if DPKG || DPKG_DEB
316         depends on DPKG || DPKG_DEB
317         help
318           This is the default compression method inside the debian ar file.
319
320           If you want compatibility with standard .deb's you should say yes here.
321
322 config FEATURE_DEB_TAR_BZ2
323         bool "bzip2 debian packages"
324         default n
325         depends on DPKG || DPKG_DEB
326         help
327           This allows dpkg and dpkg-deb to extract deb's that are compressed internally
328           with bzip2 instead of gzip.
329
330           You only want this if you are creating your own custom debian packages that
331           use an internal control.tar.bz2 or data.tar.bz2.
332
333 config FEATURE_DEB_TAR_LZMA
334         bool "lzma debian packages"
335         default n
336         depends on DPKG || DPKG_DEB
337         help
338           This allows dpkg and dpkg-deb to extract deb's that are compressed
339           internally with lzma instead of gzip.
340
341           You only want this if you are creating your own custom debian
342           packages that use an internal control.tar.lzma or data.tar.lzma.
343
344 endmenu