All of lore.kernel.org
 help / color / mirror / Atom feed
From: Richard Purdie <richard.purdie@linuxfoundation.org>
To: Matt Schuckmann <Matt.Schuckmann@planar.com>
Cc: Yocto Project <yocto@yoctoproject.org>
Subject: Re: Help me understand Openembedded variable expansion
Date: Thu, 30 Oct 2014 13:51:43 +0000	[thread overview]
Message-ID: <1414677103.7649.59.camel@ted> (raw)
In-Reply-To: <4B07ADD556F70043925DA2E9C5D4346D2FD87F98A8@MSXBEBVT12.planar.net>

On Tue, 2014-10-28 at 10:11 -0700, Matt Schuckmann wrote:
> So there is something I just don't get about how variables get
> created, expanded, interpreted, etc in Bitbake
> 
> For example I'm trying to copy some of the techniques in the Poky Tiny
> distribution to reduce my image size and build time. 
> One of the fragments is this one. 
> 
> # The mtrace script included by eglibc is a perl script. This means
> the system
> # will build perl in case this package is installed. Since we don't
> care about
> # this script, remove the dependency from here.
> RDEPENDS_${PN}-mtrace_pn-eglibc = ""
> 
> I put this in my distribution .conf file and I doesn't seem to do
> anything perl is still getting built. 
> Of course it doesn't help that I don't understand what does,
> especially in the context of the distribution .conf file. 
> 
> I also see hints in the code in debug output that the machine, image,
> or distribution names can automatically get appended to paths, or
> variables but I don't really understand how that works. 
> 
> I'm not even sure how to phrase a question around this, immediately
> I'd like to figure out why Perl is still getting built but ultimately
> I'd like to understand the variable rules better so I that I can
> better take advantage of this power tool. 

Perhaps have a look at "overrides" in the bitbake manual.

You can split RDEPENDS_${PN}-mtrace_pn-eglibc into components. Starting
on the RHS, "_pn-eglibc" is an override that applies to recipes where PN
= "eglibc". In those recipes, the variable becomes:

RDEPENDS_${PN}-mtrace = ""

and is basically overriding a dependency on perl that would other be
there, something like:

RDEPENDS_${PN}-mtrace = "perl".

Does that help?

Cheers,

Richard



  reply	other threads:[~2014-10-30 13:52 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-28 17:11 Help me understand Openembedded variable expansion Matt Schuckmann
2014-10-30 13:51 ` Richard Purdie [this message]
2014-11-03 22:38   ` Matt Schuckmann

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=1414677103.7649.59.camel@ted \
    --to=richard.purdie@linuxfoundation.org \
    --cc=Matt.Schuckmann@planar.com \
    --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.