diff options
| -rw-r--r-- | include/host-build.mk | 35 | ||||
| -rw-r--r-- | include/package.mk | 2 | ||||
| -rw-r--r-- | include/unpack.mk | 6 | 
3 files changed, 26 insertions, 17 deletions
| diff --git a/include/host-build.mk b/include/host-build.mk index 3f714cd68..2ce3e1598 100644 --- a/include/host-build.mk +++ b/include/host-build.mk @@ -6,7 +6,7 @@  #  HOST_BUILD_DIR ?= $(BUILD_DIR_HOST)/$(PKG_NAME)$(if $(PKG_VERSION),-$(PKG_VERSION)) -PKG_INSTALL_DIR ?= $(HOST_BUILD_DIR)/host-install +HOST_INSTALL_DIR ?= $(HOST_BUILD_DIR)/host-install  include $(INCLUDE_DIR)/host.mk  include $(INCLUDE_DIR)/unpack.mk @@ -86,9 +86,10 @@ define Download/default    MD5SUM:=$(PKG_MD5SUM)  endef -define HostBuild +ifndef DUMP +  define HostBuild    $(if $(QUILT),$(Host/Quilt)) -  $(if $(strip $(PKG_SOURCE_URL)),$(call Download,default)) +  $(if $(STAMP_PREPARED),,$(if $(strip $(PKG_SOURCE_URL)),$(call Download,default)))    $(if $(DUMP),,$(call HostHost/Autoclean))    $(HOST_STAMP_PREPARED): @@ -111,21 +112,25 @@ define HostBuild  	touch $$@    ifdef Host/Install -    install: $(HOST_STAMP_INSTALLED) +    host-install: $(HOST_STAMP_INSTALLED)    endif -  package-clean: FORCE +  download: +  host-prepare: $(HOST_STAMP_PREPARED) +  host-configure: $(HOST_STAMP_CONFIGURED) +  host-compile: $(HOST_STAMP_BUILT) +  host-install: +  host-clean: FORCE  	$(call Host/Clean)  	$(call Host/Uninstall) -	rm -f $(HOST_STAMP_INSTALLED) $(HOST_STAMP_BUILT) +	rm -rf $(HOST_BUILD_DIR) $(HOST_STAMP_INSTALLED) $(HOST_STAMP_BUILT) -  download: -  prepare: $(HOST_STAMP_PREPARED) -  configure: $(HOST_STAMP_CONFIGURED) -  compile: $(HOST_STAMP_BUILT) -  install: -  clean: FORCE -	$(call Host/Clean) -	rm -rf $(HOST_BUILD_DIR) +  endef + +  prepare: host-prepare +  compile: host-compile +  install: host-install +  clean: host-clean + +endif -endef diff --git a/include/package.mk b/include/package.mk index 13dece4c0..2b28b648b 100644 --- a/include/package.mk +++ b/include/package.mk @@ -69,7 +69,7 @@ define Build/DefaultTargets    $(if $(strip $(PKG_SOURCE_URL)),$(call Download,default))    $(call Build/Autoclean) -  $(STAMP_PREPARED): +  $(STAMP_PREPARED): $(HOST_STAMP_INSTALLED)  	@-rm -rf $(PKG_BUILD_DIR)  	@mkdir -p $(PKG_BUILD_DIR)  	$(foreach hook,$(Hooks/Prepare/Pre),$(call $(hook))$(sep)) diff --git a/include/unpack.mk b/include/unpack.mk index ddd5fd11f..ae8cdecb2 100644 --- a/include/unpack.mk +++ b/include/unpack.mk @@ -17,7 +17,7 @@ UNZIP_CMD=unzip -d $(1)/.. $(DL_DIR)/$(PKG_SOURCE)  ifeq ($(PKG_SOURCE),)    PKG_UNPACK ?= true  endif -ifeq ($(strip $(PKG_UNPACK))$(strip $(HOST_UNPACK)),) +ifeq ($(strip $(UNPACK_CMD)),)    ifeq ($(strip $(PKG_CAT)),)      # try to autodetect file type      EXT:=$(call ext,$(PKG_SOURCE)) @@ -63,6 +63,10 @@ ifeq ($(strip $(PKG_UNPACK))$(strip $(HOST_UNPACK)),)    else      CRLF_CMD :=    endif +endif +ifdef PKG_BUILD_DIR    PKG_UNPACK := $(call UNPACK_CMD,$(PKG_BUILD_DIR)) $(call CRLF_CMD,$(PKG_BUILD_DIR)) +endif +ifdef HOST_BUILD_DIR    HOST_UNPACK := $(call UNPACK_CMD,$(HOST_BUILD_DIR)) $(call CRLF_CMD,$(HOST_BUILD_DIR))  endif | 
