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
Stefano Lattarini <stefano.lattarini@HIDDEN>:bug-libtool@HIDDEN.
Full text available.bug-libtool@HIDDEN:bug#12786; Package libtool.
Full text available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.