Openembedded Core Discussions
 help / color / mirror / Atom feed
From: "Peter A. Bigot" <pab@pabigot.com>
To: Richard Purdie <richard.purdie@linuxfoundation.org>,
	Martin Jansa <martin.jansa@gmail.com>,
	"Burton, Ross" <ross.burton@intel.com>,
	openembedded-core@lists.openembedded.org
Cc: "yocto@yoctoproject.org" <yocto@yoctoproject.org>,
	Rudolf J Streif <rudolf.streif@gmail.com>
Subject: Re: Wrong sstate signatures for cross toolchain Was: [yocto] Building gdb-7.10 for arm with master
Date: Thu, 10 Mar 2016 04:34:24 -0600	[thread overview]
Message-ID: <56E14DB0.7040500@pabigot.com> (raw)
In-Reply-To: <1457564551.2804.199.camel@linuxfoundation.org>

On 03/09/2016 05:02 PM, Richard Purdie wrote:
> On Wed, 2016-03-09 at 23:50 +0100, Martin Jansa wrote:
>> What's even more interesting is that even gcc-cross-initial has
>> different signatures for 2 ARM MACHINEs with different DEFAULTTUNES
>>
>> OE qemuarm7@ ~/build/oe-core $ grep ^DEFAULTTUNE= env.gdb-cross-arm*
>> env.gdb-cross-arm:DEFAULTTUNE="armv5te"
>> env.gdb-cross-arm7:DEFAULTTUNE="armv7a-neon"
>>
>> OE qemuarm7@ ~/build/oe-core $ ls tmp-glibc/sstate
>> -diff/1457556601/*/*/*gcc-cross-initial*/*do_configure*
>> tmp-glibc/sstate-diff/1457556601/qemuarm/x86_64-linux/gcc-cross
>> -initial-arm/5.3.0
>> -r0.do_configure.sigdata.e54e7a04acf1029cc37463114c7e4dba
>> tmp-glibc/sstate-diff/1457556601/qemuarm7/x86_64-linux/gcc-cross
>> -initial-arm/5.3.0
>> -r0.do_configure.sigdata.3496e3dde08a49b14462741cc6f8d239
>> OE qemuarm7@ ~/build/oe-core $ bitbake-diffsigs tmp-glibc/sstate
>> -diff/1457556601/*/*/*gcc-cross-initial*/*do_configure*
>> basehash changed from 5848199c69eee0db746de21c5458c13d to
>> 673cd8d19bc4cbea132900a670593df6
>> Variable EXTRA_OECONF value changed from '--with-newlib --without
>> -headers --disable-shared --disable-threads --disable-multilib -
>> -disable-__cxa_atexit --enable-languages=c --program
>> -prefix=${TARGET_PREFIX} --with-sysroot=/not/exist --with-build
>> -sysroot=${GCCCROSS_BUILDSYSROOT} ${EXTRA_OECONF_INITIAL}
>> ${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', '--with
>> -ld=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}ld.bfd', '', d)}
>> ${EXTRA_OECONF_GCC_FLOAT} ${@get_gcc_ppc_plt_settings(bb, d)} --with
>> -native-system-header-dir=${SYSTEMHEADERS}${DISABLE_STATIC}
>> ${@gettext_oeconf(d)}
>> DISTRO_FEATURES{ld-is-gold} = Unset' to '--with-newlib --without
>> -headers --disable-shared --disable-threads --disable-multilib -
>> -disable-__cxa_atexit --enable-languages=c --program
>> -prefix=${TARGET_PREFIX} --with-sysroot=/not/exist --with-build
>> -sysroot=${GCCCROSS_BUILDSYSROOT} ${EXTRA_OECONF_INITIAL}
>> ${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', '--with
>> -ld=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}ld.bfd', '', d)}
>> ${EXTRA_OECONF_GCC_FLOAT} ${@get_gcc_ppc_plt_settings(bb, d)} --with
>> -native-system-header-dir=${SYSTEMHEADERS}${DISABLE_STATIC}
>> ${@gettext_oeconf(d)} --with-arch=armv7-a
>> DISTRO_FEATURES{ld-is-gold} = Unset'
> To answer my own question, it looks like:
>
> gcc-configure-common.inc:EXTRA_OECONF_append_armv6 = " --with-arch=armv6"
> gcc-configure-common.inc:EXTRA_OECONF_append_armv7a = " --with-arch=armv7-a"
> gcc-configure-common.inc:EXTRA_OECONF_append_armv7ve = " --with-arch=armv7-a"
>
> which effectively comes from:
>
> http://git.yoctoproject.org/cgit.cgi/poky/commit/meta/recipes-devtools/gcc/gcc-configure-common.inc?id=c0a071e16ec04f485f06eece5b807e5afbe1c1f1
>
> The concept of having one gcc for each arch precludes such changes :(.

Yes.  Fundamentally the Yocto concept of arch appears to be inconsistent 
with gcc's concept in that the defaults for Yocto don't match the 
defaults for gcc on the same platform.  At the time I submitted that 
patch reworking how the toolchain is built wasn't feasible.

I'm not working with Yocto at this time so can't contribute to the 
solution, however if/when I get the opportunity I can help verify that 
the bug the patch fixed hasn't been re-introduced.

Peter
> I believe these overrides need to move to the gcc-target.inc file.
>
> Cheers,
>
> Richard
>



      parent reply	other threads:[~2016-03-10 10:41 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <18448427.V3ACvxT67R@rjs-zotac.streifs.net>
     [not found] ` <CAJTo0La2CZAKw0Cd4_NpPLt=qXy3x3Arv36huhUMmCH3tV14YA@mail.gmail.com>
2016-03-09 22:50   ` Wrong sstate signatures for cross toolchain Was: [yocto] Building gdb-7.10 for arm with master Martin Jansa
2016-03-09 22:51     ` Richard Purdie
2016-03-09 23:02     ` Richard Purdie
2016-03-09 23:52       ` Martin Jansa
2016-03-10  0:09         ` Richard Purdie
2016-03-10 10:34       ` Peter A. Bigot [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=56E14DB0.7040500@pabigot.com \
    --to=pab@pabigot.com \
    --cc=martin.jansa@gmail.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=richard.purdie@linuxfoundation.org \
    --cc=ross.burton@intel.com \
    --cc=rudolf.streif@gmail.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox