Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas De Schampheleire <patrickdepinguin+buildroot@gmail.com>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 1 of 3 v2] dependencies: add function suitable-host-package
Date: Wed, 23 Nov 2011 14:59:50 +0100	[thread overview]
Message-ID: <03cbc212567081a0d7bc.1322053784@devws108> (raw)
In-Reply-To: <patchbomb.1322053783@devws108>

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>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>

---
 toolchain/dependencies/dependencies.mk |  9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/toolchain/dependencies/dependencies.mk b/toolchain/dependencies/dependencies.mk
--- a/toolchain/dependencies/dependencies.mk
+++ b/toolchain/dependencies/dependencies.mk
@@ -6,6 +6,15 @@
 ######################################################################
 
 DEPENDENCIES_HOST_PREREQ:=
+
+# suitable-host-pkg: calls check-host-$(1).sh shell script, which
+# should return the path to the suitable host tool, or nothing if no
+# suitable tool was found.
+define suitable-host-package
+$(shell toolchain/dependencies/check-host-$(1).sh)
+endef
+include toolchain/dependencies/check-host-*.mk
+
 ifeq ($(BR2_STRIP_sstrip),y)
 DEPENDENCIES_HOST_PREREQ+=host-sstrip
 endif

  reply	other threads:[~2011-11-23 13:59 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-11-23 13:59 [Buildroot] [PATCH 0 of 3 v2] dependencies: some improvements Thomas De Schampheleire
2011-11-23 13:59 ` Thomas De Schampheleire [this message]
2011-12-06 17:12   ` [Buildroot] [PATCH 1 of 3 v2] dependencies: add function suitable-host-package Arnout Vandecappelle
2011-12-08  9:56     ` Thomas De Schampheleire
2011-11-23 13:59 ` [Buildroot] [PATCH 2 of 3 v2] dependencies: build a host-tar if no suitable tar can be found Thomas De Schampheleire
2011-11-23 14:24   ` Thomas Petazzoni
2011-11-23 15:05     ` Michael S. Zick
2011-11-23 15:09     ` Thomas De Schampheleire
2011-12-06 17:07     ` Arnout Vandecappelle
2011-12-08 10:41       ` Thomas De Schampheleire
2011-12-08 14:13         ` Michael S. Zick
2011-12-08 15:05           ` Michael S. Zick
2011-12-09  7:00             ` Thomas De Schampheleire
     [not found]               ` <201112090811.09604.minimod@morethan.org>
2011-12-10  9:06                 ` Thomas De Schampheleire
2011-12-06 17:23   ` Arnout Vandecappelle
2011-12-08 10:06     ` Thomas De Schampheleire
2011-12-08 14:19       ` Michael S. Zick
2011-11-23 14:00 ` [Buildroot] [PATCH 3 of 3 v2] Move toolchain/dependencies to support/dependencies Thomas De Schampheleire
2011-11-23 14:25   ` Thomas Petazzoni
2011-12-06 16:59     ` Arnout Vandecappelle

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=03cbc212567081a0d7bc.1322053784@devws108 \
    --to=patrickdepinguin+buildroot@gmail.com \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox