automake-commit
[Top][All Lists]
Advanced

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

[Automake-commit] [SCM] GNU Automake branch, master, updated. v1.11-944-


From: Stefano Lattarini
Subject: [Automake-commit] [SCM] GNU Automake branch, master, updated. v1.11-944-gb110067
Date: Fri, 02 Sep 2011 08:05:14 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Automake".

http://git.sv.gnu.org/gitweb/?p=automake.git;a=commitdiff;h=b110067c6ec69ac5081a2fc50d1d645d60c73aab

The branch, master has been updated
       via  b110067c6ec69ac5081a2fc50d1d645d60c73aab (commit)
       via  eb59c423d7addf124d33f50ac920789db1304adb (commit)
       via  1dcba7b847b137330ed91ef8269d403163387e7e (commit)
      from  93a1c8a908af2ac955405d622abf6d8711ffb522 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit b110067c6ec69ac5081a2fc50d1d645d60c73aab
Merge: 93a1c8a eb59c42
Author: Stefano Lattarini <address@hidden>
Date:   Fri Sep 2 10:04:43 2011 +0200

    Merge branch 'maint'
    
    * maint:
      coverage: vala support failing for VPATH from-scratch builds
      docs: report few more automake parsing limitations

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                                          |   20 +++++++
 THANKS                                             |    1 +
 doc/automake.texi                                  |   26 +++++++--
 tests/Makefile.am                                  |    3 +
 tests/Makefile.in                                  |    3 +
 ....test => doc-parsing-buglets-colneq-subst.test} |   36 ++++--------
 tests/doc-parsing-buglets-tabs.test                |   61 ++++++++++++++++++++
 tests/{distcheck-hook.test => vala-vpath.test}     |   43 ++++++++------
 8 files changed, 144 insertions(+), 49 deletions(-)
 copy tests/{distcheck-hook.test => doc-parsing-buglets-colneq-subst.test} (56%)
 create mode 100755 tests/doc-parsing-buglets-tabs.test
 copy tests/{distcheck-hook.test => vala-vpath.test} (61%)

diff --git a/ChangeLog b/ChangeLog
index a4b2b3b..464e67d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,23 @@
+2011-09-02 Stefano Lattarini  <address@hidden>
+
+       coverage: vala support failing for VPATH from-scratch builds
+       * tests/vala-vpath.test: New test, xfailing.
+       * tests/Makefile.am (TESTS): Update.
+       * THANKS: Update.
+       From a report by Zbigniew Jędrzejewski-Szmek.
+       Related to automake bug#8753.
+
+2011-09-01  Stefano Lattarini  <address@hidden>
+
+       docs: report few more automake parsing limitations
+       Partly motivated by automake bug#8360.
+       * doc/automake.texi (General Operation): Report few more automake
+       limitations w.r.t. parsing of unusual makefile constructs.  Related
+       minor reorderings.
+       * tests/doc-parsing-buglets-colneq-subst.test: New test.
+       * tests/doc-parsing-buglets-tabs.test: Likewise.
+       * tests/Makefile.am (TESTS): Update.
+
 2011-08-25  Stefano Lattarini  <address@hidden>
 
        tests: list "forgotten" test script in TESTS
diff --git a/THANKS b/THANKS
index 54c2320..01bed11 100644
--- a/THANKS
+++ b/THANKS
@@ -368,6 +368,7 @@ William S Fulton    address@hidden
 Yann Droneaud          address@hidden
 Younes Younes          address@hidden
 Zack Weinberg          address@hidden
+Zbigniew Jędrzejewski-Szmek address@hidden
 Zoltan Rado            address@hidden
 
 ;; Local Variables:
diff --git a/doc/automake.texi b/doc/automake.texi
index c982b40..09d1716 100644
--- a/doc/automake.texi
+++ b/doc/automake.texi
@@ -1818,14 +1818,30 @@ supported.  This operator appends its right hand 
argument to the variable
 specified on the left.  Automake will translate the operator into
 an ordinary @samp{=} operator; @samp{+=} will thus work with any make program.
 
address@hidden indentation
-Further note that variable assignments should not be indented with
address@hidden characters, use spaces if necessary.  On the other hand,
-rule commands should be indented with a leading @key{TAB} character.
-
 Automake tries to keep comments grouped with any adjoining rules or
 variable definitions.
 
