[Buildroot] [PATCH 1/5 v2] package infra: add patch-dependencies

Yann E. MORIN yann.morin.1998 at free.fr
Sat Mar 14 14:25:17 UTC 2015


Some packages need to vampirise files from one or more other packages.
This is the case, for example, of the Linux kernel and its /extensions/.

Add a new type of dependencies, that are guaranteed to be extracted and
patched before a package is patched.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998 at free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
---
 package/pkg-generic.mk | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/package/pkg-generic.mk b/package/pkg-generic.mk
index c1b379b..018f048 100644
--- a/package/pkg-generic.mk
+++ b/package/pkg-generic.mk
@@ -427,6 +427,7 @@ endif
 
 # Eliminate duplicates in dependencies
 $(2)_FINAL_DEPENDENCIES = $$(sort $$($(2)_DEPENDENCIES))
+$(2)_FINAL_PATCH_DEPENDENCIES = $$(sort $$($(2)_PATCH_DEPENDENCIES))
 
 $(2)_INSTALL_STAGING		?= NO
 $(2)_INSTALL_IMAGES		?= NO
@@ -538,6 +539,8 @@ $$($(2)_TARGET_CONFIGURE):	$$($(2)_TARGET_PATCH)
 
 $(1)-patch:		$$($(2)_TARGET_PATCH)
 $$($(2)_TARGET_PATCH):	$$($(2)_TARGET_EXTRACT)
+# Order-only dependency
+$$($(2)_TARGET_PATCH):  | $$(patsubst %,%-patch,$$($(2)_FINAL_PATCH_DEPENDENCIES))
 
 $(1)-extract:			$$($(2)_TARGET_EXTRACT)
 $$($(2)_TARGET_EXTRACT):	$$($(2)_TARGET_SOURCE)
@@ -568,8 +571,12 @@ endif
 $(1)-show-version:
 			@echo $$($(2)_VERSION)
 
-$(1)-show-depends:
+$(1)-show-build-depends:
 			@echo $$($(2)_FINAL_DEPENDENCIES)
+$(1)-show-patch-depends:
+			@echo $$($(2)_FINAL_PATCH_DEPENDENCIES)
+$(1)-show-depends:
+			@echo $$(sort $$($(2)_FINAL_DEPENDENCIES) $$($(2)_FINAL_PATCH_DEPENDENCIES))
 
 $(1)-graph-depends: graph-depends-requirements
 			@$$(INSTALL) -d $$(O)/graphs
-- 
1.9.1



More information about the buildroot mailing list