[PPL-devel] PPL broken for Canadian-cross builds

Joseph S. Myers joseph at codesourcery.com
Thu Mar 19 22:57:07 CET 2009


I tried building GCC with Graphite enabled and all the libraries it 
requires in a Canadian cross configuration (build = i686-pc-linux-gnu, 
host = i686-mingw32, target = arm-none-eabi).  This failed with:

configure:11279: checking for the possibility to control the FPU
configure:11282: error: in `/scratch/gcc/nightly-2009-03-19-mainline/arm-none-eabi/obj/ppl-mainline-0-arm-none-eabi-i686-mingw32':
configure:11285: error: cannot run test program while cross compiling
See `config.log' for more details.

If you use AC_RUN_IFELSE you need to have a (safe) default (fourth 
argument) for cross compiling.  An individual case is of course 
straightforward to fix, but it appears there are other such problems in 
PPL.  For example, the GMP checks appear to treat GMP as not available in 
the cross compiling case; they should fall back to a compile/link test if 
they can't do an execution test; having found that I didn't go on to try 
to work out whether other defaults are safe or not.  While the cross case 
may result in slightly less efficient code (if workarounds have to be 
enabled for bugs that may in fact not be present), it needs to allow the 
library to be built and to have all its features (or at least all the 
features used by GCC: the behavior of GCC on a host must not depend on 
whether PPL was cross compiled).

Would it be possible to have an official 0.10.1 bug-fix release with this 
fixed (and preferably without changes that would affect the code generated 
by GCC) for use with GCC 4.4 so that it is possible to enable Graphite in 
such configurations?

-- 
Joseph S. Myers
joseph at codesourcery.com



More information about the PPL-devel mailing list