build: improve feed handling for opkg.conf
authorjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Thu, 16 Oct 2014 10:30:16 +0000 (10:30 +0000)
committerjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Thu, 16 Oct 2014 10:30:16 +0000 (10:30 +0000)
 - Consider not installed feeds as well
 - Add option to decide whether to comment disabled feeds

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@42931 3c298f89-4303-0410-b956-a3cf2f4a3e73

include/feeds.mk
package/base-files/image-config.in
package/system/opkg/Makefile

index 97b1449..695b03b 100644 (file)
 FEEDS_AVAILABLE:=$(shell $(SCRIPT_DIR)/feeds list -n)
 FEEDS_INSTALLED:=$(notdir $(wildcard $(TOPDIR)/package/feeds/*))
 FEEDS_ENABLED:=$(foreach feed,$(FEEDS_INSTALLED),$(if $(CONFIG_FEED_$(feed)),$(feed)))
-FEEDS_DISABLED:=$(filter-out $(FEEDS_ENABLED),$(FEEDS_INSTALLED))
+FEEDS_DISABLED:=$(filter-out $(FEEDS_ENABLED),$(FEEDS_AVAILABLE))
 
 PKG_CONFIG_DEPENDS += \
        CONFIG_PER_FEED_REPO \
+       CONFIG_PER_FEED_REPO_ADD_DISABLED \
+       CONFIG_PER_FEED_REPO_ADD_COMMENTED \
        $(foreach feed,$(FEEDS_INSTALLED),CONFIG_FEED_$(feed))
 
 # 1: package name
index 67604cd..c679a5b 100644 (file)
@@ -217,11 +217,18 @@ menuconfig PER_FEED_REPO
                for the core packages and each enabled feed.
 
        config PER_FEED_REPO_ADD_DISABLED
-               bool "Add installed but disabled feeds to opkg.conf"
+               bool "Add available but not enabled feeds to opkg.conf"
                default y
                depends on PER_FEED_REPO
                help
-                 Add installed but disabled feeds as commented out source lines to opkg.conf.
+                 Add not installed or disabled feeds from feeds.conf to opkg.conf.
+
+       config PER_FEED_REPO_ADD_COMMENTED
+               bool "Comment out not enabled feeds"
+               default y
+               depends on PER_FEED_REPO && PER_FEED_REPO_ADD_DISABLED
+               help
+                 Add not enabled feeds as commented out source lines to opkg.conf.
 
 source "tmp/.config-feeds.in"
 
index 8a63fb4..6dd3f31 100644 (file)
@@ -113,7 +113,7 @@ define Package/opkg/Default/install
        done
     ifneq ($(CONFIG_PER_FEED_REPO_ADD_DISABLED),)
        for d in $(FEEDS_DISABLED); do \
-               echo "src/gz %n_$$$$d %U/$$$$d" >> $(1)/etc/opkg.conf; \
+               echo "$(if $(CONFIG_PER_FEED_REPO_ADD_COMMENTED),# )src/gz %n_$$$$d %U/$$$$d" >> $(1)/etc/opkg.conf; \
        done
     endif
   endif