From: Paul Eggleton <paul.eggleton@linux.intel.com>
To: Felix01 Fischer <felix01.fischer@iav.de>
Cc: yocto@yoctoproject.org
Subject: Re: Is it possible to add machine specific changes in a separate custom layer?
Date: Tue, 24 Sep 2013 09:52 +0100 [thread overview]
Message-ID: <2378070.oljIghCm7B@helios> (raw)
In-Reply-To: <OFC7737DE7.A32DB5E9-ONC1257BEF.0059D095-C1257BEF.005B946E@retarus.de>
Hi Felix,
On Monday 23 September 2013 18:40:19 Felix01 Fischer wrote:
> My goal is to build a custom-layer which supports 2 devices building on
> top of the meta-intel and meta-ivi layer without changing anything except
> my meta-custom layer.
>
> Is it possible to have machine specific changes in a separate layer
> building on top of another layer?
> I want to costumise meta-intel/meta-crownbay and
> meta-intel/meta-chiefriver without changing something inside the
> meta-intel layer.
> My goal is to have modifications for the meta-intel layer in a meta-custom
> layer, which only get considered if a certain MACHINE ?= "XXXX" (crownbay
> or chiefriver) from the meta-intel layer is set.
> Is this possible?
This is definitely possible - the key is to make use of bbappends and machine
overrides. Append files are covered here:
http://www.yoctoproject.org/docs/current/dev-manual/dev-manual.html#using-bbappend-files
Overrides effectively make an assignment statement apply only when the
specified override appears in the value of the OVERRIDES variable. For
example:
VARIABLENAME = "the default value"
VARIABLENAME_crownbay = "value specific to crownbay machine"
You can use append/prepend to add to the variable value instead of just
setting it:
ANOTHERVARIABLE_append_chiefriver = " appended only for chiefriver"
ANOTHERVARIABLE_prepend_crownbay = "prepended only for crownbay "
By default, the value of OVERRIDES includes the value of MACHINE, DISTRO, etc.
If you run bitbake -e | less and then search (with /) for OVERRIDES= you can
see how how OVERRIDES is constructed.
> I have the same question regarding DISTRO. I want some changes to be
> considered if DISTRO = poky and some other changes when DISTRO =
> poky-ivi-systemd.
Same as above only you'd be using the distro name as the override e.g.
SOMETHING_append_poky = " whatever poky-specific additions are needed"
> Is it possible to maintain these modifications in ONE custom layer or do I
> need to have seperate layers (one for poky, one for poky-ivi-systemd and
> machine specific changes inside the meta-intel layer)?
You don't have to, but generally we recommend keeping the machine
customisations separate from policy (distro) customisations. This can make
things easier if you have to change the machine later.
Cheers,
Paul
--
Paul Eggleton
Intel Open Source Technology Centre
next prev parent reply other threads:[~2013-09-24 8:52 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-09-23 16:40 Is it possible to add machine specific changes in a separate custom layer? Felix01 Fischer
2013-09-24 8:52 ` Paul Eggleton [this message]
2013-09-25 8:19 ` Antwort: " Felix01 Fischer
2013-09-25 12:33 ` Paul Eggleton
2013-09-26 10:59 ` Antwort: " Felix01 Fischer
2013-09-26 11:21 ` Paul Eggleton
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=2378070.oljIghCm7B@helios \
--to=paul.eggleton@linux.intel.com \
--cc=felix01.fischer@iav.de \
--cc=yocto@yoctoproject.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 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.