From: Richard Purdie <richard.purdie@linuxfoundation.org>
To: Robert Yang <liezhi.yang@windriver.com>,
Christopher Larson <kergoth@gmail.com>,
Denys Dmytriyenko <denis@denix.org>
Cc: openembedded-core@lists.openembedded.org
Subject: Re: [PATCH 1/1] base.bbclass: fix COMPATIBLE_MACHINE
Date: Mon, 11 Apr 2016 09:29:13 +0100 [thread overview]
Message-ID: <1460363353.9308.23.camel@linuxfoundation.org> (raw)
In-Reply-To: <570B07DD.3080309@windriver.com>
On Mon, 2016-04-11 at 10:11 +0800, Robert Yang wrote:
>
> On 04/11/2016 09:56 AM, Christopher Larson wrote:
> > On Sun, Apr 10, 2016 at 6:17 PM Robert Yang <
> > liezhi.yang@windriver.com
> > <mailto:liezhi.yang@windriver.com>> wrote:
> >
> >
> >
> > On 04/11/2016 03:06 AM, Denys Dmytriyenko wrote:
> > > On Sun, Apr 10, 2016 at 07:14:56AM -0700, Robert Yang wrote:
> > >> It mismatched such as qemux86 and qemux86-64 which was
> > incorrect, for
> > >> example:
> > >> COMPATIBLE_MACHINE = "(qemux86)"
> > >
> > > That will match qemux86 and qemux86-64 and is by design!
> > It's a regular
> >
> > I'm afraid no, please see my last reply, for others such as
> > MACHINE_OVERRIDES, they never design to work in such a way, so
> > I don't
> > think that COMPATIBLE_MACHINE should work in this way. If you
> > really
> > want to match more, I think that you can set it as
> > "(qemux86.*)" or
> > something familiar.
> >
> >
> > That's an apples and oranges comparison. MACHINEOVERRIDES is part
> > of OVERRIDES,
> > which has *completely* different semantics than COMPATIBLE_*.
> > COMPATIBLE_MACHINE
> > is a regex variable more like BBMASK than anything else, and it's
> > been that way
> > since we introduced it. OVERRIDES has nothing to do with regular
> > expressions.
>
> Since introduced ? I did a grep in oe-core and meta-openembedded, it
> seems
> that no ?
>
> In oe-core:
>
> $ grep 'COMPATIBLE_MACHINE.*qemux86' meta/recipes* -r
> linux-yocto_4.4.bb:COMPATIBLE_MACHINE =
> "qemuarm|qemuarm64|qemux86|qemuppc|qemumips|qemumips64|qemux86-64"
> linux-yocto-tiny_4.4.bb:COMPATIBLE_MACHINE = "(qemux86)"
> linux-yocto-dev.bb:COMPATIBLE_MACHINE =
> "(qemuarm|qemux86|qemuppc|qemumips|qemumips64|qemux86-64)"
> linux-yocto-tiny_4.1.bb:COMPATIBLE_MACHINE = "(qemux86)"
> linux-yocto-rt_4.1.bb:COMPATIBLE_MACHINE =
> "(qemux86|qemux86-64|qemuarm|qemuppc|qemumips)"
> linux-yocto-rt_4.4.bb:COMPATIBLE_MACHINE =
> "(qemux86|qemux86-64|qemuarm|qemuppc|qemumips)"
> linux-yocto_4.1.bb:COMPATIBLE_MACHINE =
> "qemuarm|qemuarm64|qemux86|qemuppc|qemumips|qemumips64|qemux86-64"
>
> In meta-openembedded:
> vboxguestdrivers_4.3.30.bb:COMPATIBLE_MACHINE = "(qemux86|qemux86
> -64)"
>
> We can see that the only one sets qemux86 but no set qemux86-64 is
> linux-yocto-tiny:
> COMPATIBLE_MACHINE = "(qemux86)"
>
> And it really doesn't work with qemux86-64.
The trouble is as others have mentioned, COMPATIBLE_MACHINE has always
worked this way. We can't really change that without a wider discussion
and at this point in the release in particular, I can't take such a
patch.
We do really need to think about the behaviour as it does do unexpected
things and catch people out.
I'd suggest you add a '$' to the end of the regex in linux-yocto-tiny
to resolve this. We could also add '$' to the end of the other usages
and make it clear it is a regex?
Cheers,
Richard
next prev parent reply other threads:[~2016-04-11 8:29 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-04-10 14:14 [PATCH 0/1] base.bbclass: fix COMPATIBLE_MACHINE Robert Yang
2016-04-10 14:14 ` [PATCH 1/1] " Robert Yang
2016-04-10 17:30 ` Christopher Larson
2016-04-11 1:10 ` Robert Yang
2016-04-10 19:06 ` Denys Dmytriyenko
2016-04-11 1:17 ` Robert Yang
2016-04-11 1:56 ` Christopher Larson
2016-04-11 2:11 ` Robert Yang
2016-04-11 2:29 ` Denys Dmytriyenko
2016-04-11 13:12 ` Denys Dmytriyenko
2016-04-11 8:29 ` Richard Purdie [this message]
2016-04-11 8:33 ` Robert Yang
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=1460363353.9308.23.camel@linuxfoundation.org \
--to=richard.purdie@linuxfoundation.org \
--cc=denis@denix.org \
--cc=kergoth@gmail.com \
--cc=liezhi.yang@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.