feeds.mk 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. #
  2. # Copyright (C) 2014 OpenWrt.org
  3. # Copyright (C) 2016 LEDE Project
  4. #
  5. # This is free software, licensed under the GNU General Public License v2.
  6. # See /LICENSE for more information.
  7. #
  8. -include $(TMP_DIR)/.packagesubdirs
  9. FEEDS_AVAILABLE:=$(shell $(SCRIPT_DIR)/feeds list -n)
  10. FEEDS_INSTALLED:=$(notdir $(wildcard $(TOPDIR)/package/feeds/*))
  11. FEEDS_ENABLED:=$(foreach feed,$(FEEDS_INSTALLED),$(if $(CONFIG_FEED_$(feed)),$(feed)))
  12. FEEDS_DISABLED:=$(filter-out $(FEEDS_ENABLED),$(FEEDS_AVAILABLE))
  13. PACKAGE_SUBDIRS=$(PACKAGE_DIR)
  14. ifneq ($(CONFIG_PER_FEED_REPO),)
  15. PACKAGE_SUBDIRS += $(OUTPUT_DIR)/packages/$(ARCH_PACKAGES)/base
  16. ifneq ($(CONFIG_PER_FEED_REPO_ADD_DISABLED),)
  17. PACKAGE_SUBDIRS += $(foreach FEED,$(FEEDS_AVAILABLE),$(OUTPUT_DIR)/packages/$(ARCH_PACKAGES)/$(FEED))
  18. else
  19. PACKAGE_SUBDIRS += $(foreach FEED,$(FEEDS_ENABLED),$(OUTPUT_DIR)/packages/$(ARCH_PACKAGES)/$(FEED))
  20. endif
  21. endif
  22. PKG_CONFIG_DEPENDS += \
  23. CONFIG_PER_FEED_REPO \
  24. CONFIG_PER_FEED_REPO_ADD_DISABLED \
  25. CONFIG_PER_FEED_REPO_ADD_COMMENTED \
  26. $(foreach feed,$(FEEDS_INSTALLED),CONFIG_FEED_$(feed))
  27. # 1: package name
  28. # 2: flags
  29. # 3: section
  30. define FeedPackageDir
  31. $(strip $(if $(CONFIG_PER_FEED_REPO), \
  32. $(if $(Package/$(1)/subdir), \
  33. $(abspath $(OUTPUT_DIR)/packages/$(ARCH_PACKAGES)/$(Package/$(1)/subdir)), \
  34. $(PACKAGE_DIR)), \
  35. $(PACKAGE_DIR)))
  36. endef
  37. # 1: destination file
  38. define FeedSourcesAppend
  39. ( \
  40. echo "src/gz %n_core %U/targets/%S/packages"; \
  41. $(strip $(if $(CONFIG_PER_FEED_REPO), \
  42. $(foreach feed,base $(FEEDS_ENABLED),echo "src/gz %n_$(feed) %U/packages/%A/$(feed)";) \
  43. $(if $(CONFIG_PER_FEED_REPO_ADD_DISABLED), \
  44. $(foreach feed,$(FEEDS_DISABLED),echo "$(if $(CONFIG_PER_FEED_REPO_ADD_COMMENTED),# )src/gz %n_$(feed) %U/packages/%A/$(feed)";)))) \
  45. ) >> $(1)
  46. endef