GNU bug report logs - #12786
[PATCH 0/2] AC_CONFIG_MACRO_DIRS: implementation and documentation

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: libtool; Reported by: Stefano Lattarini <stefano.lattarini@HIDDEN>; Keywords: patch; dated Fri, 2 Nov 2012 09:54:01 UTC; Maintainer for libtool is bug-libtool@HIDDEN.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 2 Nov 2012 09:53:52 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Nov 02 05:53:52 2012
Received: from localhost ([127.0.0.1]:44284 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.72)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1TUDwm-0007yt-1D
	for submit <at> debbugs.gnu.org; Fri, 02 Nov 2012 05:53:52 -0400
Received: from eggs.gnu.org ([208.118.235.92]:49763)
	by debbugs.gnu.org with esmtp (Exim 4.72)
	(envelope-from <stefano.lattarini@HIDDEN>) id 1TUDwi-0007yk-7N
	for submit <at> debbugs.gnu.org; Fri, 02 Nov 2012 05:53:49 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
	(envelope-from <stefano.lattarini@HIDDEN>) id 1TUDty-0006vp-HM
	for submit <at> debbugs.gnu.org; Fri, 02 Nov 2012 05:51:00 -0400
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM,
	RCVD_IN_DNSWL_HI,T_DKIM_INVALID autolearn=unavailable version=3.3.2
Received: from lists.gnu.org ([208.118.235.17]:58495)
	by eggs.gnu.org with esmtp (Exim 4.71)
	(envelope-from <stefano.lattarini@HIDDEN>) id 1TUDty-0006vl-EC
	for submit <at> debbugs.gnu.org; Fri, 02 Nov 2012 05:50:58 -0400
Received: from eggs.gnu.org ([208.118.235.92]:46107)
	by lists.gnu.org with esmtp (Exim 4.71)
	(envelope-from <stefano.lattarini@HIDDEN>) id 1TUDtw-0001iI-N9
	for bug-libtool@HIDDEN; Fri, 02 Nov 2012 05:50:58 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
	(envelope-from <stefano.lattarini@HIDDEN>) id 1TUDtr-0006uN-V9
	for bug-libtool@HIDDEN; Fri, 02 Nov 2012 05:50:56 -0400
Received: from mail-bk0-f41.google.com ([209.85.214.41]:54535)
	by eggs.gnu.org with esmtp (Exim 4.71)
	(envelope-from <stefano.lattarini@HIDDEN>)
	id 1TUDte-0006r8-TB; Fri, 02 Nov 2012 05:50:39 -0400
Received: by mail-bk0-f41.google.com with SMTP id jm1so1366705bkc.0
	for <multiple recipients>; Fri, 02 Nov 2012 02:50:37 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=message-id:date:from:mime-version:to:cc:subject:references
	:in-reply-to:content-type:content-transfer-encoding;
	bh=PM05T+e951UXDlHs3I7HHJsxF7cbsk/DGSob84irTqc=;
	b=XMDw0ji88MPhFnxitTR//+xBA45VM2cPwb3pBWR+3+IYivTdAMJDuFzDrQwCzAAPq0
	NFjRRoJeX7Jn8UMd0ZfRQMDU2Amxm//+hA16pG2ovRUR8qXsO69LNvJS8hKSStkQN6Zf
	jXIMO40u3KnFvvmrUmuE7Y5cRe2eUBGKVb/DVWNtktOyiKD9tmRaQd7kLxN730SFpi+i
	7umuuRJjJY+FNNLHEIJjaZxRHnyY2bhQQLmAPdxiUtlkC6CfUDuP5l5id+CpJWlai43Z
	l1/LJLBRjw5hAho95qioPtSmhj8g3BeA1qWkDWVQ7MW3+vEi5OC9azE6HbEgz7QgrOgI
	EzlQ==
Received: by 10.204.6.25 with SMTP id 25mr223146bkx.126.1351849837719;
	Fri, 02 Nov 2012 02:50:37 -0700 (PDT)
