include/feeds.mk: rework generation of opkg distfeeds.conf
authorMatthias Schiffer <mschiffer@universe-factory.net>
Mon, 9 Jul 2018 22:00:01 +0000 (00:00 +0200)
committerMatthias Schiffer <mschiffer@universe-factory.net>
Thu, 12 Jul 2018 19:18:41 +0000 (21:18 +0200)
Allow enabling/commenting/disabling each feed individually by using a
tristate config symbol.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
include/feeds.mk
package/base-files/Makefile
package/base-files/image-config.in
scripts/feeds

index c9ffa95a368a72fd43a7e688b7ee1b274ade2916..3e0801e656bfa4d14ccd22db23a059d46cdc558c 100644 (file)
@@ -10,8 +10,6 @@
 
 FEEDS_INSTALLED:=$(notdir $(wildcard $(TOPDIR)/package/feeds/*))
 FEEDS_AVAILABLE:=$(sort $(FEEDS_INSTALLED) $(shell $(SCRIPT_DIR)/feeds list -n))
-FEEDS_ENABLED:=$(foreach feed,$(FEEDS_AVAILABLE),$(if $(CONFIG_FEED_$(feed)),$(feed)))
-FEEDS_DISABLED:=$(filter-out $(FEEDS_ENABLED),$(FEEDS_AVAILABLE))
 
 PACKAGE_SUBDIRS=$(PACKAGE_DIR)
 ifneq ($(CONFIG_PER_FEED_REPO),)
@@ -35,10 +33,11 @@ endef
 # 1: destination file
 define FeedSourcesAppend
 ( \
-  echo "src/gz %d_core %U/targets/%S/packages"; \
+  echo 'src/gz %d_core %U/targets/%S/packages'; \
+  echo 'src/gz %d_base %U/packages/%A/base'; \
   $(strip $(if $(CONFIG_PER_FEED_REPO), \
-       $(foreach feed,base $(FEEDS_ENABLED),echo "src/gz %d_$(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 %d_$(feed) %U/packages/%A/$(feed)";)))) \
+       $(foreach feed,$(FEEDS_AVAILABLE), \
+               $(if $(CONFIG_FEED_$(feed)), \
+                       echo '$(if $(filter m,$(CONFIG_FEED_$(feed))),# )src/gz %d_$(feed) %U/packages/%A/$(feed)';)))) \
 ) >> $(1)
 endef
index a4ceb5cb36fa705fa02afccf2e9220ea54ad42fe..b58843163fd44638242d830764d2c849307c696f 100644 (file)
@@ -25,8 +25,6 @@ PKG_CONFIG_DEPENDS += \
        CONFIG_NAND_SUPPORT \
        CONFIG_CLEAN_IPKG \
        CONFIG_PER_FEED_REPO \
-       CONFIG_PER_FEED_REPO_ADD_DISABLED \
-       CONFIG_PER_FEED_REPO_ADD_COMMENTED \
        $(foreach feed,$(FEEDS_AVAILABLE),CONFIG_FEED_$(feed))
 
 include $(INCLUDE_DIR)/package.mk
index ffa12cd3ecc4df3c95c2333d975d406a2c030cc0..cf2cfd1d4e49a57dacc6ac92f81283613ae55dd5 100644 (file)
@@ -274,18 +274,4 @@ menuconfig PER_FEED_REPO
                If set, a separate repository is generated within bin/*/packages/
                for the core packages and each enabled feed.
 
-       config PER_FEED_REPO_ADD_DISABLED
-               bool "Add available but not enabled feeds to opkg.conf"
-               default y
-               depends on PER_FEED_REPO
-               help
-                 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 !BUILDBOT
-               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 b29e1d5c353d23c8f0afc81fb0f1ec37e1f2a521..304ef6cbafd141ff98d6a8afe5de5b371a4cb2a7 100755 (executable)
@@ -824,11 +824,12 @@ sub feed_config() {
                my $installed = (-f "feeds/$feed->[1].index");
 
                printf "\tconfig FEED_%s\n", $feed->[1];
-               printf "\t\tbool \"Enable feed %s\"\n", $feed->[1];
+               printf "\t\ttristate \"Enable feed %s\"\n", $feed->[1];
                printf "\t\tdepends on PER_FEED_REPO\n";
                printf "\t\tdefault y\n" if $installed;
                printf "\t\thelp\n";
-               printf "\t\t Enable the \\\"%s\\\" feed at %s.\n", $feed->[1], $feed->[2][0];
+               printf "\t\t Enable the \\\"%s\\\" feed in opkg distfeeds.conf.\n", $feed->[1];
+               printf "\t\t Say M to add the feed commented out.\n";
                printf "\n";
        }