* t/vala1.sh: Remove, turned into ... * t/vala-libs.sh: ... this functional test instead. * t/list-of-tests.mk: Adjust.
Signed-off-by: Stefano Lattarini <stefano.lattar...@gmail.com> --- t/list-of-tests.mk | 2 +- t/vala-libs.sh | 100 ++++++++++++++++++++++++++++++++++++++++++++++++++++ t/vala1.sh | 52 --------------------------- 3 files changed, 101 insertions(+), 53 deletions(-) create mode 100755 t/vala-libs.sh delete mode 100755 t/vala1.sh diff --git a/t/list-of-tests.mk b/t/list-of-tests.mk index 551a04e..ea77bc1 100644 --- a/t/list-of-tests.mk +++ b/t/list-of-tests.mk @@ -1191,13 +1191,13 @@ t/upc.sh \ t/upc2.sh \ t/upc3.sh \ t/vala.sh \ -t/vala1.sh \ t/vala2.sh \ t/vala3.sh \ t/vala4.sh \ t/vala5.sh \ t/vala-vapi.sh \ t/vala-headers.sh \ +t/vala-libs.sh \ t/vala-vpath.sh \ t/vala-mix.sh \ t/vala-mix2.sh \ diff --git a/t/vala-libs.sh b/t/vala-libs.sh new file mode 100755 index 0000000..fa1d21b --- /dev/null +++ b/t/vala-libs.sh @@ -0,0 +1,100 @@ +#! /bin/sh +# Copyright (C) 2012 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/>. + +# Building libraries (libtool and static) from Vala sources. +# And use of vapi files to call C code from Vala. + +required="valac cc pkg-config libtoolize GNUmake" +. ./defs || Exit 1 + +cat >> configure.ac << 'END' +AC_PROG_CC +AM_PROG_CC_C_O +AM_PROG_AR +AC_PROG_RANLIB +AC_PROG_LIBTOOL +AM_PROG_VALAC([0.7.3]) +PKG_CHECK_MODULES([GOBJECT], [gobject-2.0 >= 2.4]) +AC_OUTPUT +END + +cat > Makefile.am << 'END' +lib_LIBRARIES = libmu.a +lib_LTLIBRARIES = src/libzardoz.la +libmu_a_SOURCES = mu.vala mu2.c mu.vapi mu2.h +libmu_a_CPPFLAGS = -DOKOKIMDEFINED=1 +libmu_a_VALAFLAGS = --profile=posix --vapidir=$(srcdir) +AM_CFLAGS = $(GOBJECT_CFLAGS) +src_libzardoz_la_LIBADD = $(GOBJECT_LIBS) +src_libzardoz_la_SOURCES = src/zardoz-foo.vala src/zardoz-bar.vala +src/zardoz-bar.vala: src/zardoz-foo.vala + sed 's/Foo/Bar/g' $< >$@ +END + +libtoolize +$ACLOCAL +$AUTOCONF +$AUTOMAKE -a + +./configure || skip_ "configure failed" + +cat > mu2.c << 'END' +#include "mu2.h" +int mu2 (void) +{ + return OKOKIMDEFINED; +} +END + +cat > mu2.h << 'END' +int mu2 (void); +END + +cat > mu.vapi <<'END' +[CCode (cheader_filename = "mu2.h", cname = "mu2")] +public int c_mu2 (); +END + +cat > mu.vala << 'END' +int main () +{ + stdout.printf ("mumumu\n"); + return c_mu2 (); +} +END + +mkdir src +cat > src/zardoz-foo.vala << 'END' +using GLib; +public class Foo { + public static void zap () { + stdout.printf ("FooFooFoo!\n"); + } +} +END + +$MAKE +test -f libmu.a +test -f src/libzardoz.la +$FGREP "mumumu" mu.c +$FGREP "FooFooFoo" src/zardoz-foo.c +$FGREP "BarBarBar" src/zardoz-bar.c +test -f libmu_a_vala.stamp +test -f src_libzardoz_la_vala.stamp + +$MAKE distcheck + +: diff --git a/t/vala1.sh b/t/vala1.sh deleted file mode 100755 index 9aca0fb..0000000 --- a/t/vala1.sh +++ /dev/null @@ -1,52 +0,0 @@ -#! /bin/sh -# Copyright (C) 1996-2012 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/>. - -# Test to make sure intermediate .c files are built from vala sources -# in non-recursive automake mode. - -required="libtool" -. ./defs || Exit 1 - -cat >> 'configure.ac' << 'END' -AC_PROG_CC -AM_PROG_AR -AC_PROG_LIBTOOL -AM_PROG_VALAC -AC_OUTPUT -END - -cat > 'Makefile.am' <<'END' -bin_PROGRAMS = src/zardoz -src_zardoz_SOURCES = src/zardoz.vala - -lib_LTLIBRARIES = src/libzardoz.la -src_libzardoz_la_SOURCES = src/zardoz-foo.vala src/zardoz-bar.vala -END - -: > ltmain.sh -: > config.sub -: > config.guess - -$ACLOCAL -$AUTOMAKE -a - -grep 'VALAC' Makefile.in -grep 'src_zardoz_OBJECTS' Makefile.in -grep 'src_libzardoz_la_OBJECTS' Makefile.in -grep 'src_zardoz_vala.stamp' Makefile.in -grep 'src_libzardoz_la_vala.stamp' Makefile.in -grep 'zardoz\.c' Makefile.in -grep 'src/zardoz-foo\.c' Makefile.in -- 1.7.9.5