All of lore.kernel.org
 help / color / mirror / Atom feed
From: Richard Purdie <richard.purdie@linuxfoundation.org>
To: Rich Persaud <persaur@gmail.com>,
	Mark Hatle <mark.hatle@windriver.com>,
	Ross Burton <ross.burton@intel.com>
Cc: openembedded-architecture
	<openembedded-architecture@lists.openembedded.org>,
	Alejandro Enedino Hernandez Samaniego
	<alejandro.enedino.hernandez-samaniego@xilinx.com>,
	OE-core <openembedded-core@lists.openembedded.org>
Subject: Re: [Openembedded-architecture] Incorporating deploy artefacts from one multiconfig in another multiconfig
Date: Thu, 21 Feb 2019 23:51:14 +0000	[thread overview]
Message-ID: <6673aa01794a9a5466969fa4a39d28b46649173d.camel@linuxfoundation.org> (raw)
In-Reply-To: <6F7B3258-B781-465F-AF58-E4E8EBA88012@gmail.com>

Multiconfig is meant to support this workflow. Unfortunately there are
open bugs and people haven't the time to work on it so its stalled.
That said, the key pieces are already there.

A picture is worth a thousand words. I thought a demo might interest
people and "prove" this can work.

To make it work you need four patches:

http://git.yoctoproject.org/cgit.cgi/poky-contrib/commit/?h=rpurdie/t222&id=b896b2238c100d486e7c43992b49001150749d04

http://git.yoctoproject.org/cgit.cgi/poky-contrib/commit/?h=rpurdie/t222&id=e5ef6b008e85f42b5e4ffd72fae7036dd68b2ea5

http://git.yoctoproject.org/cgit.cgi/poky-contrib/commit/?h=rpurdie/t222&id=5d2bd43d14315ef3212e0d09a16446bd74305a2f

http://git.yoctoproject.org/cgit.cgi/poky-contrib/commit/?h=rpurdie/t222&id=abdb83576b699448b76293294809aaa04b8e853b

The first two are fixes from Alejandro which haven't merged as they're
not right. The third patch was me hitting the fixes and bitbake to make
the demo work. That proves they're not right and hints at where we have
some problems in bitbake too. We can get those issues sorted fairly
easily and I'm going to block 2.7 M3 on them.

The final patch is the interesting one.

It adds a layer, meta-multiconfig-example layer with a README about how
to configure it. Basically you create two multiconfig configurations,
"musl" and "tiny".

The demo is to run "bitbake core-image-full-cmdline".

The result is a core-image-full-cmdline image with a tiny qemux86 image
and a musl based qemux86-64 image installed into /var/lib/machines/

The way it does this is creative, having a recipe called image-packer
which creates virtclass variants of itself which depend on the
appropriate multiconfig. It pulls in the images and creates a package
containing them which the bbappend to core-image-full-cmdline can then
install. It'd be very easy to turn this into a list driven piece of
code rather than the two values currently listed.

Its late here, some of the above code is horrible. I have rushed this
but hopefully it shows this is possible! :)

I've love to turn this into an oe-selftest, that is my ultimate 
intention for this code.

As things stand today you can't query one multiconfig from another. As
this demo shows, that doesn't need to stop you making interesting
things though. We will do something with such querying eventually to
make things easier but until then, much is still possible.

Cheers,

Richard




  parent reply	other threads:[~2019-02-21 23:51 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-02-21 15:44 Incorporating deploy artefacts from one multiconfig in another multiconfig Burton, Ross
2019-02-21 18:28 ` [Openembedded-architecture] " Mark Hatle
     [not found]   ` <6F7B3258-B781-465F-AF58-E4E8EBA88012@gmail.com>
2019-02-21 23:51     ` Richard Purdie [this message]
     [not found]       ` <4C429FC4-E68A-4AFC-B8D6-61DFF45CE2AA@gmail.com>
2019-02-22  7:35         ` Richard Purdie
     [not found]           ` <9A802DA0-0509-4D9F-ADEB-B5EF17717806@gmail.com>
2019-03-21  9:57             ` Burton, Ross
2019-02-23 10:44         ` Richard Purdie
2020-02-10 17:10 Rich Persaud

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=6673aa01794a9a5466969fa4a39d28b46649173d.camel@linuxfoundation.org \
    --to=richard.purdie@linuxfoundation.org \
    --cc=alejandro.enedino.hernandez-samaniego@xilinx.com \
    --cc=mark.hatle@windriver.com \
    --cc=openembedded-architecture@lists.openembedded.org \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=persaur@gmail.com \
    --cc=ross.burton@intel.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.