On fre 10 jan 2014 16:15:08, Richard Purdie wrote:
On Fri, 2014-01-10 at 15:48 +0100, David Nyström wrote:
The reverted commit seems to introduce some problems for the toolchain tarball
for powerpc.
I see this both in master and on dora.

1. Looks like the relocation scripts fails for environments:

~/tests/poky [master]
$ cat /opt/oel/2014-01-01/environment-setup-ppce500v2-oel-linux | grep "#"
export SDKTARGETSYSROOT=##SDKTARGETSYSROOT##

~/tests/poky [master]
$ cat /opt/oel/2014-01-01/environment-setup-ppce500v2-oel-linux-gnuspe | grep 
"#"

2. nativeSDK gnuspe compiler does not allow -mabi=spe
ABIEXTENSION is zeroed both for linux-gnuspe and linux

3. Compiler can't create executables.
I think this is due to libgcc_s.so from the SDK target sysroot is in mabi=spe.

4. -mspe is included in CC var for both linux and gnuspe.
cat /opt/oel/2014-01-01/environment-setup-ppce500v2-oel-linux | grep mabi
export CC="powerpc-oel-linux-gcc  -m32 -mcpu=8548 -mabi=spe -mspe ....
export CXX="powerpc-oel-linux-g++  -m32 -mcpu=8548 -mabi=spe -mspe ....
export CPP="powerpc-oel-linux-gcc -E  -m32 -mcpu=8548 -mabi=spe -mspe ....

With the commit reverted, I can successfully build target code with the 
canadian compiler
from the SDK tarball. Only the gnuspe environment file is generated.

Ok, so how do you propose we fix the issues the patch was added to
address?

Cheers,

Richard


Just to clarify bug 5354:
If I understand the bug correctly, this would arise when first building the nativesdk tarball on a MACHINE with ABI linux, and then building the nativesdk for another MACHINE(with the same the same TUNE) after altering ABIEXTENSION to linux-gnuspe ?

If I understand bug 5354 correctly, perhaps the tmp/sdk/tarball.here can be ABI specific ? i.e. a generic rule that all nativesdk builds are invalidated if the ABI changes. I guess that would mean:
cross-canadian.bbclass: TARGET_ARCH[vardeps] += "ABIEXTENSION"
+ Adding ABIEXTENSION to the nativesdk tarball name.

PPC '=mabi=spe' seems to be one-way compatible, I could not get the non-SPE configured compiler
to work with the SPE sysroot.
Another possible solution would be to always configure the compiler to SPE, and use compile time flags in the
environment file to do the selects. + symlinks for the compiler paths.
However, even if we fix it this way for powerpc, we will still have this issue with thumb f.ex.

It would be good if the Freescale folks could chime in here.

Br,
David

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to