Received: from [192.168.178.21]
	(host247-100-dynamic.8-87-r.retail.telecomitalia.it. [87.8.100.247])
	by mx.google.com with ESMTPS id z13sm6118586bkv.8.2012.11.02.02.50.36
	(version=SSLv3 cipher=OTHER); Fri, 02 Nov 2012 02:50:37 -0700 (PDT)
Message-ID: <5093976A.1060703@HIDDEN>
Date: Fri, 02 Nov 2012 10:50:34 +0100
From: Stefano Lattarini <stefano.lattarini@HIDDEN>
MIME-Version: 1.0
To: Nick Bowler <nbowler@HIDDEN>
Subject: Re: [PATCH 0/2] AC_CONFIG_MACRO_DIRS: implementation and documentation
References: <507E5D75.5040306@HIDDEN>
	<cover.1350468731.git.stefano.lattarini@HIDDEN>
	<5085279B.4020605@HIDDEN>
	<20121022225938.GA11652@HIDDEN>
	<5090F77B.9000209@HIDDEN>
	<20121101180536.GA26897@HIDDEN>
In-Reply-To: <20121101180536.GA26897@HIDDEN>
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy]
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x
X-Received-From: 208.118.235.17
X-Spam-Score: -3.4 (---)
X-Debbugs-Envelope-To: submit
Cc: autoconf-patches@HIDDEN, bug-libtool@HIDDEN,
	"automake-patches@HIDDEN" <automake-patches@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
	<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <http://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
	<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Sender: debbugs-submit-bounces <at> debbugs.gnu.org
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
X-Spam-Score: -6.1 (------)

[+cc: automake-patches, bug-libtool]
[re-sending because delivery to automake and autoconf lists failed]

References:
<http://lists.gnu.org/archive/html/autoconf-patches/2012-10/msg00007.html>
<http://lists.gnu.org/archive/html/autoconf-patches/2012-11/msg00000.html>

On 11/01/2012 07:05 PM, Nick Bowler wrote:
> Hi Stefano, sorry for the delay.
>
Hi Nick, and thanks for the testing.

> On 2012-10-31 11:03 +0100, Stefano Lattarini wrote:
>> On 10/23/2012 12:59 AM, Nick Bowler wrote:
>>> I am going to try all these patches to automake/autoconf/libtool soon; I
>>> will report back with the results!
>>>
>> Has anybody had a chance to try these patches?  If not, does anyone
>> object to the idea of committing them anyway, and see how things work
>> out?  It doesn't seem we're near to a release, so there's ample time
>> to revert these changes before cutting Autoconf 2.70, in case they
>> won't work as expected, or will reveal unforeseen issues.
> I got a chance to try these.  I applied the patches on top of latest git
> autoconf and automake, as of today, and also checked out latest git
> libtool.
>
> I tried converting a package to use these, which originally had
> ACLOCAL_AMFLAGS = -I m4 -I common/m4.  I removed the ACLOCAL_AMFLAGS
> from Makefile.am and added AC_CONFIG_MACRO_DIRS([m4 common/m4]) to
> configure.ac.  Here are some initial observations:
>
> 1) Newlines can be used to separate items in AC_CONFIG_FILES, etc.
>    However, aclocal explodes if you try to do this with
>    AC_CONFIG_MACRO_DIRS:
>
>      Use of uninitialized value $macro in exists at /tmp/autotools-test/bin/aclocal line 753, <GEN40> line 2.
>      Use of uninitialized value $macro in string eq at /tmp/autotools-test/bin/aclocal line 755, <GEN40> line 2.
>      Use of uninitialized value $macro in string eq at /tmp/autotools-test/bin/aclocal line 755, <GEN40> line 2.
>      Use of uninitialized value $macro in string eq at /tmp/autotools-test/bin/aclocal line 755, <GEN40> line 2.
>      Use of uninitialized value $macro in string eq at /tmp/autotools-test/bin/aclocal line 760, <GEN40> line 2.
>      Use of uninitialized value $macro in string eq at /tmp/autotools-test/bin/aclocal line 764, <GEN40> line 2.
>      Use of uninitialized value $macro in string eq at /tmp/autotools-test/bin/aclocal line 768, <GEN40> line 2.
>      Use of uninitialized value $macro in exists at /tmp/autotools-test/bin/aclocal line 753, <GEN82> line 3.
>      Use of uninitialized value $macro in string eq at /tmp/autotools-test/bin/aclocal line 755, <GEN82> line 3.
>      Use of uninitialized value $macro in string eq at /tmp/autotools-test/bin/aclocal line 755, <GEN82> line 3.
>      Use of uninitialized value $macro in string eq at /tmp/autotools-test/bin/aclocal line 755, <GEN82> line 3.
>      Use of uninitialized value $macro in string eq at /tmp/autotools-test/bin/aclocal line 760, <GEN82> line 3.
>      Use of uninitialized value $macro in string eq at /tmp/autotools-test/bin/aclocal line 764, <GEN82> line 3.
>      Use of uninitialized value $macro in string eq at /tmp/autotools-test/bin/aclocal line 768, <GEN82> line 3.
>
>    This strikes me as extremely odd because the output
>    of autoconf --trace AC_CONFIG_MACRO_DIRS is the same
>    in either case.
>
I can reproduce the problem.  The patch below enhances the automake
testsuite in order to catch it.  I hope I'll be able to come up with
a fix soon enough.

