summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas De Schampheleire <patrickdepinguin+buildroot@gmail.com>2012-02-08 17:22:18 +0100
committerPeter Korsgaard <jacmet@sunsite.dk>2012-02-09 22:59:21 +0100
commit1bbf39bd733007f2bda799622147924008a5d44c (patch)
tree72b45d20aa7a48bb63eb96ce54ac39795e9d15cd
parentd83f347c254f194b8da517e92cc5bb565b1ffd73 (diff)
downloadbuildroot-novena-1bbf39bd733007f2bda799622147924008a5d44c.tar.gz
buildroot-novena-1bbf39bd733007f2bda799622147924008a5d44c.zip
dependencies: add function suitable-host-package
Sometimes, buildroot needs a certain host tool to do its job, e.g. tar. In many cases, we expect this tool to be present on the host system, but this is not always the case. Or maybe, the version on the host system is not suitable, and we need a more recent one. In some of these cases, instead of bailing out, buildroot could build the package first (but only if the existing system package is not suitable). To aid in detecting if a host package is suitable or not, this patch adds a function suitable-host-package. When called with parameter foo, it will execute check-host-foo.sh. This script should return either the path to the suitable host package, or the empty string if no suitable package can be found. The rules to determine whether something is suitable or not is left to check-host-foo.sh and depends on foo. An example usage of suitable-host-package is: DEPENDENCIES_HOST_PREREQ += $(if $(call suitable-host-package,foo),,host-foo) To avoid cluttering the existing dependencies.mk file, it includes any check-host-foo.mk file. These files can be used to hold appropriate dependency-related actions for foo. Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> v1 Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
-rw-r--r--support/dependencies/dependencies.mk10
1 files changed, 10 insertions, 0 deletions
diff --git a/support/dependencies/dependencies.mk b/support/dependencies/dependencies.mk
index 3e621e9dd..cee2a4842 100644
--- a/support/dependencies/dependencies.mk
+++ b/support/dependencies/dependencies.mk
@@ -6,6 +6,16 @@
######################################################################
DEPENDENCIES_HOST_PREREQ:=
+
+# suitable-host-pkg: calls check-host-$(1).sh shell script. Parameter (2)
+# can be the candidate to be checked. If not present, the check-host-$(1).sh
+# script should use 'which' to find a candidate. The script should return
+# the path to the suitable host tool, or nothing if no suitable tool was found.
+define suitable-host-package
+$(shell support/dependencies/check-host-$(1).sh $(2))
+endef
+-include support/dependencies/check-host-*.mk
+
ifeq ($(BR2_STRIP_sstrip),y)
DEPENDENCIES_HOST_PREREQ+=host-sstrip
endif