build: use SNAPSHOT instead of CURRENT to designate untagged branch builds
[openwrt/openwrt.git] / include / feeds.mk
index 4f71b399408fa2e27fa63ef83ca00185e4d2e7fe..2ff57e576246c9b3b587c1bb50cb5908cdcd8d3d 100644 (file)
@@ -1,5 +1,6 @@
 #
 # Copyright (C) 2014 OpenWrt.org
+# Copyright (C) 2016 LEDE Project
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -7,11 +8,27 @@
 
 -include $(TMP_DIR)/.packagesubdirs
 
-FEEDS_AVAILABLE:=$(shell $(SCRIPT_DIR)/feeds list -n)
 FEEDS_INSTALLED:=$(notdir $(wildcard $(TOPDIR)/package/feeds/*))
+FEEDS_AVAILABLE:=$(sort $(FEEDS_INSTALLED) $(shell $(SCRIPT_DIR)/feeds list -n))
 FEEDS_ENABLED:=$(foreach feed,$(FEEDS_INSTALLED),$(if $(CONFIG_FEED_$(feed)),$(feed)))
 FEEDS_DISABLED:=$(filter-out $(FEEDS_ENABLED),$(FEEDS_AVAILABLE))
 
+PACKAGE_SUBDIRS=$(PACKAGE_DIR)
+ifneq ($(CONFIG_PER_FEED_REPO),)
+  PACKAGE_SUBDIRS += $(OUTPUT_DIR)/packages/$(ARCH_PACKAGES)/base
+  ifneq ($(CONFIG_PER_FEED_REPO_ADD_DISABLED),)
+    PACKAGE_SUBDIRS += $(foreach FEED,$(FEEDS_AVAILABLE),$(OUTPUT_DIR)/packages/$(ARCH_PACKAGES)/$(FEED))
+  else
+    PACKAGE_SUBDIRS += $(foreach FEED,$(FEEDS_ENABLED),$(OUTPUT_DIR)/packages/$(ARCH_PACKAGES)/$(FEED))
+  endif
+endif
+
+PACKAGE_DIR_ALL := $(TOPDIR)/staging_dir/packages/$(BOARD)
+
+opkg_package_files = $(wildcard \
+       $(foreach dir,$(PACKAGE_SUBDIRS), \
+         $(foreach pkg,$(1), $(dir)/$(pkg)_*.ipk)))
+
 PKG_CONFIG_DEPENDS += \
        CONFIG_PER_FEED_REPO \
        CONFIG_PER_FEED_REPO_ADD_DISABLED \
@@ -21,19 +38,19 @@ PKG_CONFIG_DEPENDS += \
 # 1: package name
 define FeedPackageDir
 $(strip $(if $(CONFIG_PER_FEED_REPO), \
-  $(abspath $(PACKAGE_DIR)/$(if $(Package/$(1)/subdir),$(Package/$(1)/subdir),base)), \
+  $(if $(Package/$(1)/subdir), \
+    $(abspath $(OUTPUT_DIR)/packages/$(ARCH_PACKAGES)/$(Package/$(1)/subdir)), \
+    $(PACKAGE_DIR)), \
   $(PACKAGE_DIR)))
 endef
 
 # 1: destination file
 define FeedSourcesAppend
 ( \
+  echo "src/gz %n_core %U/targets/%S/packages"; \
   $(strip $(if $(CONFIG_PER_FEED_REPO), \
-       $(foreach feed,base kernel $(FEEDS_ENABLED),echo "src/gz %n_$(feed) %U/$(feed)";) \
+       $(foreach feed,base $(FEEDS_ENABLED),echo "src/gz %n_$(feed) %U/packages/%A/$(feed)";) \
        $(if $(CONFIG_PER_FEED_REPO_ADD_DISABLED), \
-               $(foreach feed,$(FEEDS_DISABLED),echo "$(if $(CONFIG_PER_FEED_REPO_ADD_COMMENTED),# )src/gz %n_$(feed) %U/$(feed)";)) \
-  , \
-       echo "src/gz %n %U"; \
-  )) \
+               $(foreach feed,$(FEEDS_DISABLED),echo "$(if $(CONFIG_PER_FEED_REPO_ADD_COMMENTED),# )src/gz %n_$(feed) %U/packages/%A/$(feed)";)))) \
 ) >> $(1)
 endef