address@hidden Limitations of automake parser
address@hidden Automake parser, limitations of
address@hidden indentation in Makefile.am
+Generally, Automake is not particularly smart in the parsing of unusual
+Makefile constructs, so you're advised to avoid fancy constructs or
+``creative'' use of whitespaces.
address@hidden Keep this in sync with doc-parsing-buglets-tabs.test.
+For example, @key{TAB} characters cannot be used between a target name
+and the following address@hidden:}'' character, and variable assignments
+shouldn't be indented with @key{TAB} characters.
address@hidden Keep this in sync with doc-parsing-buglets-colneq-subst.test.
+Also, using more complex macro in target names can cause trouble:
+
address@hidden
+% @kbd{cat Makefile.am}
+$(FOO:=x): bar
+% @kbd{automake}
+Makefile.am:1: bad characters in variable name `$(FOO'
+Makefile.am:1: `:='-style assignments are not portable
address@hidden example
+
 @cindex Make targets, overriding
 @cindex Make rules, overriding
 @cindex Overriding make rules
diff --git a/tests/Makefile.am b/tests/Makefile.am
index a194f44..de63c29 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -420,6 +420,8 @@ distcheck-configure-flags-subpkg.test \
 distcheck-hook.test \
 distcheck-hook2.test \
 dmalloc.test \
+doc-parsing-buglets-colneq-subst.test \
+doc-parsing-buglets-tabs.test \
 dollar.test \
 dollarvar.test \
 dollarvar2.test \
@@ -1020,6 +1022,7 @@ vala2.test \
 vala3.test \
 vala4.test \
 vala5.test \
+vala-vpath.test \
 vars.test \
 vars3.test \
 vartar.test \
diff --git a/tests/Makefile.in b/tests/Makefile.in
index 7fe2c93..976ed4f 100644
--- a/tests/Makefile.in
+++ b/tests/Makefile.in
@@ -693,6 +693,8 @@ distcheck-configure-flags-subpkg.test \
 distcheck-hook.test \
 distcheck-hook2.test \
 dmalloc.test \
+doc-parsing-buglets-colneq-subst.test \
+doc-parsing-buglets-tabs.test \
 dollar.test \
 dollarvar.test \
 dollarvar2.test \
@@ -1293,6 +1295,7 @@ vala2.test \
 vala3.test \
 vala4.test \
 vala5.test \
+vala-vpath.test \
 vars.test \
 vars3.test \
 vartar.test \
diff --git a/tests/distcheck-hook.test 
b/tests/doc-parsing-buglets-colneq-subst.test
similarity index 56%
copy from tests/distcheck-hook.test
copy to tests/doc-parsing-buglets-colneq-subst.test
index 9a2c384..685d2b6 100755
--- a/tests/distcheck-hook.test
+++ b/tests/doc-parsing-buglets-colneq-subst.test
@@ -14,40 +14,26 @@
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-# Check basic support for distcheck-hook.
+# Check a documented limitation of the Automake's Makefile parser
+# w.r.t. POSIX variable substitutions used in the name of targets.
+# See Section "General Operation" in the Automake manual.
+# If you cause some parts of this test to fail, chances are that you've
+# improved the Automake parser ;-)
+# See: <http://lists.gnu.org/archive/html/automake/2010-08/msg00074.html>
+# or: 
<http://thread.gmane.org/gmane.comp.sysutils.automake.general/11943/focus=11962>
 
 . ./defs || Exit 1
 
 set -e
 
-cat >> configure.in << 'END'
-AC_OUTPUT
-END
-
 cat > Makefile.am <<'END'
-distcheck-hook:
-       ls -l $(distdir)
-       chmod u+w $(distdir)
-       : > $(distdir)/dc-hook-has-run
-       chmod a-w $(distdir)
-check-local:
-       ls -l $(srcdir)
-       test -f $(srcdir)/dc-hook-has-run
+$(FOO:=x): bar
 END
 
 $ACLOCAL
-$AUTOMAKE
-$FGREP 'distcheck-hook' Makefile.in
-$FGREP '$(MAKE) $(AM_MAKEFLAGS) distcheck-hook' Makefile.in
-grep '^distcheck-hook:' Makefile.in
-
-$AUTOCONF
-./configure
+AUTOMAKE_fails
 
