Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Mark Hatle <mark.hatle@windriver.com>
To: Randy MacLeod <randy.macleod@windriver.com>
Cc: Joe Slater <jslater@windriver.com>,
	openembedded-core@lists.openembedded.org
Subject: Re: [v2][PATCH 1/1] vala.bbclass: add dependency on vala
Date: Fri, 27 Sep 2013 09:45:23 -0500	[thread overview]
Message-ID: <52459A03.2000204@windriver.com> (raw)
In-Reply-To: <5244CDA3.7080607@windriver.com>

On 9/26/13 7:13 PM, Randy MacLeod wrote:
> On 13-09-26 02:52 PM, Joe Slater wrote:
>> This class points the inheritor, if it is a target,
>> to directories in the target sysroot, so we want to
>> be sure the .vapi files are there.
>>
>> Signed-off-by: Joe Slater <jslater@windriver.com>
>> ---
>>    meta/classes/vala.bbclass |    8 +++++---
>>    1 files changed, 5 insertions(+), 3 deletions(-)
>>
>> diff --git a/meta/classes/vala.bbclass b/meta/classes/vala.bbclass
>> index c7db08c..3b70a04 100644
>> --- a/meta/classes/vala.bbclass
>> +++ b/meta/classes/vala.bbclass
>> @@ -1,9 +1,11 @@
>>    # Vala has problems with multiple concurrent invocations
>>    PARALLEL_MAKE = ""
>>
>> -# Vala needs vala-native
>> -DEPENDS += "vala-native"
>> -DEPENDS_virtclass-native += "vala-native"
>> +# Everyone needs vala-native and targets need vala, too,
>> +# because that is where target builds look for .vapi files.
>> +#
>> +VALADEPENDS_class-target = "vala"
>> +DEPENDS_append = " vala-native ${VALADEPENDS}"
>>
>>    # Our patched version of Vala looks in STAGING_DATADIR for .vapi files
>>    export STAGING_DATADIR
>>
>
>
> In response to your previous patch, Richard P said:
>> In class code this is a really bad idea. Why? Imagine a recipe which
>> does:
>>
>> DEPENDS =+ "x"
>> DEPENDS_class-native = "y"
>>
>> The += on the class-native above will not do what you think.
>>
>> I'd recommend something like:
>>
>> VALADEPENDS = "vala vala-native"
>> VALADEPENDS_class-native = "vala-native"
>> DEPENDS += "${VALADEPENDS}"
>>
>> Most other classes actually use _append on DEPENDS to ensure consistent
>> behaviour.
>
> so send it to oe-core and see what they say.
> Mark H any comments?

Good catch, I had missed this.

Ya the overrides (class-native) run -after- the rest of the system.  So:

DEPENDS = "foobar"
DEPENDS =+ "x"
DEPENDS_class-native =+ "y"

For "normal" it' would be "x foobar"
For "native" it would be "y"

This is because that system evals and gets:

DEPENDS = "foobar"  (DEPENDS = "foobar")
DEPENDS =+ "x"      (DEPENDS = "x foobar")
DEPENDS_class-native =+ "y"  (DEPENDS_class-native = "y")

invoke 'class-native' override,  DEPENDS = "y"

--Mark

> // Randy
>



  reply	other threads:[~2013-09-27 14:45 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-09-26 18:52 [v2][PATCH 1/1] vala.bbclass: add dependency on vala Joe Slater
2013-09-27  0:13 ` Randy MacLeod
2013-09-27 14:45   ` Mark Hatle [this message]
2013-10-24 18:28 ` FW: " Slater, Joseph
2013-10-29 15:11 ` Saul Wold

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=52459A03.2000204@windriver.com \
    --to=mark.hatle@windriver.com \
    --cc=jslater@windriver.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=randy.macleod@windriver.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox