[yocto] How do I use layers to replacing system configuration files?

Gary Thomas gary at mlbassoc.com
Sun Feb 20 10:04:18 PST 2011


On 02/20/2011 10:58 AM, Chris Tapp wrote:
> I want to be able to change the contents of 'interfaces' in a way that means I don't have to change the meta/ tree. It looks like layers should do this for me (section 3.4.1 of the
> Poky Reference Manual), but I can't seem to get my files to take precedence.
>
> For example, a default build for laverne-4.0.1 uses core-recipes/netbase/netbase/qemux86/interfaces.
>
> I've created an empty copy of the meta-emenlow layer, changed its layer.conf as required and added it in to bblayers.conf. I can tell this is getting picked up as I get a warning
> that it contains no .bb files (it will eventually).
>
> However, my meta-new/packages/netbase/netbase/qemux86/interfaces file isn't overriding the one above.
>
> What else do I need to do? Do I need to have something other that .bb and .bbappend added to BBPATH (or something else)?

You'll need a meta-new/packages/netbase/netbase_4.44.bbappend file which
tells bitbake where to find your override files.  I do this all the time,
for example, I have a board with two targets:
   $ tree meta-ppc/packages/netbase/
   meta-ppc/packages/netbase/
   ├── netbase-4.44
   │   ├── cobra
   │   │   ├── interfaces
   │   └── ppc8379
   │       ├── interfaces
   └── netbase_4.44.bbappend
   $ cat meta-ppc/packages/netbase/netbase_4.44.bbappend
   THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}"
   FILESPATH =. "${@base_set_filespath(["${THISDIR}/${PN}-${PV}"], d)}:"

-- 
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------



More information about the yocto mailing list