[Top][All Lists]

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

Re: _AC_LANG_OPENMP and m4_copy

From: Eric Blake
Subject: Re: _AC_LANG_OPENMP and m4_copy
Date: Wed, 03 Dec 2008 13:22:17 -0700
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv: Gecko/20081105 Thunderbird/ Mnenhy/

Hash: SHA1

According to Ralf Wildenhues on 12/3/2008 1:01 PM:
> When I try to `./autogen.sh --quick' CVS gettext, using git Autoconf,
> things fall over like this (several instances):
> | gnulib-m4/openmp.m4:29: error: m4_copy: won't overwrite defined macro: 
> | gnulib-m4/openmp.m4:29: the top level
> | autom4te: /usr/bin/m4 failed with exit status: 1
> | aclocal: autom4te failed with exit status: 1
> I'm not quite sure whether an Autoconf bug/incompatibility is involved
> here (therefore the Cc: to bug-autoconf).  m4_copy wasn't documented in
> earlier Autoconf releases, but there may still have been problematic
> semantic changes, I don't know.

There was a semantic change - in 2.63, m4_copy used to only copy the
most-recent pushdef definition of the source and overwrite any most-recent
definition of the destination; and worse, m4_rename completely threw away
the rest of the pushdef stack of the source.  The new documented semantics
copy the entire pushdef stack of definitions (so that m4_rename doesn't
lose definitions), and requires that the destination be undefined (use
m4_ifdef([dest],[m4_undefine([dest])]) beforehand if this is a problem).

> Anyway, the following patch seems to fix it.  OK to apply?

Looks fine to me, but let Bruno chime in before committing.  I agree with
your approach of fixing gnulib to avoid the problem by not competing when
a new-enough autoconf provides the macro, and I don't think we need to
change the new semantics of m4_copy.

- --
Don't work too hard, make some time for fun as well!

Eric Blake             address@hidden
Version: GnuPG v1.4.9 (Cygwin)
Comment: Public key at home.comcast.net/~ericblake/eblake.gpg
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org


reply via email to

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