diff options
author | Felix Fietkau <nbd@openwrt.org> | 2006-10-14 00:40:27 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2006-10-14 00:40:27 +0000 |
commit | 0d9ddef0e843133bd0cebdbfe141486fee4a6db8 (patch) | |
tree | 8aa331ac11110222623f5bf881856433d0b71682 /include | |
parent | fdbd2f0907990c720505e4b3a1b18d1c470db7c8 (diff) | |
download | upstream-0d9ddef0e843133bd0cebdbfe141486fee4a6db8.tar.gz upstream-0d9ddef0e843133bd0cebdbfe141486fee4a6db8.tar.bz2 upstream-0d9ddef0e843133bd0cebdbfe141486fee4a6db8.zip |
move common unpacking code to unpack.mk, replace zcat with $(ZCAT) for systems that use gzcat instead
SVN-Revision: 5070
Diffstat (limited to 'include')
-rw-r--r-- | include/host-build.mk | 8 | ||||
-rw-r--r-- | include/host.mk | 3 | ||||
-rw-r--r-- | include/package.mk | 8 | ||||
-rw-r--r-- | include/unpack.mk | 15 |
4 files changed, 22 insertions, 12 deletions
diff --git a/include/host-build.mk b/include/host-build.mk index a1287da475..858eee5318 100644 --- a/include/host-build.mk +++ b/include/host-build.mk @@ -6,13 +6,9 @@ # include $(INCLUDE_DIR)/host.mk +include $(INCLUDE_DIR)/unpack.mk -ifneq ($(strip $(PKG_CAT)),) - ifeq ($(PKG_CAT),unzip) - UNPACK=unzip -d $(PKG_BUILD_DIR) $(DL_DIR)/$(PKG_SOURCE) - else - UNPACK=$(PKG_CAT) $(DL_DIR)/$(PKG_SOURCE) | tar -C $(PKG_BUILD_DIR)/.. $(TAR_OPTIONS) - - endif +ifneq ($(strip $(UNPACK)),) define Build/Prepare/Default $(UNPACK) @if [ -d ./patches ]; then \ diff --git a/include/host.mk b/include/host.mk index 11522184b7..6c0dcd6699 100644 --- a/include/host.mk +++ b/include/host.mk @@ -28,5 +28,8 @@ $(TOPDIR)/.host.mk: $(INCLUDE_DIR)/host.mk if $$TAR --version 2>&1 | grep 'GNU' >/dev/null; then \ echo "TAR_WILDCARDS:=--wildcards" >> $@; \ fi; \ + ZCAT=`which gzcat`; \ + [ -n "$$ZCAT" -a -x "$$ZCAT" ] || ZCAT=`which zcat`; \ + echo "ZCAT:=$$ZCAT" >> $@; \ ) diff --git a/include/package.mk b/include/package.mk index 5a9ba861af..fc1b7802f9 100644 --- a/include/package.mk +++ b/include/package.mk @@ -12,6 +12,7 @@ endif include $(INCLUDE_DIR)/prereq.mk include $(INCLUDE_DIR)/host.mk +include $(INCLUDE_DIR)/unpack.mk define shvar V_$(subst .,_,$(subst -,_,$(subst /,_,$(1)))) @@ -269,12 +270,7 @@ define BuildPackage endif endef -ifneq ($(strip $(PKG_CAT)),) - ifeq ($(PKG_CAT),unzip) - UNPACK=unzip -d $(PKG_BUILD_DIR) $(DL_DIR)/$(PKG_SOURCE) - else - UNPACK=$(PKG_CAT) $(DL_DIR)/$(PKG_SOURCE) | tar -C $(PKG_BUILD_DIR)/.. $(TAR_OPTIONS) - - endif +ifneq ($(strip $(PKG_UNPACK)),) define Build/Prepare/Default $(UNPACK) @if [ -d ./patches ]; then \ diff --git a/include/unpack.mk b/include/unpack.mk new file mode 100644 index 0000000000..6449981c1b --- /dev/null +++ b/include/unpack.mk @@ -0,0 +1,15 @@ +ifeq ($(strip $(PKG_UNPACK)),) + ifneq ($(strip $(PKG_CAT)),) + # use existing PKG_CAT + UNPACK:=$(PKG_CAT) $(DL_DIR)/$(PKG_SOURCE) | tar -C $(PKG_BUILD_DIR)/.. $(TAR_OPTIONS) - + ifeq ($(PKG_CAT),unzip) + UNPACK=unzip -d $(PKG_BUILD_DIR) $(DL_DIR)/$(PKG_SOURCE) + endif + # replace zcat with $(ZCAT), because some system have it as gzcat + ifeq ($(PKG_CAT),zcat) + UNPACK:=$(ZCAT) $(DL_DIR)/$(PKG_SOURCE) | tar -C $(PKG_BUILD_DIR)/.. $(TAR_OPTIONS) - + endif + else + # try to autodetect file type + endif +endif |