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
>
prev 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