[arm] Rework multlib builds for symbianelf

Symbianelf used to build multilib for armv5t with softfp, but that
architecture doesn't really support floating point instructions.  This
patch reworks the multilib configuration to use armv5te as the base
when building for floating point.

I'm not sure just how useful the symbian port is these days, so this
has only been very lightly tested (checks that libgcc builds for all
multilib variants).  Perhaps we should consider deprecating this
config?

	* config/arm/t-symbian: Rewrite for new option infrastructure.

From-SVN: r249304
This commit is contained in:
Richard Earnshaw 2017-06-16 21:06:07 +00:00 committed by Richard Earnshaw
parent 99d6bcf7ae
commit e61a3cdd25
2 changed files with 36 additions and 2 deletions

View File

@ -1,3 +1,7 @@
2017-06-16 Richard Earnshaw <rearnsha@arm.com>
* config/arm/t-symbian: Rewrite for new option infrastructure.
2017-06-16 Richard Earnshaw <rearnsha@arm.com>
* config/arm/t-phoenix (MULTILIB_REUSE): Clear variable.

View File

@ -22,5 +22,35 @@ EXTRA_HEADERS += $(srcdir)/ginclude/unwind-arm-common.h
# multilib for those without -- using the soft-float ABI in both
# cases. Symbian OS object should be compiled with interworking
# enabled, so there are no separate thumb-mode libraries.
MULTILIB_OPTIONS = mfloat-abi=softfp
MULTILIB_DIRNAMES = softfp
# Reset all the multilib variables.
MULTILIB_OPTIONS =
MULTILIB_DIRNAMES =
MULTILIB_EXCEPTIONS =
MULTILIB_REUSE =
MULTILIB_MATCHES =
MULTILIB_REQUIRED =
MULTILIB_OPTIONS += march=armv5te+fp
MULTILIB_DIRNAMES += v5te
MULTILIB_OPTIONS += mfloat-abi=softfp
MULTILIB_DIRNAMES += softfp
MULTLILIB_REQUIRED += march=armv5te+fp/mfloat-abi=softfp
MULTILIB_MATCHES += $(foreach ARCH, $(all_early_arch), \
march?armv5te+fp=march?$(ARCH)+fp)
MULTILIB_MATCHES += $(foreach FPARCH, $(v7a_fps), \
march?armv5te+fp=march?armv7-a+$(FPARCH))
MULTILIB_MATCHES += $(foreach FPARCH, $(v7ve_fps), \
march?armv5te+fp=march?armv7ve+$(FPARCH))
MULTILIB_MATCHES += $(foreach ARCH, $(all_v7_a_r), \
march?armv5te+fp=march?$(ARCH)+fp)
MULTILIB_MATCHES += $(foreach ARCH, $(all_v8_archs), \
$(foreach FPARCH, $(v8_fps), \
march?armv5te+fp=march?$(ARCH)+$(FPARCH)))