diff --git a/include/unpack.mk b/include/unpack.mk index 051846bd2f..94124e9ec6 100644 --- a/include/unpack.mk +++ b/include/unpack.mk @@ -1,16 +1,18 @@ ifeq ($(strip $(PKG_UNPACK)),) ifneq ($(HOST_OS),Linux) - TAR := trapret 2 $(PKG_UNPACK) $(TAR) + HOST_TAR:=trapret 2 $(TAR) + else + HOST_TAR:=$(TAR) endif ifneq ($(strip $(PKG_CAT)),) # use existing PKG_CAT - PKG_UNPACK:=$(PKG_CAT) $(DL_DIR)/$(PKG_SOURCE) | $(TAR) -C $(PKG_BUILD_DIR)/.. $(TAR_OPTIONS) + PKG_UNPACK:=$(PKG_CAT) $(DL_DIR)/$(PKG_SOURCE) | $(HOST_TAR) -C $(PKG_BUILD_DIR)/.. $(TAR_OPTIONS) ifeq ($(PKG_CAT),unzip) PKG_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) - PKG_UNPACK:=$(ZCAT) $(DL_DIR)/$(PKG_SOURCE) | $(TAR) -C $(PKG_BUILD_DIR)/.. $(TAR_OPTIONS) + PKG_UNPACK:=$(ZCAT) $(DL_DIR)/$(PKG_SOURCE) | $(HOST_TAR) -C $(PKG_BUILD_DIR)/.. $(TAR_OPTIONS) endif else # try to autodetect file type diff --git a/toolchain/kernel-headers/Makefile b/toolchain/kernel-headers/Makefile index 027d6a852f..47a55de57a 100644 --- a/toolchain/kernel-headers/Makefile +++ b/toolchain/kernel-headers/Makefile @@ -19,7 +19,7 @@ include $(INCLUDE_DIR)/host-build.mk define Build/Prepare mkdir -p $(TOOLCHAIN_BUILD_DIR) - bzcat $(DL_DIR)/$(PKG_SOURCE) | $(TAR) -C $(TOOLCHAIN_BUILD_DIR) $(TAR_OPTIONS) + bzcat $(DL_DIR)/$(PKG_SOURCE) | $(HOST_TAR) -C $(TOOLCHAIN_BUILD_DIR) $(TAR_OPTIONS) $(PATCH) $(PKG_BUILD_DIR) $(TOPDIR)/target/linux/generic-$(KERNEL)/patches $(SED) 's/@expr length/@-expr length/' $(PKG_BUILD_DIR)/Makefile ln -sf $(PKG_BUILD_DIR) $(LINUX_HEADERS_DIR)