From: Trevor Woerner <trevor.woerner@linaro.org>
To: openembedded-core@lists.openembedded.org
Subject: Re: Qt in OE-core
Date: Thu, 09 Jan 2014 09:21:39 -0500 [thread overview]
Message-ID: <52CEB073.1020506@linaro.org> (raw)
In-Reply-To: <1389176918.6899.75.camel@ted>
On 01/08/14 05:28, Richard Purdie wrote:
> On Tue, 2014-01-07 at 20:23 +0100, Martin Jansa wrote:
>> With PACKAGECONFIGs which can list optional dependencies which aren't
>> included in the the layer itself it's now easier to have recipe with
>> optional qt5 support in oe-core, but qt5 itself in separate meta-qt5.
> What dependencies on other layers does meta-qt5 have?
>
> If the policy is all qt5 things into meta-qt5, the risk is a fairly
> large set of layer dependencies for meta-qt5.
>
> There is some perception I don't like external layers which isn't true.
>
> What I do dislike is "dependency creep". If the meta-qt5 isn't usable
> without pulling in chunks of meta-oe for example, I'd think that rather
> sad and it might as well move to meta-oe at that point.
Theoretically, which dependencies a given usage of qt5 has depends on
which PACKAGECONFIGs are used. In other words, one OE image or one OE
distribution might want to use OpenGL, while another might decide
against it.
http://qt-project.org/doc/qt-5/linux-requirements.html
If we did move to breaking more things out into more layers, would the
resulting increase in the number of layers be easier to manage if we
didn't have to depend on the user correctly setting up their
conf/bblayers.conf? I admit I'm not familiar with a large number of
applications of OE/Yocto, but of the 3 of which I am aware (gumstix,
imx53qsb, and internally at Linaro) all have moved to using repo (an
external tool) and custom initialization scripts to better handle
setting up a user's layers and configuration.[1][2]
What if a distro configuration file, an image.bb, a MACHINE
specification, or a layer could specify its dependencies itself? Would
this lead to "DLL hell"[3] or would this be the missing ingredient which
keeps some projects from having to resort to using external tools?
If a distro has the power to decide which UI library to use on which
backend, should it then be up to the distro configuration to specify
which layer(s) to add, and maybe even which branch/commit to use, and
maybe also specify these layers' priority and ordering? Maybe in a
different scenario this decision wants to be handled by the image
configuration instead. In either case, we wouldn't have to rely on
external tools (repo) and manual intervention (hoping the user updates
conf/bblayers.conf correctly) to get our layers right before we can build.
Same goes for meta-qt5. If meta-qt5 has dependencies on specific other
layers, maybe those dependencies could be part of the meta-qt5
definition such that these other layers are pulled in automatically? Or
maybe a specific choice of PACKAGECONFIG would trigger the required
dependency?
Would it be possible to add a step in the build process that uses
bitbake's fetcher to get or sync a project's layers before starting the
process of fetching a recipe's sources based on information collected
from hints in the various configuration files?
[1]
https://github.com/gumstix/Gumstix-YoctoProject-Repo/blob/master/README.md
[2] https://github.com/Freescale/fsl-community-bsp-platform
[3] http://en.wikipedia.org/wiki/DLL_Hell
next prev parent reply other threads:[~2014-01-09 14:21 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-01-07 18:27 Qt in OE-core Trevor Woerner
2014-01-07 19:23 ` Martin Jansa
2014-01-08 10:28 ` Richard Purdie
2014-01-09 14:21 ` Trevor Woerner [this message]
2014-01-08 12:05 ` Otavio Salvador
2014-01-08 15:56 ` Paul Eggleton
2014-01-08 16:29 ` Martin Jansa
2014-01-08 18:44 ` Trevor Woerner
2014-01-08 19:39 ` Martin Jansa
2014-01-08 23:21 ` Paul Eggleton
2014-01-08 23:57 ` Richard Purdie
2014-01-09 0:06 ` Philip Balister
2014-01-09 0:32 ` Martin Jansa
2014-01-09 6:32 ` Koen Kooi
2014-01-09 12:57 ` Otavio Salvador
2014-01-09 12:56 ` Otavio Salvador
2014-01-09 15:17 ` Phil Blundell
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=52CEB073.1020506@linaro.org \
--to=trevor.woerner@linaro.org \
--cc=openembedded-core@lists.openembedded.org \
/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