All of lore.kernel.org
 help / color / mirror / Atom feed
From: Douglas Royds <douglas.royds@taitradio.com>
To: openembedded-devel@lists.openembedded.org
Subject: Re: A new bitbake extension: .bbappend files
Date: Mon, 19 Jul 2010 12:02:05 +1200	[thread overview]
Message-ID: <4C4395FD.20604@taitradio.com> (raw)
In-Reply-To: <1279290319.10837.1747.camel@rex>

On 17/07/10 02:25, Richard Purdie wrote:
> Whilst our layers mechanism, is great it does have a drawback which has
> bugged me for a while. If you have a recipe like pointercal which has
> machine specific information in it and you have your new machine code in
> a layer, how do you add a pointercal file for your machine?
>
> Answer is you copy the whole pointercal recipe and files into your
> layer, then add the single file for your machine.
>    

For our overlay distro, I solved this problem as follows (in 
"conf/distro/tait.conf"):

# Compute a FILESPATHBASE that will cause the FILESPATH search string 
(for file:// URIs) to
# list tait.openembedded directories first, and org.openembedded 
directories second.
# This allows us to put a single file, eg. lighttpd.conf, into our 
tait.openembedded distribution,
# and it will be picked up by OE in preference to the deault lighttpd.conf.
# The directory containing the recipe is not necessarily the same as the 
package name.
# For instance, for lighttpd_1.2.3.bb, we want
# FILE_DIRBASENAME = lighttpd
# FILESPATHBASE = 
"/home/roydsd/Work/DBS/tait.openembedded/branches/2.6.32/recipes/lighttpd:
# 
/home/roydsd/Work/DBS/org.openembedded.dev/branches/2010-02-23/recipes/lighttpd"
# BBFILES is a space-separated list of /path/to/recipes/*/*.bb patterns.
# Split each pattern at the recipes keyword to get 
/home/roydsd/Work/DBS/tait.oe/trunk/,
# then tack on recipes/lighttpd, and
# join the whole lot together with colons
FILE_DIRBASENAME = 
"${@os.path.basename(os.path.dirname(bb.data.getVar('FILE', d)))}"
FILESPATHBASE = ${@':'.join([ pattern.split('recipes')[0] + 
'recipes/${FILE_DIRBASENAME}' for pattern in '${BBFILES}'.split() ])}

For example:

tait.openembedded/trunk/recipes/ntp/
└── files/
└── ntp.conf

BBFILES="/home/roydsd/Work/DBS/tait.openembedded/trunk/recipes/*/*.bb 
/home/roydsd/Work/DBS/org.openembedded.dev/branches/2010-02-23/recipes/*/*.bb"
FILESPATHBASE="/home/roydsd/Work/DBS/tait.openembedded/trunk/recipes/ntp:/home/roydsd/Work/DBS/org.openembedded.dev/branches/2010-02-23/recipes/ntp"

Does this achieve what you had in mind?
Douglas.
=======================================================================
This email, including any attachments, is only for the intended
addressee.  It is subject to copyright, is confidential and may be
the subject of legal or other privilege, none of which is waived or
lost by reason of this transmission.
If the receiver is not the intended addressee, please accept our
apologies, notify us by return, delete all copies and perform no
other act on the email.
Unfortunately, we cannot warrant that the email has not been
altered or corrupted during transmission.
=======================================================================




  parent reply	other threads:[~2010-07-19  5:39 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-07-16 14:25 A new bitbake extension: .bbappend files Richard Purdie
2010-07-16 14:35 ` George C. Huntington, III
2010-07-16 15:37   ` Carl Simonson
2010-07-16 15:46 ` [Bitbake-dev] " Michael Smith
2010-07-16 16:16   ` Chris Larson
2010-07-16 16:24   ` Richard Purdie
2010-07-16 16:53     ` Frans Meulenbroeks
2010-07-18  8:12       ` Esben Haabendal
2010-07-18 10:06 ` Detlef Vollmann
2010-07-18 15:13   ` Chris Larson
2010-07-18 16:01     ` Detlef Vollmann
2010-07-18 16:06       ` Chris Larson
2010-07-18 19:24         ` Detlef Vollmann
2010-07-18 20:25           ` Richard Purdie
2010-07-18 21:13             ` Detlef Vollmann
2010-07-19  8:31           ` Hauser, Wolfgang (external)
2010-07-18 19:47 ` Frans Meulenbroeks
2010-07-18 20:52   ` Chris Larson
2010-07-18 20:57     ` Frans Meulenbroeks
2010-07-19  0:02 ` Douglas Royds [this message]
2010-07-19 20:50 ` Tom Rini
2010-07-19 21:22   ` Chris Larson
2010-07-19 21:24     ` Chris Larson
2010-07-20  7:28       ` Frans Meulenbroeks
2010-07-20 14:06         ` Chris Larson
2010-07-20 15:19           ` Tom Rini
2010-07-20 15:50             ` Tom Rini
2010-07-20 15:52             ` Michael Smith
2010-07-20 16:06               ` Chris Larson
2010-07-20 16:29                 ` Frans Meulenbroeks
2010-07-20 16:54                   ` Chris Larson
2010-08-03 10:04                     ` Frans Meulenbroeks
2010-08-03 12:53                       ` Richard Purdie
2010-08-03 19:30                       ` Khem Raj
2010-08-03 13:26 ` [Bitbake-dev] " Richard Purdie
2010-08-03 14:13   ` Chris Larson
2010-08-04  4:09   ` Khem Raj
2010-08-04 14:40     ` Richard Purdie
2010-08-04 19:00       ` Khem Raj

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=4C4395FD.20604@taitradio.com \
    --to=douglas.royds@taitradio.com \
    --cc=openembedded-devel@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 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.