[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-696-g
From: |
Stefano Lattarini |
Subject: |
[Automake-commit] [SCM] GNU Automake branch, maint, updated. v1.11-696-g51f61df |
Date: |
Wed, 29 Feb 2012 19:44:02 +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=51f61dfb1e861062aaa1d73fab71278c85fe0594
The branch, maint has been updated
via 51f61dfb1e861062aaa1d73fab71278c85fe0594 (commit)
via 7d335efe6f874af817c2f29ef85a803d8db8a43a (commit)
from 4df475a2d5ee114d1709884ec57698d34c5493cb (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:
THANKS | 1 +
automake.in | 27 +++++------
tests/list-of-tests.mk | 1 +
tests/{vala-mix.test => vala-mix2.test} | 78 ++++++++++++++++---------------
4 files changed, 56 insertions(+), 51 deletions(-)
copy tests/{vala-mix.test => vala-mix2.test} (64%)
diff --git a/THANKS b/THANKS
index b512b6b..d54e9d4 100644
--- a/THANKS
+++ b/THANKS
@@ -264,6 +264,7 @@ Olivier Louchart-Fletcher address@hidden
Olly Betts address@hidden
Oren Ben-Kiki address@hidden
Owen Taylor address@hidden
+Quentin Glidic address@hidden
Patrick Welche address@hidden
Patrik Weiskircher address@hidden
Paul Berrevoets address@hidden
diff --git a/automake.in b/automake.in
index cdbb820..5ae151b 100644
--- a/automake.in
+++ b/automake.in
@@ -6014,20 +6014,19 @@ sub lang_vala_finish_target ($$)
my ($self, $name) = @_;
my $derived = canonicalize ($name);
- my $varname = $derived . '_SOURCES';
- my $var = var ($varname);
+ my $var = var "${derived}_SOURCES";
+ return unless $var;
- if ($var)
+ my @vala_sources = grep { /\.vala$/ } ($var->value_as_list_recursive);
+
+ foreach my $vala_file (@vala_sources)
{
- foreach my $file ($var->value_as_list_recursive)
- {
- $output_rules .= "\$(srcdir)/$file:
\$(srcdir)/${derived}_vala.stamp\n"
- . "address@hidden test -f \$@; then :; else rm -f
\$(srcdir)/${derived}_vala.stamp; fi\n"
- . "address@hidden test -f \$@; then :; else \\\n"
- . "\t \$(MAKE) \$(AM_MAKEFLAGS) \$(srcdir)/${derived}_vala.stamp;
\\\n"
- . "\tfi\n"
- if $file =~ s/(.*)\.vala$/$1.c/;
- }
+ (my $c_file = $vala_file) =~ s/(.*)\.vala$/$1.c/;
+ $output_rules .= "\$(srcdir)/$c_file: \$(srcdir)/${derived}_vala.stamp\n"
+ . "address@hidden test -f \$@; then :; else rm -f
\$(srcdir)/${derived}_vala.stamp; fi\n"
+ . "address@hidden test -f \$@; then :; else \\\n"
+ . "\t \$(MAKE) \$(AM_MAKEFLAGS) \$(srcdir)/${derived}_vala.stamp;
\\\n"
+ . "\tfi\n"
}
# Add rebuild rules for generated header and vapi files
@@ -6077,7 +6076,7 @@ sub lang_vala_finish_target ($$)
my $silent = silent_flag ();
$output_rules .=
- "\$(srcdir)/${derived}_vala.stamp: \$(${derived}_SOURCES)\n".
+ "\$(srcdir)/${derived}_vala.stamp: @vala_sources\n".
# Since the C files generated from the vala sources depend on the
# ${derived}_vala.stamp file, we must ensure its timestamp is older than
# those of the C files generated by the valac invocation below (this is
@@ -6085,7 +6084,7 @@ sub lang_vala_finish_target ($$)
# Thus we need to create the stamp file *before* invoking valac, and to
# move it to its final location only after valac has been invoked.
"\t${silent}rm -f \$\@ && echo stamp > address@hidden".
- "\t${verbose}\$(am__cd) \$(srcdir) && ${compile} \$(${derived}_SOURCES)\n".
+ "\t${verbose}\$(am__cd) \$(srcdir) && $compile @vala_sources\n".
"\t${silent}mv -f address@hidden address@hidden";
push_dist_common ("${derived}_vala.stamp");
diff --git a/tests/list-of-tests.mk b/tests/list-of-tests.mk
index bc64d61..2b73de2 100644
--- a/tests/list-of-tests.mk
+++ b/tests/list-of-tests.mk
@@ -885,6 +885,7 @@ vala4.test \
vala5.test \
vala-vpath.test \
vala-mix.test \
+vala-mix2.test \
vars.test \
vars3.test \
vartar.test \
diff --git a/tests/vala-mix.test b/tests/vala-mix2.test
similarity index 64%
copy from tests/vala-mix.test
copy to tests/vala-mix2.test
index 73a07d9..88d2818 100755
--- a/tests/vala-mix.test
+++ b/tests/vala-mix2.test
@@ -14,40 +14,28 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-# Vala sources and C sources in the same program. Functional test.
+# Vala sources, C and C++ sources and C and C++ headers in the same
+# program. Functional test. See automake bug#10894.
-required='valac cc GNUmake'
+required='valac cc c++ GNUmake'
. ./defs || Exit 1
set -e
cat >> configure.in <<'END'
AC_PROG_CC
-AM_PROG_CC_C_O
+AC_PROG_CXX
AM_PROG_VALAC
AC_OUTPUT
END
cat > Makefile.am <<'END'
-bin_PROGRAMS = zardoz mu
+bin_PROGRAMS = zardoz
AM_VALAFLAGS = --profile=posix
-zardoz_SOURCES = foo.vala bar.c
-mu_SOURCES = 1.vala 2.c
-mu_VALAFLAGS = $(AM_VALAFLAGS) --main=run
-mu_CFLAGS = -DHAVE_MU
+zardoz_SOURCES = zardoz.vala foo.h bar.c baz.c zen.hh master.cxx
END
-if cross_compiling; then :; else
- unindent >> Makefile.am <<'END'
- check-local:
- ./zardoz
- ./mu
- ./zardoz | grep "foo is alive"
- ./mu | grep "Howdy, World!"
-END
-fi
-
-cat > foo.vala <<'END'
+cat > zardoz.vala <<'END'
int main ()
{
stdout.printf ("foo is alive\n");
@@ -55,23 +43,30 @@ int main ()
}
END
-echo 'extern int i = 0;' > bar.c
+cat > foo.h <<'END'
+int foo;
+int bar (void);
+int baz (void);
+END
-cat > 1.vala <<'END'
-int run ()
-{
- stdout.printf ("Howdy, World!\n");
- return 0;
-}
+cat > bar.c <<'END'
+#include "foo.h"
+int bar (void) { return foo + baz (); }
END
-cat > 2.c <<'END'
-#ifdef HAVE_MU
-int all_is_ok = 1;
-#else
-#error "HAVE_MU no defined"
-chocke me
-#endif
+cat > baz.c <<'END'
+#include "foo.h"
+extern int foo = 0;
+int baz (void) { return 0; }
+END
+
+cat > zen.hh <<'END'
+#include <iostream>
+END
+
+cat > master.cxx <<'END'
+#include "zen.hh"
+void chatty (void) { std::cout << "Hello, stranger!\n"; }
END
$ACLOCAL
@@ -82,14 +77,11 @@ $AUTOCONF
$MAKE all
ls -l # For debugging.
-$MAKE check
have_generated_files ()
{
- test -f mu_vala.stamp
test -f zardoz_vala.stamp
- test -f foo.c
- test -f 1.c
+ test -f zardoz.c
}
# Our vala-related rules must create stamp files and intermediate
@@ -100,12 +92,24 @@ have_generated_files
$MAKE -q
$MAKE -n | $FGREP vala.stamp && Exit 1
+# But are triggered when they should.
+for file in zardoz.vala foo.h bar.c baz.c zen.hh master.cxx; do
+ $sleep
+ echo '& choke me !' >> $file
+ $MAKE && Exit 1
+ $sleep
+ sed '$d' $file > t
+ mv -f t $file
+ $MAKE
+done
+
# Check the distribution.
$MAKE distcheck
# Stamp files and intermediate C files should *not* be removed
# by "make clean".
$MAKE clean
+ls -l # For debugging.
have_generated_files
# But stamp files should be removed by "maintainer-clean" (the
hooks/post-receive
--
GNU Automake
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Automake-commit] [SCM] GNU Automake branch, maint, updated. v1.11-696-g51f61df,
Stefano Lattarini <=