On Tue, 2008-09-30 at 11:10 +0200, [EMAIL PROTECTED] wrote: > diff --git a/qemu/configure b/qemu/configure > --- a/qemu/configure > +++ b/qemu/configure > @@ -685,14 +685,15 @@ > # ppc specific hostlongbits selection > if test "$cpu" = "powerpc" ; then > cat > $TMPC <<EOF > -int main(void){return sizeof(long);} > +#include <bits/wordsize.h> > +__WORDSIZE > EOF > > - if $cc $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev/null; then > - $TMPE > - case $? in > - 4) hostlongbits="32";; > - 8) hostlongbits="64";; > + if $cc $ARCH_CFLAGS $CFLAGS -E -o $TMPE.E $TMPC 2> /dev/null; then > + wordsize=`tail -n 1 ${TMPE}.E` > + case $wordsize in > + 32) hostlongbits="32";; > + 64) hostlongbits="64";; > *) echo "Couldn't determine bits per long value"; exit 1;; > esac > else
Yeah, trying to execute target-specific code is simply incompatible with cross-compiling, so clearly this needs to be changed. <bits/wordsize.h> might be too Linux-specific, not sure. Also, I worry about the preprocessor being allowed to insert all the whitespace it wants, so I'm not sure if you can assume that __WORDSIZE will be on the last output line. Instead you could use this: $cc -E -dM - < /dev/null | grep __powerpc64__ -- Hollis Blanchard IBM Linux Technology Center -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html