-$MAKE
-$MAKE check && Exit 1
-$MAKE distdir
-test -f $distdir/dc-hook-has-run && Exit 1
-$MAKE distcheck
+grep 'bad characters.*variable name.*\$(FOO' stderr
+grep ':=.*assignments.*not portable' stderr
 
 :
diff --git a/tests/doc-parsing-buglets-tabs.test 
b/tests/doc-parsing-buglets-tabs.test
new file mode 100755
index 0000000..acff363
--- /dev/null
+++ b/tests/doc-parsing-buglets-tabs.test
@@ -0,0 +1,61 @@
+#! /bin/sh
+# Copyright (C) 2011 Free Software Foundation, Inc.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+# Check the documented limitation of the Automake's Makefile parser w.r.t.
+# use of TAB characters; see Section "General Operation" in the Automake
+# manual, and automake bug#8360.
+# If you cause some parts of this test to fail, chances are that you've
+# improved the Automake parser ;-)
+
+. ./defs || Exit 1
+
+set -e
+
+cat > Makefile.am <<END
+.PHONY: test
+test: all check
+
+fail:
address@hidden "'\$@ recipe executed'"; exit 1
+
+## This won't be recognized as a target+recipe by Automake.
+all-local${tab}:
address@hidden 1
+
+## This won't be recognized as a target+rdependency by Automake.
+all-local${tab}: fail
+
+just_to_separate: dummy deps
+
+## This won't be recognized as a variable assignment by Automake.
+${tab}bin_PROGRAMS = foo
+END
+
+echo AC_OUTPUT >> configure.in
+
+$ACLOCAL
+$AUTOMAKE
+
+$FGREP '$(EXEEEXT)' Makefile.in && Exit 1
+grep 'all:.*all-local' Makefile.in && Exit 1
+grep "^${tab}bin_PROGRAMS = foo" Makefile.in
+
+$AUTOCONF
+./configure
+
+$MAKE test
+
+:
diff --git a/tests/distcheck-hook.test b/tests/vala-vpath.test
similarity index 61%
copy from tests/distcheck-hook.test
copy to tests/vala-vpath.test
index 9a2c384..98e0f43 100755
--- a/tests/distcheck-hook.test
+++ b/tests/vala-vpath.test
@@ -14,40 +14,45 @@
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-# Check basic support for distcheck-hook.
+# Test to make sure vala support handles from-scratch VPATH builds.
+# See automake bug#8753.
 
+required="valac"
 . ./defs || Exit 1
 
 set -e
 
+mkdir src
+
 cat >> configure.in << 'END'
+AC_CONFIG_SRCDIR([hello.vala])
+AC_PROG_CC
+AM_PROG_VALAC([0.7])
 AC_OUTPUT
 END
 
+
 cat > Makefile.am <<'END'
-distcheck-hook:
-       ls -l $(distdir)
-       chmod u+w $(distdir)
-       : > $(distdir)/dc-hook-has-run
-       chmod a-w $(distdir)
-check-local:
-       ls -l $(srcdir)
-       test -f $(srcdir)/dc-hook-has-run
+bin_PROGRAMS = foo
+foo_SOURCES = hello.vala
 END
 
-$ACLOCAL
-$AUTOMAKE
-$FGREP 'distcheck-hook' Makefile.in
-$FGREP '$(MAKE) $(AM_MAKEFLAGS) distcheck-hook' Makefile.in
-grep '^distcheck-hook:' Makefile.in
+cat > hello.vala <<'END'
+void main ()
+{
+  stdout.printf ("foo\n");
+  return 0;
+}
+END
 
-$AUTOCONF
-./configure
+$ACLOCAL  || framework_failure_ "aclocal error"
+$AUTOCONF || framework_failure_ "autoconf error"
+$AUTOMAKE || framework_failure_ "automake error"
 
+mkdir build
+cd build
+../configure || Exit 77
 $MAKE
-$MAKE check && Exit 1
-$MAKE distdir
-test -f $distdir/dc-hook-has-run && Exit 1
 $MAKE distcheck
 
 :


hooks/post-receive
-- 
GNU Automake



reply via email to

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