From: Luca Ceresoli <luca@lucaceresoli.net>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH v2] Don't build host-cmake if it is available on the build host
Date: Fri, 1 Jul 2016 17:47:04 +0200 [thread overview]
Message-ID: <57769078.8000407@lucaceresoli.net> (raw)
In-Reply-To: <56C353FF.1030907@lucaceresoli.net>
Hi,
On 16/02/2016 17:53, Luca Ceresoli wrote:
[...]
>>>
>>> I'm not sure what it the best and clean way to handle this...
>>> Maybe $(BUILD_HOST_CMAKE) != YES should be use to noop the
>>> HOST_CMAKE_{CONFIGURE,BUILD,INSTALLL}_CMDS commands, but we keep the
>>> dependency on host-cmake, so we don't lose host-cmake's dependencies.
>>>
>>> Any thought about this?
>>
>> The correct approach would be to add explicit dependencies on host-pkgconf for
>> packages that need it, just like we do for autotools packages.
>>
>> The difficulty is of course finding out which packages need host-pkgconf. It
>> seems it's not as simple as searching for FindPkgConfig in the CMakeLists.txt
>> files of each cmake package, because there are other modules that implicitly use
>> this. So we'd have to make a list of all those modules and check for all of
>> them. And then of course there are the packages that install new cmake modules
>> that use this, but which don't use FindPkgConfig (or even cmake) themselves...
>>
>> In 3d475ee0 you added the unconditional host-pkgconf dependency to work around
>> this problem. If we remove that dependency, the autobuilders should detect the
>> missing host-pkgconf dependencies even when host-cmake is used.
>
> The workaround Samuel added in that commit is in package/cmake/cmake.mk:
>
> +HOST_CMAKE_DEPENDENCIES = host-pkgconf
>
> This could probably ported to my patch in package/pkg-cmake.mk:
>
> +ifeq ($$(BUILD_HOST_CMAKE),YES)
> $(2)_DEPENDENCIES += host-cmake
> +else
> +$(2)_DEPENDENCIES += host-pkgconf
> +endif
I'm reviving this old patch, and after speaking with Thomas I chose the
above strategy. It solves the issue raised by Samuel, thus my patch can
work properly. It does not fix the specific packages depending on
host-pkgconf, but that's a separate issue so I left it for another series.
v3 on the way.
--
Luca
prev parent reply other threads:[~2016-07-01 15:47 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-02-05 11:07 [Buildroot] [PATCH v2] Don't build host-cmake if it is available on the build host Luca Ceresoli
2016-02-08 19:01 ` Yann E. MORIN
2016-02-08 23:48 ` Luca Ceresoli
2016-02-09 22:13 ` Arnout Vandecappelle
2016-02-11 21:50 ` Luca Ceresoli
2016-02-16 13:55 ` Samuel Martin
2016-02-16 15:08 ` Arnout Vandecappelle
2016-02-16 16:53 ` Luca Ceresoli
2016-02-16 22:08 ` Arnout Vandecappelle
2016-07-01 15:47 ` Luca Ceresoli [this message]
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=57769078.8000407@lucaceresoli.net \
--to=luca@lucaceresoli.net \
--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