diff options
author | Antonio Diaz Diaz <ant_diaz@teleline.es> | 2010-03-02 18:41:41 +0200 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org.ua> | 2010-03-02 18:44:25 +0200 |
commit | bffe1074aab0bd180b6b522f07f951f73ef59191 (patch) | |
tree | 20d10d7f86373eb6f8254d8c49a689b8d5bc3329 /src | |
parent | 9a3e8a6f4374901c386821a0e08184f369141df4 (diff) | |
download | tar-bffe1074aab0bd180b6b522f07f951f73ef59191.tar.gz |
Add Lzip support
* configure.ac: Add TAR_COMPR_PROGRAM(lzip)
* doc/tar.texi: Reflect lzip support.
* src/buffer.c (compress_type) <ct_lzip>: New constant.
(magic): Add magic for lzip.
* src/suffix.c (compression_suffixes): Add lz.
* src/tar.c: New option --lzip.
Diffstat (limited to 'src')
-rw-r--r-- | src/buffer.c | 2 | ||||
-rw-r--r-- | src/suffix.c | 1 | ||||
-rw-r--r-- | src/tar.c | 10 |
3 files changed, 13 insertions, 0 deletions
diff --git a/src/buffer.c b/src/buffer.c index 61310381..8147def1 100644 --- a/src/buffer.c +++ b/src/buffer.c @@ -201,6 +201,7 @@ enum compress_type { ct_compress, ct_gzip, ct_bzip2, + ct_lzip, ct_lzma, ct_lzop, ct_xz @@ -221,6 +222,7 @@ static struct zip_magic const magic[] = { { ct_compress, 2, "\037\235", COMPRESS_PROGRAM, "-Z" }, { ct_gzip, 2, "\037\213", GZIP_PROGRAM, "-z" }, { ct_bzip2, 3, "BZh", BZIP2_PROGRAM, "-j" }, + { ct_lzip, 4, "LZIP", LZIP_PROGRAM, "--lzip" }, { ct_lzma, 6, "\xFFLZMA", LZMA_PROGRAM, "--lzma" }, { ct_lzop, 4, "\211LZO", LZOP_PROGRAM, "--lzop" }, { ct_xz, 6, "\0xFD7zXZ", XZ_PROGRAM, "-J" }, diff --git a/src/suffix.c b/src/suffix.c index cd9c01a2..23868c91 100644 --- a/src/suffix.c +++ b/src/suffix.c @@ -38,6 +38,7 @@ static struct compression_suffix compression_suffixes[] = { { S(tbz, BZIP2) }, { S(tbz2, BZIP2) }, { S(tz2, BZIP2) }, + { S(lz, LZIP) }, { S(lzma, LZMA) }, { S(tlz, LZMA) }, { S(lzo, LZOP) }, @@ -281,6 +281,7 @@ enum INDEX_FILE_OPTION, KEEP_NEWER_FILES_OPTION, LEVEL_OPTION, + LZIP_OPTION, LZMA_OPTION, LZOP_OPTION, MODE_OPTION, @@ -624,6 +625,7 @@ static struct argp_option options[] = { {"ungzip", 0, 0, OPTION_ALIAS, NULL, GRID+1 }, {"compress", 'Z', 0, 0, NULL, GRID+1 }, {"uncompress", 0, 0, OPTION_ALIAS, NULL, GRID+1 }, + {"lzip", LZIP_OPTION, 0, 0, NULL, GRID+1 }, {"lzma", LZMA_OPTION, 0, 0, NULL, GRID+1 }, {"lzop", LZOP_OPTION, 0, 0, NULL, GRID+1 }, {"xz", 'J', 0, 0, NULL, GRID+1 }, @@ -1271,6 +1273,10 @@ tar_help_filter (int key, const char *text, void *input) s = xasprintf (_("filter the archive through %s"), COMPRESS_PROGRAM); break; + case LZIP_OPTION: + s = xasprintf (_("filter the archive through %s"), LZIP_PROGRAM); + break; + case LZMA_OPTION: s = xasprintf (_("filter the archive through %s"), LZMA_PROGRAM); break; @@ -1506,6 +1512,10 @@ parse_opt (int key, char *arg, struct argp_state *state) } break; + case LZIP_OPTION: + set_use_compress_program_option (LZIP_PROGRAM); + break; + case LZMA_OPTION: set_use_compress_program_option (LZMA_PROGRAM); break; |