[Buildroot] [PATCH] pkg-infra: allow dumping reverse dependencies of a package
flat view
STALE3658d
From: Yann E. MORIN <hidden>
Date: 2016-09-25 12:56:11
Subsystem:
kernel build + files below scripts/ (unless maintained elsewhere), the rest · Maintainers:
Nathan Chancellor, Nicolas Schier, Linus Torvalds
Finding the packages that select another one in a specific configuration is not very trivial: - when optional, the dependency is not expressed in Kconfig - looking at the .mk files is not very nice. Introduce a way to dump reverse dependencies of packages, i.e. the list of packages that directly depend on that package. Like for direct dependencies, we limit the list to the first-order reverse dependencies. Document it in the main help; use the opportunity to also docuemnt foo-show-depends. Signed-off-by: "Yann E. MORIN" <redacted> --- Makefile | 2 ++ package/pkg-generic.mk | 7 +++++++ 2 files changed, 9 insertions(+)
diff --git a/Makefile b/Makefile
index 5e4daef..3039983 100644
--- a/Makefile
+++ b/Makefile@@ -943,6 +943,8 @@ help: @echo ' <pkg>-depends - Build <pkg>'\''s dependencies' @echo ' <pkg>-configure - Build <pkg> up to the configure step' @echo ' <pkg>-build - Build <pkg> up to the build step' + @echo ' <pkg>-show-depends - List packages on which <pkg> depends' + @echo ' <pkg>-show-rdepends - List packages which have <pkg> as a dependency' @echo ' <pkg>-graph-depends - Generate a graph of <pkg>'\''s dependencies' @echo ' <pkg>-dirclean - Remove <pkg> build directory' @echo ' <pkg>-reconfigure - Restart the build from the configure step'
diff --git a/package/pkg-generic.mk b/package/pkg-generic.mk
index 68ead3d..779f294 100644
--- a/package/pkg-generic.mk
+++ b/package/pkg-generic.mk@@ -523,6 +523,10 @@ $(2)_FINAL_DEPENDENCIES = $$(sort $$($(2)_DEPENDENCIES)) $(2)_FINAL_PATCH_DEPENDENCIES = $$(sort $$($(2)_PATCH_DEPENDENCIES)) $(2)_FINAL_ALL_DEPENDENCIES = $$(sort $$($(2)_FINAL_DEPENDENCIES) $$($(2)_FINAL_PATCH_DEPENDENCIES)) +# Register package as a reverse-dependencies of all its dependencies +$$(eval $$(foreach p,$$($(2)_FINAL_ALL_DEPENDENCIES),\ + $$(call UPPERCASE,$$(p))_RDEPENDENCIES += $(1)$$(sep))) + $(2)_INSTALL_STAGING ?= NO $(2)_INSTALL_IMAGES ?= NO $(2)_INSTALL_TARGET ?= YES
@@ -698,6 +702,9 @@ $(1)-show-version: $(1)-show-depends: @echo $$($(2)_FINAL_ALL_DEPENDENCIES) +$(1)-show-rdepends: + @echo $$($(2)_RDEPENDENCIES) + $(1)-graph-depends: graph-depends-requirements @$$(INSTALL) -d $$(GRAPHS_DIR) @cd "$$(CONFIG_DIR)"; \
--
2.7.4