[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Automake-commit] [SCM] GNU Automake branch, maint, updated. v1.11-435-g
From: |
Stefano Lattarini |
Subject: |
[Automake-commit] [SCM] GNU Automake branch, maint, updated. v1.11-435-geb59c42 |
Date: |
Fri, 02 Sep 2011 08:05:13 +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=eb59c423d7addf124d33f50ac920789db1304adb
The branch, maint has been updated
via eb59c423d7addf124d33f50ac920789db1304adb (commit)
via 1dcba7b847b137330ed91ef8269d403163387e7e (commit)
from 236ad0bcb351a6e0795a69f272646bd2201b4056 (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 -----------------------------------------------------------------
-----------------------------------------------------------------------
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 7c11ab3..f7514d1 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 d91c5bb..f83e1fc 100644
--- a/THANKS
+++ b/THANKS
@@ -365,6 +365,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 49a6cd1..3be8578 100644
--- a/doc/automake.texi
+++ b/doc/automake.texi
@@ -1813,14 +1813,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 a1c67ff..4f8e0f6 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -325,6 +325,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 \
@@ -834,6 +836,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 4b2d845..32e3297 100644
--- a/tests/Makefile.in
+++ b/tests/Makefile.in
@@ -603,6 +603,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 \
@@ -1112,6 +1114,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
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Automake-commit] [SCM] GNU Automake branch, maint, updated. v1.11-435-geb59c42,
Stefano Lattarini <=