Red Hat Bugzilla – Bug 738509
xulrunner forces soft-float ABI for all arm targets
Last modified: 2018-04-11 10:41:49 EDT
Description of problem:
The xulrunner package includes special handling for ARM systems that modify the flags passed to gcc and g++. One of the flags set the floating point ABI to soft-float, even if the system is hard float. When the hard float and soft float options are mixed together, gcc bails resulting in a FTBFS.
Version-Release number of selected component (if applicable):
Observed in the latest F15 update to xulrunner, xulrunner-6.0.2-1.fc15.
Every time. The symptom is when autoconf tries to identify the size of int * and gets a result of '0'.
Steps to Reproduce:
1. Install Fedora-ARM F15 rootfs
2. Try to build xulrunner.
3. Watch configure break.
Package should build.
The attached patch removes the setting of the float ABI, instead letting autoconf do its job and get the right flags from gcc (EG, --mfloat-abi=hardfp). This patch is against xulrunner-6.0.2-1.fc15. I'm not clear on Fedora package standards wrt configure regeneration, so this patch does include changes to the generated configure. Taking just the changes to the two configure.in's and rerunning autoconf should give the same results.
Created attachment 523294 [details]
This patch allows xulrunner to build on armv7hl systems
This patch allows xulrunner to build on armv7hl systems. It specifically stops configure from always specifying soft-float ABI and instead lets configure work out the right setting itself.
I think this is filed upstream already (currently still open):
Created attachment 549168 [details]
Patch to properly configure the various arm platforms
Based on xulrunner 9.0 there's proper configure options to set the various build options for the various ARM build options so we just need to set them so they get built. This patch to the current latest xulrunner.spec sets the options we want.
Pushed spec changes to xulrunnr in rawhdide.