From: Mark Hatle <mark.hatle@windriver.com>
To: <openembedded-core@lists.openembedded.org>
Subject: Re: Using external source trees with OE-Core
Date: Fri, 24 Feb 2012 08:41:09 -0600 [thread overview]
Message-ID: <4F47A185.9070303@windriver.com> (raw)
In-Reply-To: <4F479587.2080402@opendreambox.org>
On 2/24/12 7:49 AM, Andreas Oberritter wrote:
> On 24.02.2012 13:55, Richard Purdie wrote:
>> Someone recently asked me about using external source trees with
>> OE-Core. I was aware of srctree.bbclass in OE-Classic and did start
>> looking at it but it has various elements I wasn't so keen on. I
>> therefore wondered if I could improve upon it. I did start from that
>> code base but came up with:
>>
>> http://git.yoctoproject.org/cgit.cgi/poky-contrib/commit/?h=rpurdie/a0&id=ac8a54c18c33aaab6758c34a3d6093d3d3384cee
>> [patch inline below]
>>
>> which I've called externalsrc.bbclass since it behaves a bit
>> differently. In particular, all the usual task targets are available.
>>
>> As an example usage with the above patch applied:
>>
>> cd ~
>> tar -xvzf $DL_DIR/libfm-0.1.17.tar.gz
>> (creates libfm-0.1.17 in my homedir)
>>
>> edit libfm_0.1.17.bb and add:
>>
>> inherit externalsrc
>> S = "/home/richard/libfm-0.1.17"
>
> Do I need to edit libfm_0.1.17.bb in-place, or can it be stored outside
> my layers to be built with bitbake -b, for example?
You should be able to add a bbappend for this item, in a custom development
layer and not modify the original .bb. It will still require the two line
configuration change (and a custom layer configuration... but I recommend that
anyway.)
> Does S need to contain an absolute path, or could it be set to a path
> relative to the location of the recipe?
I don't know for this development.... but relative can get very messy,
especially when all of the project, work dir, etc can be overridden to create a
custom environment for someone. Enforcing an absolute path isn't a bad idea here.
> It would be nice if it was possible to include bitbake recipes in the
> source trees of my projects, which "just work".
Might be possible in something like base.bbclass to add the inherit if a value
is set.. then in local.conf you could do something like:
EXTERNALSRC_libfm = "/home/richard/libfm-0.1.17"
And if it's set, the class could do the reset? That would certainly be easier
then a layer.
--Mark
> I think this was possible with srctree.bbclass, though I never had it
> working reliably. I think bitbake -cclean always raised errors.
>
> Regards,
> Andreas
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
next prev parent reply other threads:[~2012-02-24 14:49 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-02-24 12:55 Using external source trees with OE-Core Richard Purdie
2012-02-24 13:49 ` Andreas Oberritter
2012-02-24 14:41 ` Mark Hatle [this message]
2012-02-24 14:01 ` Bruce Ashfield
2012-02-24 16:55 ` McClintock Matthew-B29882
2012-02-24 17:36 ` Richard Purdie
2012-02-24 17:44 ` McClintock Matthew-B29882
2012-02-24 16:59 ` Chris Larson
2012-02-24 18:25 ` Rich Pixley
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=4F47A185.9070303@windriver.com \
--to=mark.hatle@windriver.com \
--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 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.