All of lore.kernel.org
 help / color / mirror / Atom feed
From: Richard Purdie <richard.purdie@linuxfoundation.org>
To: Mike Crowe <mac@mcrowe.com>
Cc: openembedded-core@lists.openembedded.org
Subject: Re: [PATCH] sstate.bbclass: binutils-cross is not a safe dependency
Date: Thu, 13 Jun 2013 16:00:25 +0100	[thread overview]
Message-ID: <1371135625.20823.59.camel@ted> (raw)
In-Reply-To: <1371132404-27250-1-git-send-email-mac@mcrowe.com>

On Thu, 2013-06-13 at 15:06 +0100, Mike Crowe wrote:
> gcc always needs binutils in order to be useful. If binutils-cross is
> considered to be a safe dependency then gcc-cross can be reconstructed into
> the sysroot without binutils. Anyone who tries to use the compiler will end
> up using the system binutils which is either a bad thing (relying on system
> tools) or a very bad thing (it will be for the wrong architecture.)
> 
> In the absence of a better fix let's just stop binutils-cross being
> considered a safe dependency. The downside of this is that any
> reconstructing any other recipe that depends on binutils from the sstate
> cache will also cause binutils to be reconstructed.
> 
> Signed-off-by: Mike Crowe <mac@mcrowe.com>
> ---
>  meta/classes/sstate.bbclass |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> I tried and failed to come up with a better fix for this problem. This
> fix at least means that everything will build using the correct
> version of binutils even if slightly more files are reconstructed from
> the sstate cache than would be desirable.

The correct fix for this is to whitelist the gcc depending on binutils
case but leave this "safe" version in place.

Cheers,

Richard


> 
> diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass
> index 28dc312..0de62d8 100644
> --- a/meta/classes/sstate.bbclass
> +++ b/meta/classes/sstate.bbclass
> @@ -655,7 +655,7 @@ def setscene_depvalid(task, taskdependees, notneeded, d):
>      def isNativeCross(x):
>          return x.endswith("-native") or x.endswith("-cross") or x.endswith("-cross-initial")
>      def isSafeDep(x):
> -        if x in ["quilt-native", "autoconf-native", "automake-native", "gnu-config-native", "libtool-native", "pkgconfig-native", "gcc-cross", "binutils-cross", "gcc-cross-initial"]:
> +        if x in ["quilt-native", "autoconf-native", "automake-native", "gnu-config-native", "libtool-native", "pkgconfig-native", "gcc-cross", "gcc-cross-initial"]:
>              return True
>          return False
>      def isPostInstDep(x):




      reply	other threads:[~2013-06-13 15:00 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-05-20 12:22 [PATCH] kernel.bbclass: Add dependency on binutils Mike Crowe
2013-05-20 17:37 ` Khem Raj
2013-05-20 20:29   ` Mike Crowe
2013-05-20 22:25   ` Richard Purdie
2013-05-21  8:41     ` Mike Crowe
2013-06-13 14:06       ` [PATCH] sstate.bbclass: binutils-cross is not a safe dependency Mike Crowe
2013-06-13 15:00         ` Richard Purdie [this message]

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=1371135625.20823.59.camel@ted \
    --to=richard.purdie@linuxfoundation.org \
    --cc=mac@mcrowe.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.