> 2) Git libtool seems broken, as libtoolize is deleting files installed
>    by gnulib-tool into the snippet directory.  This breaks the build.
>    I suspect the problem is unrelated to the AC_CONFIG_MACRO_DIRS
>    change, but git libtool was required to test it.
>
> 3) Libtoolize still complains that ACLOCAL_AMFLAGS is not set in
>    Makefile.am, but the warning seems harmless and it nevertheless
>    prints that it has picked up AC_CONFIG_MACRO_DIRS.
>
I believe these issues should be reported to the libtool developers,
so I've added the bug-libtool list in CC:.

> 4) I get a bunch of new warnings from aclocal, of the form:
>
>      configure.ac:42: warning: DX_EXPORTED_SH is m4_require'd but not m4_defun'd
>
>    The invocation comes from an AC_REQUIRE([DX_EXPORTED_SH]) and the
>    DX_EXPORTED_SH macro is expected to be picked up by aclocal -- it is,
>    and things seem to work in the end, but the warnings are annoying
>    (and are printed multiple times).
>
And you say they weren't there before these series?  Or is this regression
already present in master?  I'll investigate.

> Other than requiring a manual workaround for item #2, everything seems
> to be working at a first glance.  I can cook up some test cases for
> these issues if necessary.
>
For the automake part, there should be no need of test cases: your
description is clear and precise enough that I can cook up some myself,
and that will save hassles with copyright issues and assignment forms.

> These all look like fixable problems to me.
>
> Cheers,
Thanks again,
  Stefano

---- 8< ---- 8< ---- 8< ---- 8< ---- 8< ---- 8< ---- 8< ---- 8< ---- 8< ----

From 5716ef6d6483183721ef47dbba1b9bbf142ee2d9 Mon Sep 17 00:00:00 2001
Message-Id: <5716ef6d6483183721ef47dbba1b9bbf142ee2d9.1351849552.git.stefano.lattarini@HIDDEN>
From: Stefano Lattarini <stefano.lattarini@HIDDEN>
Date: Fri, 2 Nov 2012 10:09:36 +0100
Subject: [PATCH] tests: better coverage for AC_CONFIG_MACRO_DIRS

Suggested by a report from Nick Bowler:
<http://lists.gnu.org/archive/html/autoconf-patches/2012-11/msg00000.html>

* t/aclocal-macrodirs.sh: Enhance to check use of extra whitespaces
and newline characters in the arguments to AC_CONFIG_MACRO_DIRS.  Other
minor edits, enhancements, and simplification.

Signed-off-by: Stefano Lattarini <stefano.lattarini@HIDDEN>
---
 t/aclocal-macrodirs.tap | 53 ++++++++++++++++++++++++++++++++-----------------
 1 file changed, 35 insertions(+), 18 deletions(-)

