Hi all,
While trying to generate a ARM-GCC for Linux with hard and soft FP
multilibs, I have noticed that:
- arm/linux-elf.h says the default float ABI is "hard" and
multilib_defaults includes "mhard-float"
- arm/linux-eabi.h says the default float ABI is "soft" but does not
change the multilibs_defaults.
This means that when building a linux-eabi GCC, no hard-float multilib
will be generated even though you ask for
MULTILIB_OPTIONS = msoft-float/mhard-float
Indeed, the multilib system will decide that -mhard-float does not need
a special multilib build because -mhard-float is defined as a default.
So you end up with 2 multilibs:
1- the default one, also used with -mhard-float
2- -msoft-float
But in linux-eabi, the default is "soft float", so the 2 variants are
actually the same.
There are several ways of fixing this, one is to redefine
multilib_defaults in arm/linux-eabi.h so that it includes soft-float
instead of hard-float.
Any opinions?
Christophe