autoconf
[Top][All Lists]
Advanced

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

Re: 2.49e problems with gcc


From: Akim Demaille
Subject: Re: 2.49e problems with gcc
Date: 12 May 2001 15:47:10 +0200
User-agent: Gnus/5.0808 (Gnus v5.8.8) XEmacs/21.1 (Cuyahoga Valley)

| Index: aclocal.m4
| ===================================================================
| RCS file: /cvs/gcc/gcc/gcc/aclocal.m4,v
| retrieving revision 1.40.4.1
| diff -u -r1.40.4.1 aclocal.m4
| --- aclocal.m4        2001/02/18 05:41:46     1.40.4.1
| +++ aclocal.m4        2001/05/11 15:49:26
| @@ -40,8 +40,10 @@
|    ac_tr_decl=HAVE_DECL_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 
'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
|  changequote([, ])dnl
| 
| You should also get rid of this one.
| 
| 
|  gcc_AC_CHECK_DECL($ac_func,
| -  [AC_DEFINE_UNQUOTED($ac_tr_decl, 1) $2],
| -  [AC_DEFINE_UNQUOTED($ac_tr_decl, 0) $3],
| +  [AC_DEFINE_UNQUOTED($ac_tr_decl, 1,
| +    [Define to 1 if we found this declaration otherwise define to 0.]) $2],
| +  [AC_DEFINE_UNQUOTED($ac_tr_decl, 0,
| +    [Define to 1 if we found this declaration otherwise define to 0.]) $3],
|  dnl It is possible that the include files passed in here are local headers
|  dnl which supply a backup declaration for the relevant prototype based on
|  dnl the definition of (or lack of) the HAVE_DECL_ macro.  If so, this test
| @@ -53,14 +55,7 @@
|  #define $ac_tr_decl 1
|    $4
|  )
| -done
| -dnl Automatically generate config.h entries via autoheader.
| -if test x = y ; then
| -  patsubst(translit([$1], [a-z], [A-Z]), [\w+],
| -    AC_DEFINE([HAVE_DECL_\&], 1,
| -      [Define to 1 if we found this declaration otherwise define to 0.]))dnl
| -fi
| -])
| +done])
| 
| 
| Nice patch, but I don't think it works.  I'd be surprised if you
| actually have the #undef templates in config.h.in since you pass an sh
| var, which is opaque to autoheader.  You need `static' values for
| autoheader.  That's why they had the last chunk.
| 
| Use
| 
| -if test x = y ; then
| -    AC_DEFINE(translit([HAVE_DECL_$1], [a-z], [A-Z]), 1,
| -      [Define to 1 if we found this declaration otherwise define to 0.]))dnl
| -fi


On a second thought, the right way to handle this depends upon the
nature of $1: is it always a literal, or can it be a shell variable?
If it's always a literal, then your first approach but using
translit([HAVE_DECL_$1], [a-z], [A-Z]) instead of the tr thingy is the
right thing to do.  If sometimes it's a shell variable then their code
is wrong as it won't prototype some #undef HAVE_DECL_.  They might fix
this shortcoming using acconfig.h, dunno.



reply via email to

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