From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH] package/cmake: bump version to 3.10.0 and add license hash
Date: Tue, 12 Dec 2017 12:30:40 +0100 [thread overview]
Message-ID: <20171212123040.35400bc4@windsurf> (raw)
In-Reply-To: <20171212070736.04953cff@windsurf.png.is.keysight.com>
Hello,
On Tue, 12 Dec 2017 07:07:36 +0100, Thomas Petazzoni wrote:
> On Mon, 11 Dec 2017 00:33:49 +0100, Mario Lang wrote:
> > Signed-off-by: Mario Lang <mlang@blind.guru>
> > ---
> > package/cmake/cmake.hash | 5 +++--
> > package/cmake/cmake.mk | 4 ++--
> > 2 files changed, 5 insertions(+), 4 deletions(-)
>
> Applied to master, thanks.
And I had to revert it, because it was causing gazillions of build
failures of host-cmake:
http://autobuild.buildroot.net/?reason=host-cmake-3.10.0
Indeed, CMake is now using the emplace_hint method, which is only
available in C++11, so it probably requires gcc 4.7 or gcc 4.8, and the
CMake package doesn't account for this dependency.
The gotcha is that it's not going to be easy to solve. Indeed, our
current logic is:
1. If there is a suitable CMake available on the system, we use it
2. If there's no suitable CMake available on the system, we build our
own.
In situation (1), we are still good, no problem. But in situation (2),
what do we do if we cannot built CMake at all because the host compiler
is too old ? The only option would be to prevent the user from enabling
any package that will need host-cmake. This means all cmake-based
packages, and all their reverse dependencies.
Really, that's quite a bit of work. Perhaps this should instead be
taken as a bug/regression to CMake, and see if they are willing to use
a different approach when emplace_hint is not available ?
Seems like emplace_hint() is adding a new element to a container, with
a hint as to where it should be added. So I believe this is an
optimization, so perhaps if emplace_hint() is not available, CMake
could fallback on just inserting the element in the container.
Mario, are you interested in looking into this ?
Thanks a lot,
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
next prev parent reply other threads:[~2017-12-12 11:30 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-12-10 23:33 [Buildroot] [PATCH] package/cmake: bump version to 3.10.0 and add license hash Mario Lang
2017-12-12 6:07 ` Thomas Petazzoni
2017-12-12 11:30 ` Thomas Petazzoni [this message]
2017-12-16 10:52 ` Mario Lang
2017-12-16 10:52 ` [Buildroot] FW: " Kees van Unen
2017-12-16 12:34 ` [Buildroot] " Thomas Petazzoni
2017-12-17 17:39 ` Yann E. MORIN
2017-12-18 22:15 ` Peter Korsgaard
2017-12-19 8:39 ` 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=20171212123040.35400bc4@windsurf \
--to=thomas.petazzoni@free-electrons.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