From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 1/1] uboot-tools: add missing dependency on host-dtc for the host package
Date: Thu, 5 May 2016 23:27:16 +0200 [thread overview]
Message-ID: <20160505212716.GA4367@free.fr> (raw)
In-Reply-To: <1040860357.13861098.1462480371842.JavaMail.zimbra@datacom.ind.br>
Carlos, All,
On 2016-05-05 17:32 -0300, Carlos Santos spake thusly:
> > From: "Thomas Petazzoni" <thomas.petazzoni@free-electrons.com>
> > To: "Carlos Santos" <casantos@datacom.ind.br>
> > Cc: buildroot at buildroot.org, "Arnout Vandecappelle" <arnout@mind.be>, "Yann E. MORIN" <yann.morin.1998@free.fr>, "Peter
> > Korsgaard" <peter@korsgaard.com>
> > Sent: Thursday, May 5, 2016 5:09:01 PM
> > Subject: Re: [Buildroot] [PATCH 1/1] uboot-tools: add missing dependency on host-dtc for the host package
>
> > Hello,
> >
> > Thanks for this patch. See my comments below.
> >
> > On Wed, 4 May 2016 11:38:29 -0300, Carlos Santos wrote:
> >> The mkimage utility needs dtc when the input is in Flat Image Trees (FIT)
> >> format. If dtc is not available mkimage fails. Example:
> >>
> >> $ mkimage -f firmware.its firmware.im
> >> sh: dtc: command not found
> >>
> >> Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
> >> ---
> >> package/uboot-tools/Config.in.host | 1 +
> >> package/uboot-tools/uboot-tools.mk | 2 ++
> >> 2 files changed, 3 insertions(+)
> >>
> >> diff --git a/package/uboot-tools/Config.in.host
> >> b/package/uboot-tools/Config.in.host
> >> index b5a42d9..5c44eaf 100644
> >> --- a/package/uboot-tools/Config.in.host
> >> +++ b/package/uboot-tools/Config.in.host
> >> @@ -1,5 +1,6 @@
> >> config BR2_PACKAGE_HOST_UBOOT_TOOLS
> >> bool "host u-boot tools"
> >> + select BR2_PACKAGE_HOST_DTC
> >> help
> >> Companion tools for Das U-Boot bootloader.
> >>
> >> diff --git a/package/uboot-tools/uboot-tools.mk
> >> b/package/uboot-tools/uboot-tools.mk
> >> index f47b3db..a07fbfa 100644
> >> --- a/package/uboot-tools/uboot-tools.mk
> >> +++ b/package/uboot-tools/uboot-tools.mk
> >> @@ -65,6 +65,8 @@ define UBOOT_TOOLS_INSTALL_TARGET_CMDS
> >> $(UBOOT_TOOLS_INSTALL_DUMPIMAGE)
> >> endef
> >>
> >> +HOST_UBOOT_TOOLS_DEPENDENCIES += host-dtc
> >
> > I am not sure I like the idea of having host-uboot-tools always depend
> > on host-dtc, as it adds build time while host-dtc is only needed for
> > some specific use cases of mkimage (generating FIT images).
>
> The extra time needed to build host-dtc is negligible. This is what I
> get when I build it on my Core i5 notebook, including download time:
>
> $ time make host-dtc-dirclean host-dtc
> [...]
> real 0m8.387s
> user 0m7.552s
> sys 0m2.231s
You forgot that dtc (and thus host-dtc) depends on host-bison and
host-flex, and host-bison pulls in host-m4. So you'd have to account for
the build time of those, too (but of course, only in case they were not
otherwise needed).
> > There are really three options I believe:
> >
> > (1) What you did, i.e have host-dtc as an unconditional dependency of
> > host-uboot-tools. Everybody pays the price of building host-dtc
> > even if it's not needed.
>
> It builds in a few seconds and does not have any impact on the size or
> performance of the target system, since it is a host tool.
>
> > (2) Add a sub-option to host-uboot-tools so that people can say "I
> > need it with FIT image support", which will add host-dtc as a
> > dependency.
>
> The user would spend more time choosing the extra option than
> downloading and building host-dtc.
>
> > (3) Just do nothing, and let our users be smart enough to realize that
> > when mkimage complains that dtc is missing, they should enable
> > host-dtc.
>
> The poor user would waste even more time attempting to find what broke
> the build.
Right, I'm not too fond of proposal #3 either.
I thought we were striving to "make it work out of the box" as much as
possible, goal that option #3 completely defeats.
Option #2 is not much better however, since it would probably not be
easy to match the build failure to that option...
Option #1 will make it just work in every cases, at the expense of a bit
longer build time (mostly because of dependencies of host-dtc).
However, given how pervasive DTC is becoming, I think it would kinda
make sense to have a mkimage that supports DT every time (I hope that
adding DT support to mkimage does not remove functionality, does it?)
So my vote would be with option #1.
Regards,
Yann E. MORIN.
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
next prev parent reply other threads:[~2016-05-05 21:27 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-05-04 14:38 [Buildroot] [PATCH 1/1] uboot-tools: add missing dependency on host-dtc for the host package Carlos Santos
2016-05-05 20:09 ` Thomas Petazzoni
2016-05-05 20:17 ` Peter Korsgaard
2016-05-05 21:40 ` Yann E. MORIN
2016-05-05 20:32 ` Carlos Santos
2016-05-05 20:36 ` Thomas Petazzoni
2016-05-05 21:27 ` Yann E. MORIN [this message]
2016-05-05 21:38 ` Thomas Petazzoni
2016-05-05 21:44 ` Yann E. MORIN
2016-05-06 12:02 ` Carlos Santos
2016-05-06 11:59 ` [Buildroot] [PATCH v2 " Carlos Santos
2016-05-06 13:25 ` Thomas Petazzoni
2016-05-08 19:39 ` Carlos Santos
2016-05-08 19:46 ` [Buildroot] [PATCH v3] uboot-tools: fix FIT support and make it optional Carlos Santos
2016-05-08 19:46 ` Carlos Santos
2016-05-28 13:07 ` Thomas Petazzoni
2016-05-31 17:33 ` Carlos Santos
2016-05-31 19:01 ` Thomas Petazzoni
2016-05-31 19:40 ` Carlos Santos
2016-05-31 19:48 ` Thomas Petazzoni
2016-06-01 14:39 ` [Buildroot] [PATCH next 0/4] uboot-tools: fix support for Flat Image Trees (FIT) Carlos Santos
2016-06-01 14:39 ` [Buildroot] [PATCH next 1/4] uboot-tools: use $(TARGET_STRIP) for target utilities Carlos Santos
2016-06-01 14:39 ` [Buildroot] [PATCH next 2/4] uboot-tools: improve the help text of existing options Carlos Santos
2016-06-01 14:39 ` [Buildroot] [PATCH next 3/4] uboot-tools: re-generate patches to match v2016.05 Carlos Santos
2016-06-01 14:39 ` [Buildroot] [PATCH next 4/4] uboot-tools: fix FIT support and make it optional Carlos Santos
2016-06-01 15:08 ` Thomas Petazzoni
2016-06-03 19:35 ` [Buildroot] [PATCH v4] " Carlos Santos
2016-06-07 2:25 ` [Buildroot] [PATCH v5] util-linux: rework utilities menu for finer control Carlos Santos
2016-07-05 15:11 ` Romain Naour
2016-07-06 2:43 ` Carlos Santos
2016-07-06 2:55 ` [Buildroot] [PATCH v6] " Carlos Santos
2016-07-06 21:54 ` Yann E. MORIN
2016-07-08 20:33 ` Carlos Santos
2016-07-08 20:52 ` Yann E. MORIN
2016-07-10 1:16 ` [Buildroot] [PATCH v7 0/3] util-linux: cleanups, additions and reworked utilities menu Carlos Santos
2016-07-10 1:16 ` [Buildroot] [PATCH v7 1/3] util-linux: clean up libraries and tools selections Carlos Santos
2016-10-16 13:55 ` Thomas Petazzoni
2016-07-10 1:16 ` [Buildroot] [PATCH v6] util-linux: rework utilities menu for finer control Carlos Santos
2016-07-10 1:16 ` [Buildroot] [PATCH v7 2/3] util-linux: expand selection of libraries and utilities Carlos Santos
2016-10-16 13:56 ` Thomas Petazzoni
2016-07-10 1:16 ` [Buildroot] [PATCH v7 3/3] util-linux: rework utilities menu for finer control Carlos Santos
2016-10-16 14:02 ` Thomas Petazzoni
2016-06-07 21:12 ` [Buildroot] [PATCH v4] uboot-tools: fix FIT support and make it optional Thomas Petazzoni
2016-06-01 15:07 ` [Buildroot] [PATCH next 0/4] uboot-tools: fix support for Flat Image Trees (FIT) Thomas Petazzoni
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=20160505212716.GA4367@free.fr \
--to=yann.morin.1998@free.fr \
--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