On 07/01/2012 05:40 PM, Bruno Haible wrote: > Hi all, > > > The problem occurs only with Autoconf versions < 2.64. Carlos used > version 2.63. In the testdir's configure file generated, there are > the following lines: >
> So, there are two copies of gl_FUNC_LOGF in the expansion. In Autoconf > version >= 2.64, both are complete with prerequisites. But with > Autoconf 2.63, in the first case, the prerequisites are not in the right > order. > > Incidentally, autoconf >= 2.64 also reports a warning: > > configure.ac:2592: warning: AC_REQUIRE: `gl_FUNC_LOG' was expanded before > it was required > glm4/logl.m4:7: gl_FUNC_LOGL is expanded from... > glm4/log10l.m4:7: gl_FUNC_LOG10L is expanded from... > configure.ac:41: gl_INIT is expanded from... > configure.ac:2592: the top level > > The attached patch fixes this warning and leads to a correct configure > file with autoconf 2.63. This is not the first time we've fixed this sort of bug. The canonical fix in gnulib is to use AC_DEFUN_ONCE instead of AC_DEFUN for any function that we want to guarantee that it gets expanded without triggering the older autoconf bug. > So, version 2.64 is already nearly 3 years old. > > I would therefore propose (b), that is, to bump the required Autoconf > version in the DEPENDENCIES file and gnulib-tool to 2.64. > > Opinions? Objections? Strong Objection. Making this bump would render RHEL 5 / CentOS 5 as a non-development platform (since these still ship autoconf 2.59). We've already been able to be quite accommodating to these platforms in the past, and I don't see any reason to change that now. > > > 2012-07-01 Bruno Haible <br...@clisp.org> > > log: Fix an autoconf >= 2.64 warning. > * modules/log (configure.ac): Require, not invoke, gl_FUNC_LOG. > Reported by Carlos O'Donell <carlos_odon...@mentor.com>. > > --- modules/log.orig Mon Jul 2 01:11:59 2012 > +++ modules/log Mon Jul 2 01:10:03 2012 > @@ -10,7 +10,7 @@ > math > > configure.ac: > -gl_FUNC_LOG > +AC_REQUIRE([gl_FUNC_LOG]) This is one possible fix, but the canonical fix I had in mind is: diff --git i/m4/log.m4 w/m4/log.m4 index a04362a..22fe77a 100644 --- i/m4/log.m4 +++ w/m4/log.m4 @@ -1,10 +1,10 @@ -# log.m4 serial 4 +# log.m4 serial 5 dnl Copyright (C) 2011-2012 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. -AC_DEFUN([gl_FUNC_LOG], +AC_DEFUN_ONCE([gl_FUNC_LOG], [ m4_divert_text([DEFAULTS], [gl_log_required=plain]) AC_REQUIRE([gl_MATH_H_DEFAULTS]) and similarly for any other macro that works well whether used directly or required. -- Eric Blake ebl...@redhat.com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature