[Buildroot] [MIPS] toolchain/gcc/Config.in broken
rep.dot.nop at gmail.com
Tue Oct 9 12:27:00 UTC 2007
On Tue, Oct 09, 2007 at 06:56:19PM +0900, Shinya Kuribayashi wrote:
> Bernhard Fischer wrote:
>> You probably mean OABI and not O32.
> Yes :-)
>> Look at target/Config.in.arch
>> I was under the impression that OABI was 32 for mipsel and o64 for mips,
> I'm not confident about that...
>> I'm not too familiar with the mips matrix.. I will take a look how
>> mips32r2 should be configured (mips vs. mips64 vs. mipsel vs. ??; i.e.
>> both the endianess and the bit-depth have to be settable, AFAICS).
> IMHO it's target ABI config problem about OABI and mips, not mips32r2
> specific problem as you know.
> I have three successful builds. I hope these help.
>  mips: Before recently toolchain config rework (2007-09-19 build)
> skuribay at debian:~/devel/buildroot$
> ./build_mips.orig/staging_dir/usr/bin/mips-linux-gcc -v
> Using built-in specs.
> Target: mips-linux-uclibc
> Configured with:
> --prefix=/usr --build=i386-pc-linux-gnu --host=i386-pc-linux-gnu
> --target=mips-linux-uclibc --enable-languages=c,c++
> --disable-__cxa_atexit --enable-target-optspace --with-gnu-ld
> --disable-nls --enable-threads --disable-multilib
> Thread model: posix
> gcc version 4.2.1
I don't know offhand what abi that defaults to. Can you check this,
>  mipsel: Current trunk build
[snip mipsel OABI is fine]
>  mips: Current trunk build with a change (for testing)
> skuribay at debian:~/devel/buildroot$ svn diff
> Index: target/Config.in.arch
> --- target/Config.in.arch (revision 20207)
> +++ target/Config.in.arch (working copy)
> @@ -689,7 +689,7 @@
> default iwmmxt if BR2_iwmmxt
> default 32 if BR2_mipsel && BR2_MIPS_OABI
> default n32 if BR2_mipsel && BR2_MIPS_EABI
> - default o64 if BR2_mips && BR2_MIPS_OABI
> + default 32 if BR2_mips && BR2_MIPS_OABI
I'm pretty sure that this is not really correct either.
I will extend these (for mips) to include "ABI32" which boils down to
But think about your change for a second. For mips EB you want to allow
for 32bit (1,2,32*) and 64bit where 32bit OABI should use =32 but 64bit
OABI should use =o64 as opposed to 64bit ABI32 (=32), 64bit EABI
(=eabi), 64bit ABI64 (=64), at least AFAICT.
Does this sound appropriate to you?
More information about the buildroot