Skip to content

Commit

Permalink
busybox, UNPACK_TARBALL:
Browse files Browse the repository at this point in the history
 * add support for [http://www.nongnu.org/lzip/lzip.html lzip]


git-svn-id: http://svn.freetz.org/trunk@14542 f5190166-0702-4917-9039-51ec32eddaf5
  • Loading branch information
er13 committed Nov 11, 2017
1 parent bad4b8d commit 6b8fa62
Show file tree
Hide file tree
Showing 8 changed files with 2,934 additions and 10 deletions.
17 changes: 9 additions & 8 deletions include/make/020-helper-functions.mk
Original file line number Diff line number Diff line change
Expand Up @@ -108,14 +108,15 @@ endef
# $4: (optional) number of leading path components to strip
# $5: (optional) include filter
define UNPACK_TARBALL__INT
$(if $(filter .gz .tgz .taz,$(3)), $(TOOLS_DIR)/gunzip -c $(1)) \
$(if $(filter .bzip2 .bz2 .bz .tbz2 .tbz,$(3)), $(TOOLS_DIR)/bunzip2 -c $(1)) \
$(if $(filter .xz .txz,$(3)), $(TOOLS_DIR)/unxz -c $(1)) \
$(if $(filter .lzma .tlzma,$(3)), $(TOOLS_DIR)/unlzma -c $(1)) \
$(if $(filter .Z .taZ,$(3)), $(TOOLS_DIR)/uncompress -c $(1)) \
$(if $(filter .tar,$(3)), cat $(1)) \
$(if $(filter .zip,$(3)), $(TOOLS_DIR)/unzip $(QUIETSHORT) $(1) -d $(2) $(if $(4), -J $(4)) $(5)) \
$(if $(filter .gz .tgz .taz .bzip2 .bz2 .bz .tbz2 .tbz .xz .txz .lzma .tlzma .Z .taZ .tar,$(3)),| $(TAR) -x $(VERBOSE) -C $(2) $(if $(4),--transform='s|^./\+||' --strip-components=$(4)) $(5))
$(if $(filter .gz .tgz .taz,$(3)), $(TOOLS_DIR)/gunzip -c $(1)) \
$(if $(filter .bzip2 .bz2 .bz .tbz2 .tbz,$(3)), $(TOOLS_DIR)/bunzip2 -c $(1)) \
$(if $(filter .xz .txz,$(3)), $(TOOLS_DIR)/unxz -c $(1)) \
$(if $(filter .lz .tlz,$(3)), $(TOOLS_DIR)/lunzip -c $(1)) \
$(if $(filter .lzma .tlzma,$(3)), $(TOOLS_DIR)/unlzma -c $(1)) \
$(if $(filter .Z .taZ,$(3)), $(TOOLS_DIR)/uncompress -c $(1)) \
$(if $(filter .tar,$(3)), cat $(1)) \
$(if $(filter .zip,$(3)), $(TOOLS_DIR)/unzip $(QUIETSHORT) $(1) -d $(2) $(if $(4), -J $(4)) $(5)) \
$(if $(filter .gz .tgz .taz .bzip2 .bz2 .bz .tbz2 .tbz .xz .txz .lz .tlz .lzma .tlzma .Z .taZ .tar,$(3)),| $(TAR) -x $(VERBOSE) -C $(2) $(if $(4),--transform='s|^./\+||' --strip-components=$(4)) $(5))
endef

# $1: path to the file to be unpacked
Expand Down
3 changes: 3 additions & 0 deletions make/busybox/Config.in
Original file line number Diff line number Diff line change
Expand Up @@ -420,6 +420,9 @@ config FREETZ_BUSYBOX__PACKER
select FREETZ_BUSYBOX_UNZIP
select FREETZ_BUSYBOX_UUENCODE
select FREETZ_BUSYBOX_XZ if !FREETZ_PACKAGE_XZ
#
select FREETZ_BUSYBOX_FEATURE_SEAMLESS_LZ if FREETZ_BUSYBOX_LZIP
select FREETZ_BUSYBOX_LUNZIP if FREETZ_BUSYBOX_LZIP
help
Selects base64, b(un)zip2, unlzma, unzip, unxz,
uuencode and some tar features.
Expand Down
22 changes: 21 additions & 1 deletion make/busybox/Config.in.busybox
Original file line number Diff line number Diff line change
Expand Up @@ -1149,6 +1149,10 @@ config FREETZ_BUSYBOX_FEATURE_SEAMLESS_GZ
bool "Make tar, rpm, modprobe etc understand .gz data"
default n

config FREETZ_BUSYBOX_FEATURE_SEAMLESS_LZ
bool "Make tar, rpm, modprobe etc understand .lz data"
default n

config FREETZ_BUSYBOX_FEATURE_SEAMLESS_Z
bool "Make tar, rpm, modprobe etc understand .Z data"
default n # it is ancient
Expand Down Expand Up @@ -1228,6 +1232,13 @@ config FREETZ_BUSYBOX_BZCAT
select FREETZ_BUSYBOX_FEATURE_BZIP2_DECOMPRESS
help
Alias to "bunzip2 -c".
config FREETZ_BUSYBOX_LUNZIP
bool "lunzip"
default n
help
lunzip is used to decompress archives created by lzip.
You can use the '-t' option to test the integrity of an archive,
without decompressing it.
config FREETZ_BUSYBOX_UNLZMA
bool "unlzma"
default n
Expand Down Expand Up @@ -1397,6 +1408,15 @@ config FREETZ_BUSYBOX_FEATURE_GZIP_DECOMPRESS
Enable -d (--decompress) and -t (--test) options for gzip.
This will be automatically selected if gunzip or zcat is
enabled.
config FREETZ_BUSYBOX_LZIP
bool "lzip"
default n
help
lzip is a lossless data compressor with a user interface similar to
the one of gzip or bzip2. lzip can compress about as fast as gzip or
compress most files more than bzip2 (depending on compression level).
Decompression speed is intermediate between gzip and bzip2. lzip is
better than gzip and bzip2 from a data recovery perspective.
config FREETZ_BUSYBOX_LZOP
bool "lzop"
default n
Expand Down Expand Up @@ -1454,7 +1474,7 @@ config FREETZ_BUSYBOX_FEATURE_TAR_CREATE
config FREETZ_BUSYBOX_FEATURE_TAR_AUTODETECT
bool "Autodetect compressed tarballs"
default n
depends on FREETZ_BUSYBOX_TAR && (FREETZ_BUSYBOX_FEATURE_SEAMLESS_Z || FREETZ_BUSYBOX_FEATURE_SEAMLESS_GZ || FREETZ_BUSYBOX_FEATURE_SEAMLESS_BZ2 || FREETZ_BUSYBOX_FEATURE_SEAMLESS_LZMA || FREETZ_BUSYBOX_FEATURE_SEAMLESS_XZ)
depends on FREETZ_BUSYBOX_TAR && (FREETZ_BUSYBOX_FEATURE_SEAMLESS_Z || FREETZ_BUSYBOX_FEATURE_SEAMLESS_GZ || FREETZ_BUSYBOX_FEATURE_SEAMLESS_BZ2 || FREETZ_BUSYBOX_FEATURE_SEAMLESS_LZ || FREETZ_BUSYBOX_FEATURE_SEAMLESS_LZMA || FREETZ_BUSYBOX_FEATURE_SEAMLESS_XZ)
help
With this option tar can automatically detect compressed
tarballs. Currently it works only on files (not pipes etc).
Expand Down
3 changes: 3 additions & 0 deletions make/busybox/busybox.rebuild-subopts.mk.in
Original file line number Diff line number Diff line change
Expand Up @@ -417,6 +417,7 @@ $(PKG)_REBUILD_SUBOPTS += FREETZ_BUSYBOX_FEATURE_RUN_PARTS_LONG_OPTIONS
$(PKG)_REBUILD_SUBOPTS += FREETZ_BUSYBOX_FEATURE_RUNSVDIR_LOG
$(PKG)_REBUILD_SUBOPTS += FREETZ_BUSYBOX_FEATURE_SEAMLESS_BZ2
$(PKG)_REBUILD_SUBOPTS += FREETZ_BUSYBOX_FEATURE_SEAMLESS_GZ
$(PKG)_REBUILD_SUBOPTS += FREETZ_BUSYBOX_FEATURE_SEAMLESS_LZ
$(PKG)_REBUILD_SUBOPTS += FREETZ_BUSYBOX_FEATURE_SEAMLESS_LZMA
$(PKG)_REBUILD_SUBOPTS += FREETZ_BUSYBOX_FEATURE_SEAMLESS_XZ
$(PKG)_REBUILD_SUBOPTS += FREETZ_BUSYBOX_FEATURE_SEAMLESS_Z
Expand Down Expand Up @@ -722,7 +723,9 @@ $(PKG)_REBUILD_SUBOPTS += FREETZ_BUSYBOX_LSOF
$(PKG)_REBUILD_SUBOPTS += FREETZ_BUSYBOX_LSPCI
$(PKG)_REBUILD_SUBOPTS += FREETZ_BUSYBOX_LSSCSI
$(PKG)_REBUILD_SUBOPTS += FREETZ_BUSYBOX_LSUSB
$(PKG)_REBUILD_SUBOPTS += FREETZ_BUSYBOX_LUNZIP
$(PKG)_REBUILD_SUBOPTS += FREETZ_BUSYBOX_LZCAT
$(PKG)_REBUILD_SUBOPTS += FREETZ_BUSYBOX_LZIP
$(PKG)_REBUILD_SUBOPTS += FREETZ_BUSYBOX_LZMA
$(PKG)_REBUILD_SUBOPTS += FREETZ_BUSYBOX_LZOP
$(PKG)_REBUILD_SUBOPTS += FREETZ_BUSYBOX_LZOPCAT
Expand Down
Loading

0 comments on commit 6b8fa62

Please sign in to comment.