Fix build-many-glibcs.py arm-linux-gnueabihf builds with mainline GCC [committed]
Commit Message
My fix to make the arm-linux-gnueabihf build-many-glibcs.py builds
actually use the hard-float ABI as intended showed up another issue
when building with mainline GCC: GCC now determines an FPU based on
the selected CPU or architecture and gives an error for
-mfloat-abi=hard when the CPU does not imply a choice of FPU. This
patch fixes all the affected configurations to specify a suitable
--with-cpu, --with-fpu or -mfpu option explicitly to avoid that error
from GCC.
Tested the relevant configurations with build-many-glibcs.py with
mainline GCC. Committed.
2017-12-19 Joseph Myers <joseph@codesourcery.com>
* scripts/build-many-glibcs.py (Context.add_all_configs): Specify
CPU or FPU for ARM hard-float configurations.
@@ -175,19 +175,20 @@ class Context(object):
gcc_cfg=['--with-arch=armv7-a'])
self.add_config(arch='arm',
os_name='linux-gnueabihf',
- gcc_cfg=['--with-float=hard'],
+ gcc_cfg=['--with-float=hard', '--with-cpu=arm926ej-s'],
extra_glibcs=[{'variant': 'v7a',
- 'ccopts': '-march=armv7-a'},
+ 'ccopts': '-march=armv7-a -mfpu=vfpv3'},
{'variant': 'v7a-disable-multi-arch',
- 'ccopts': '-march=armv7-a',
+ 'ccopts': '-march=armv7-a -mfpu=vfpv3',
'cfg': ['--disable-multi-arch']}])
self.add_config(arch='armeb',
os_name='linux-gnueabihf',
- gcc_cfg=['--with-float=hard'])
+ gcc_cfg=['--with-float=hard', '--with-cpu=arm926ej-s'])
self.add_config(arch='armeb',
os_name='linux-gnueabihf',
variant='be8',
- gcc_cfg=['--with-float=hard', '--with-arch=armv7-a'])
+ gcc_cfg=['--with-float=hard', '--with-arch=armv7-a',
+ '--with-fpu=vfpv3'])
self.add_config(arch='hppa',
os_name='linux-gnu')
self.add_config(arch='ia64',