Re: stdint module rewrite (was: Re: Build CVS (TRUNK) failed.)

2006-06-16 Thread Mark D. Baushke
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Bruno Haible <[EMAIL PROTECTED]> writes: > Hi Mark, > > > I see the following: > > > > #if 0 > > # ifndef UINT_FAST16_MAX > > # if < 32 > > # define UINT_FAST16_MAX (((1 << ( - 1)) - 1) * 2 + 1) > > # else > > # define UINT_FAST16_MAX (((1U

Re: stdint module rewrite (was: Re: Build CVS (TRUNK) failed.)

2006-06-16 Thread Bruno Haible
Hi Mark, > I see the following: > > #if 0 > # ifndef UINT_FAST16_MAX > # if < 32 > # define UINT_FAST16_MAX (((1 << ( - 1)) - 1) * 2 + 1) > # else > # define UINT_FAST16_MAX (((1UL << ( - 1)) - 1) * 2 + 1) > # endif > # endif > #else > > I am not at all certain that all compilers will

Re: stdint module rewrite (was: Re: Build CVS (TRUNK) failed.)

2006-06-16 Thread Mark D. Baushke
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Hi Bruno, No values are assigned to some of the BITSIZEOF_* macros in the config.h file: /* Define to the number of bits in type 'int_fast16_t'. */ /* #undef BITSIZEOF_INT_FAST16_T */ /* Define to the number of bits in type 'int_fast32_t'. */ /* #un

Re: stdint module rewrite

2006-06-16 Thread Ralf Wildenhues
Hello Bruno, * Bruno Haible wrote on Fri, Jun 16, 2006 at 03:08:11PM CEST: > Ralf Wildenhues wrote: > > > > Yes, but that's basically the only part that breaks this way. And only > > one part of the AC_DEFINE_UNQUOTED, namely the part that needs to be > > traceable for autoheader: the AH_TEMPLAT

Re: stdint module rewrite

2006-06-16 Thread Bruno Haible
Simon Josefsson wrote: > >> The essential difference is that the installed "idn-int.h" should work > >> without assuming any config.h symbols, but instead rely on a > >> combination of install-time "guesses" and CPP symbol checks to define > >> the proper uint32_t types for the host and the compile

Re: stdint module rewrite (was: Re: Build CVS (TRUNK) failed.)

2006-06-16 Thread Bruno Haible
Ralf Wildenhues wrote: > > But this way, autoheader didn't recognise the AC_DEFINE_UNQUOTED > > invocations, i.e. in the end, HAVE_INT8_T etc. were not present in > > config.h.in. > > Yes, but that's basically the only part that breaks this way. And only > one part of the AC_DEFINE_UNQUOTED, name

Re: stdint module rewrite

2006-06-14 Thread Simon Josefsson
Bruno Haible <[EMAIL PROTECTED]> writes: > Simon Josefsson wrote: >> Is there anything in this that would enable me to install a "stdint.h" >> file in $prefix > > We could just need to change all > #if HAVE_... > into > #if @HAVE_...@ > and use more substitutions in the creation of the stdint.

Re: stdint module rewrite (was: Re: Build CVS (TRUNK) failed.)

2006-06-13 Thread Ralf Wildenhues
* Bruno Haible wrote on Tue, Jun 13, 2006 at 11:00:45PM CEST: > Ralf Wildenhues wrote: > > You should be able to rewrite this to use shell loops for the most part; > Actually, that's how I started doing it: > But this way, autoheader didn't recognise the AC_DEFINE_UNQUOTED > invocations, i.e. in

Re: stdint module rewrite

2006-06-13 Thread Bruno Haible
Paul Eggert wrote: > the same compiler, with > different options) might disagree about the standard types. So it's > not an issue of solving the problem in general; it's an issue of how > likely it would occur in practice, with the approach I proposed. We are not the only people providing a subs

Re: stdint module rewrite (was: Re: Build CVS (TRUNK) failed.)

2006-06-13 Thread Bruno Haible
Ralf Wildenhues wrote: > You should be able to rewrite this to use shell loops for the most part; > similar to how I started in this thread: > http://lists.gnu.org/archive/html/autoconf-patches/2006-04/msg00161.html > but never finished the last bits. Actually, that's how I started doing it: fo

Re: stdint module rewrite

2006-06-13 Thread Paul Eggert
Bruno Haible <[EMAIL PROTECTED]> writes: > I've once debugged a program where a header file declared a variable > of type > int (*) (const char *, struct stat *) > and part of the program was compiled with _FILE_OFFSET_BITS=64 > (implying stat := stat64) and another part of the program withou

Re: stdint module rewrite

2006-06-13 Thread Bruno Haible
Paul Eggert wrote: > The approach assumes a conventional architecture in which there are > underyling signed and unsigned types of width 8, 16, 32, and 64, and > the only argument is which int*_t type is which. Yes, and it does so using the approach "use what the system provides, and define a subs

Re: stdint module rewrite (was: Re: Build CVS (TRUNK) failed.)

2006-06-13 Thread Ralf Wildenhues
* Bruno Haible wrote on Tue, Jun 13, 2006 at 06:20:18PM CEST: > > The only downside is that it bloats up 'configure' - but autoconf 3 > should annihilate that growth, I'm told. You should be able to rewrite this to use shell loops for the most part; similar to how I started in this thread: http:/

Re: stdint module rewrite

2006-06-13 Thread Paul Eggert
Bruno Haible <[EMAIL PROTECTED]> writes: > Here is a proposed rewrite of the stdint module. It defines a > *complete* , and is autoconfiguring - no more > #ifdef __FreeBSD__ etc. that are hard to maintain. > > It appears to work fine on Solaris and HP-UX IA64. > > The only downside is that it bloa

Re: stdint module rewrite

2006-06-13 Thread Bruno Haible
Simon Josefsson wrote: > Is there anything in this that would enable me to install a "stdint.h" > file in $prefix We could just need to change all #if HAVE_... into #if @HAVE_...@ and use more substitutions in the creation of the stdint.h file. But there are two problems: - It's compiler depe

Re: stdint module rewrite

2006-06-13 Thread Simon Josefsson
Is there anything in this that would enable me to install a "stdint.h" file in $prefix (called something like "idn-int.h"), so I can use uint32_t etc in my API, and be backwards compatible with hosts that doesn't have uint32_t natively? Compare the AX_CREATE_STDINT_H macro: http://autoconf-archive