diff --git a/t/aclocal-macrodirs.tap b/t/aclocal-macrodirs.tap
index a0eeb96..00d2359 100755
--- a/t/aclocal-macrodirs.tap
+++ b/t/aclocal-macrodirs.tap
@@ -26,7 +26,7 @@ am_create_testdir=empty
 END
 } || skip_all_ "autoconf doesn't define the AC_CONFIG_MACRO_DIRS macro"

-plan_ 11
+plan_ 12

 ocwd=$(pwd) || fatal_ "getting current working directory"
 ACLOCAL_PATH=; unset ACLOCAL_PATH
@@ -99,23 +99,21 @@ test_end

 #---------------------------------------------------------------------------

-two_dirs_check ()
+three_dirs_check ()
 {
-  if test $have_macrodirs = no; then
-    directive=SKIP
-    reason='AC_CONFIG_MACRO_DIRS not supported'
-    return
-  fi
-  mkdir sys-dir dir1 dir2
+  mkdir dir1 dir2 dir3
   echo 'AC_DEFUN([MY_FOO], [::my::foo::])' > dir1/foo.m4
   echo 'AC_DEFUN([MY_BAR], [!!my!!bar!!])' > dir2/zap.m4
+  echo 'AC_DEFUN([MY_BAZ], [==my==baz==])' > dir3/0.m4
   $ACLOCAL \
     && $FGREP 'm4_include([dir1/foo.m4])' aclocal.m4 \
     && $FGREP 'm4_include([dir2/zap.m4])' aclocal.m4 \
+    && $FGREP 'm4_include([dir3/0.m4])'   aclocal.m4 \
     && $AUTOCONF \
-    && not $EGREP 'MY_(FOO|BAR)' configure \
+    && not $EGREP 'MY_(FOO|BAR|BAZ)' configure \
     && $FGREP '::my::foo::' configure \
     && $FGREP '!!my!!bar!!' configure \
+    && $FGREP '==my==baz==' configure \
     || r='not ok'
 }

@@ -125,12 +123,13 @@ test_begin "AC_CONFIG_MACRO_DIRS: several arguments"

 cat > configure.ac <<'END'
 AC_INIT([more-args], [0.2])
-AC_CONFIG_MACRO_DIRS([dir1 dir2])
+AC_CONFIG_MACRO_DIRS([dir1 dir2 dir3])
 MY_FOO
 MY_BAR
+MY_BAZ
 END

-two_dirs_check
+three_dirs_check

 test_end

@@ -141,12 +140,35 @@ test_begin "AC_CONFIG_MACRO_DIRS: several calls"
 cat > configure.ac <<'END'
 AC_INIT([more-calls], [2.0])
 AC_CONFIG_MACRO_DIRS([dir1])
-AC_CONFIG_MACRO_DIRS([dir2])
+AC_CONFIG_MACRO_DIRS([dir2 dir3])
+MY_FOO
+MY_BAR
+MY_BAZ
+END
+
+three_dirs_check
+
+test_end
+
+#---------------------------------------------------------------------------
+
+test_begin "AC_CONFIG_MACRO_DIRS: extra whitespace"
+
+bslash=\\
+
+cat > configure.ac <<END
+AC_INIT([more-args], [0.2])
+AC_CONFIG_MACRO_DIRS([   dir1${bslash}
+${tab} dir2   ${tab}${tab}dir3
+${bslash}
+
+])
 MY_FOO
 MY_BAR
+MY_BAZ
 END

-two_dirs_check
+three_dirs_check

 test_end

@@ -174,11 +196,6 @@ test_end

 two_dirs_install_check ()
 {
-  if test $have_macrodirs = no; then
-    directive=SKIP
-    reason='AC_CONFIG_MACRO_DIRS not supported'
-    return
-  fi
   mkdir sys-dir dir1 dir2
   echo 'AC_DEFUN([THE_MACRO], [:])' > sys-dir/my.m4
   echo 'AC_DEFUN([AX_FOO], [:])' > dir2/zap.m4
--
1.8.0




Acknowledgement sent to Stefano Lattarini <stefano.lattarini@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-libtool@HIDDEN. Full text available.
Report forwarded to bug-libtool@HIDDEN:
bug#12786; Package libtool. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Fri, 31 Oct 2014 17:00:04 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.