autoconf-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: AC_C_BIGENDIAN answers "universal" on powerpc-aix


From: Peter O'Gorman
Subject: Re: AC_C_BIGENDIAN answers "universal" on powerpc-aix
Date: Thu, 14 Aug 2008 13:04:20 -0500
User-agent: Mutt/1.5.17 (2007-11-01)

On Thu, Aug 14, 2008 at 07:16:58PM +0200, Ralf Wildenhues wrote:
> (Hereby volunteering to do my part in it in the next 48 hours,
> but please others do test as well if possible).

I will test on aix, i386-darwin, and i386-linux
> 
> Thanks,
> Ralf
> This should have a NEWS entry, like
> 
> ** AC_C_BIGENDIAN does not mistakenly report "universal" for some
>    bigendian hosts, a regression introduced with universal binary
>    support in 2.62.

Wasn't it 2.61?

> > +   # Check for potential -arch flags it is not universal unless
> > +   # there are some -arch flags, note that *ppc* also matches
> > +   # ppc64. This check is also rather less than ideal.
> > +   case "${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}" in  #(
> > +     *"ppc"*|*"i386"*|*"x86_64"*) ac_cv_c_bigendian=universal;;
> 
> Why not check for
>   *-arch\ ppc* | *-arch\ i386* | *-arch\ x86_64*

Was worried about whitespace between the -arch and ppc for example. I
suppose I could do something like:
set _universal_dummy ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}
shift
_universal_flags=`echo address@hidden
to collapse the whitespace, but it seems unnecessary, we have already
restricted it to the Apple compiler, so it is likely that if the strings
ppc, i386, x86_64 appear then they are for -arch flags.

If we really want to limit things we could check for a combination of
ppc* and i386/x86_64 because if the user has -arch i386 -arch x86_64,
the endianness will not differ. However, I do not think that is
necessary, anyway, if rumors are to be believed then Apple will not
support ppc with Mac OS X 10.6, and we will see far fewer people
building ppc/x86 fat binaries (but see far more people building 32/64
bit fat). :)

The intention here is to limit the change to the Apple compiler and only
then when it seems likely that a multi-arch build is occuring.

> >     universal)
> > +     AC_DEFINE([AC_APPLE_UNIVERSAL_BUILD],1,[Define if building universal])
> 
> s/universal/& (internal helper macro)/  ???

Good idea.

Peter
-- 
Peter O'Gorman
address@hidden




reply via email to

[Prev in Thread] Current Thread [Next in Thread]