From f86f77133dd45cd824ba5cf40a38d8875d2a5420 Mon Sep 17 00:00:00 2001 From: Colomban Wendling Date: Thu, 26 Feb 2015 16:06:53 +0100 Subject: [PATCH 1/2] autotools: Add convenience macros to check for Vala In addition, they properly support Automake < 1.12.5 as well as newer versions. --- build/vala.m4 | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 build/vala.m4 diff --git a/build/vala.m4 b/build/vala.m4 new file mode 100644 index 000000000..ce0e41e29 --- /dev/null +++ b/build/vala.m4 @@ -0,0 +1,35 @@ +dnl GP_CHECK_VALAC([version], [action-if-found], [action-if-not-found]) +dnl Checks for the Vala compiler. Similar to AM_PROG_VALAC but supports +dnl 2nd and 3rd arguments with Automake < 1.12.5 +AC_DEFUN([GP_CHECK_VALAC], +[ + gp_have_valac=yes + AM_PROG_VALAC([$1],,[gp_have_valac=no]) + dnl Automake < 1.12.5 does not support 3rd arg but leaves $VALAC + dnl empty if not found, so emulate it + AS_IF([test "x$VALAC" = x], [gp_have_valac=no]) + AS_IF([test "$gp_have_valac" = yes], + [m4_default([$2], [:])], + [m4_default([$3], [:])]) +]) + +dnl GP_CHECK_PLUGIN_VALA(plugin, [valac-version]) +dnl Checks for the Vala compiler and takes the appropriate action on +dnl $plugin depending on its presence. +dnl FIXME: take into account that the compiler is optional if we have +dnl the generated C sources +AC_DEFUN([GP_CHECK_PLUGIN_VALA], +[ + AS_IF([test "$m4_tolower(AS_TR_SH(enable_$1))" = no],[], + [GP_CHECK_VALAC([$2], + [dnl we fake the checking messages here because + dnl GP_CHECK_VALAC outputs messages itself + AC_MSG_CHECKING([whether the vala compiler is compatible with $1]) + AC_MSG_RESULT([yes])], + [AC_MSG_CHECKING([whether the vala compiler is compatible with $1]) + AC_MSG_RESULT([no]) + AS_IF([test "$m4_tolower(AS_TR_SH(enable_$1))" = yes], + [AC_MSG_ERROR([$1 requires the Vala compiler])], + [test "$m4_tolower(AS_TR_SH(enable_$1))" = auto], + [m4_tolower(AS_TR_SH(enable_$1))=no])])]) +]) From 7a27f05570fad97802038a7d82c2bf537dd9421e Mon Sep 17 00:00:00 2001 From: Colomban Wendling Date: Thu, 26 Feb 2015 16:09:43 +0100 Subject: [PATCH 2/2] multiterm: Use the new facility to check for Vala --- build/multiterm.m4 | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/build/multiterm.m4 b/build/multiterm.m4 index d6deae75a..7428caa29 100644 --- a/build/multiterm.m4 +++ b/build/multiterm.m4 @@ -2,16 +2,7 @@ AC_DEFUN([GP_CHECK_MULTITERM], [ GP_ARG_DISABLE([multiterm], [auto]) - AS_IF([test "$enable_multiterm" != "no"], - [ - dnl FIXME: if the C sources are present (e.g. in a release tarball), - dnl we don't actually need valac - AM_PROG_VALAC([0.7.0]) - AS_IF([test "$VALAC" = "valac"], - [AS_IF([test "$enable_multiterm" = "auto"], - [enable_multiterm=no], - [AC_MSG_ERROR([valac not found])])]) - ]) + GP_CHECK_PLUGIN_VALA([multiterm]) GP_CHECK_PLUGIN_DEPS([multiterm], [MULTITERM], [gtk+-2.0 geany vte]) GP_COMMIT_PLUGIN_STATUS([MultiTerm])