Joseph S. Myers wrote:
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).
Hi Joseph,
thanks for the detailed explanation. I admit we always have postoponed the
issue of cross-compilation... to the point we almost forgot it. We will
fix the PPL asap. Can we come back to you in case we are unsure about which
defaults can be considered safe?
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?
Work has already started for producing an official PPL 0.11 release.
This will contain fixes for all the problems we discovered since the release
of PPL 0.10 (mainly portability ones), a new "formatted output" feature
that is needed in the MELT branch, plus other improvements, none of which
affecting the code generated by GCC. I will write again when we can be
more precise about the release schedule.
All the best,
Roberto
--
Prof. Roberto Bagnara
Computer Science Group
Department of Mathematics, University of Parma, Italy
http://www.cs.unipr.it/~bagnara/
mailto:bagn...@cs.unipr.it