diff options
| -rw-r--r-- | Config.in | 8 | ||||
| -rw-r--r-- | include/package.mk | 14 | 
2 files changed, 21 insertions, 1 deletions
@@ -430,6 +430,14 @@ menuconfig DEVEL  		help  		  If enabled log files will be written to the ./log directory +	config SRC_TREE_OVERRIDE +		bool "Enable package source tree override" if DEVEL +		help +		  If enabled, you can force a package to use a git tree as source +		  code instead of the normal tarball. Create a symlink 'git-src' +		  in the package directory, pointing to the .git tree that you want +		  to pull the source code from +  menuconfig TARGET_OPTIONS  	bool "Target Options"  if DEVEL diff --git a/include/package.mk b/include/package.mk index cfb39dac8..2ad0f11bc 100644 --- a/include/package.mk +++ b/include/package.mk @@ -37,6 +37,10 @@ STAMP_BUILT:=$(PKG_BUILD_DIR)/.built  STAMP_INSTALLED:=$(STAGING_DIR)/stamp/.$(PKG_NAME)_installed  STAGING_FILES_LIST:=$(PKG_NAME)$(if $(BUILD_VARIANT),.$(BUILD_VARIANT),).list +ifneq ($(if $(CONFIG_SRC_TREE_OVERRIDE),$(wildcard ./git-src)),) +  USE_GIT_TREE:=1 +  QUILT:=1 +endif  include $(INCLUDE_DIR)/download.mk  include $(INCLUDE_DIR)/quilt.mk @@ -84,6 +88,14 @@ define Download/default    MD5SUM:=$(PKG_MD5SUM)  endef +ifdef USE_GIT_TREE +  define Build/Prepare/Default +	mkdir -p $(PKG_BUILD_DIR) +	ln -s $(CURDIR)/git-src $(PKG_BUILD_DIR)/.git +	( cd $(PKG_BUILD_DIR); git checkout .) +  endef +endif +  define Build/Exports/Default    $(1) : export ACLOCAL_INCLUDE=$$(foreach p,$$(wildcard $$(STAGING_DIR)/usr/share/aclocal $$(STAGING_DIR)/usr/share/aclocal-* $$(STAGING_DIR)/host/share/aclocal $$(STAGING_DIR)/host/share/aclocal-*),-I $$(p))    $(1) : export STAGING_PREFIX=$$(STAGING_DIR)/usr @@ -97,7 +109,7 @@ Build/Exports=$(Build/Exports/Default)  define Build/DefaultTargets    $(if $(QUILT),$(Build/Quilt)) -  $(if $(strip $(PKG_SOURCE_URL)),$(call Download,default)) +  $(if $(USE_GIT_TREE),$(if $(strip $(PKG_SOURCE_URL)),$(call Download,default)))    $(call Build/Autoclean)    download:  | 
