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.