AC_INIT(libdbusmenu, 17.09.29.1, ted@canonical.com) AC_COPYRIGHT([Copyright 2009-2016 Canonical]) AC_PREREQ(2.62) AM_CONFIG_HEADER(config.h) AM_INIT_AUTOMAKE(libdbusmenu, 16.04.0, [-Wno-portability]) AM_MAINTAINER_MODE IT_PROG_INTLTOOL([0.35.0]) AC_ISC_POSIX AC_PROG_CC AM_PROG_CC_C_O AC_STDC_HEADERS AC_PROG_LIBTOOL AC_SUBST(VERSION) AC_CONFIG_MACRO_DIR([m4]) m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])]) AC_PATH_PROG([GLIB_MKENUMS], [glib-mkenums]) ########################### # GTK Doc ########################### GTK_DOC_CHECK([1.14],[--flavour no-tmpl]) ########################### # Dependencies - GLib ########################### GLIB_REQUIRED_VERSION=2.35.4 PKG_CHECK_MODULES(DBUSMENUGLIB, glib-2.0 >= $GLIB_REQUIRED_VERSION gio-2.0 >= $GLIB_REQUIRED_VERSION) AC_SUBST(DBUSMENUGLIB_CFLAGS) AC_SUBST(DBUSMENUGLIB_LIBS) ########################### # Dependencies - GTK ########################### GTK_REQUIRED_VERSION=2.16 GTK3_REQUIRED_VERSION=2.91 AC_ARG_ENABLE([gtk], AC_HELP_STRING([--disable-gtk], [Disable libdbusmenu-gtk library]), [enable_gtk=$enableval], [enable_gtk=auto]) AM_CONDITIONAL([WANT_LIBDBUSMENUGTK], [test "x$enable_gtk" != "xno"]) AC_ARG_WITH([gtk], [AS_HELP_STRING([--with-gtk], [Which version of gtk to use @<:@default=3@:>@])], [], [with_gtk=3]) AM_CONDITIONAL([USE_GTK3], [test "x$with_gtk" = "x3"]) AS_IF([test "x$enable_gtk" != "xno"],[ AS_IF([test "x$with_gtk" = x3], [PKG_CHECK_MODULES(DBUSMENUGTK, gtk+-3.0 >= $GTK3_REQUIRED_VERSION atk glib-2.0 >= $GLIB_REQUIRED_VERSION, [have_gtk=yes] ) ], [test "x$with_gtk" = x2], [PKG_CHECK_MODULES(DBUSMENUGTK, gtk+-2.0 >= $GTK_REQUIRED_VERSION atk glib-2.0 >= $GLIB_REQUIRED_VERSION, [have_gtk=yes] ) ], [AC_MSG_FAILURE([Value for --with-gtk was neither 2 nor 3])] ) ]) AC_SUBST(DBUSMENUGTK_CFLAGS) AC_SUBST(DBUSMENUGTK_LIBS) ########################### # Dependencies - dumper ########################### X11_REQUIRED_VERSION=1.3 AC_ARG_ENABLE([dumper], AC_HELP_STRING([--disable-dumper], [Disable dbusmenudumper tool]), [enable_dumper=$enableval], [enable_dumper=auto]) AM_CONDITIONAL([WANT_DBUSMENUDUMPER], [test "x$enable_dumper" != "xno"]) AS_IF([test "x$enable_dumper" != "xno"],[ PKG_CHECK_MODULES(DBUSMENUDUMPER, gtk+-2.0 >= $GTK_REQUIRED_VERSION x11 >= $X11_REQUIRED_VERSION, [have_dumper=yes] ) ]) AC_SUBST(DBUSMENUDUMPER_CFLAGS) AC_SUBST(DBUSMENUDUMPER_LIBS) ########################### # Dependencies - Testing ########################### JSON_GLIB_REQUIRED_VERSION=0.13.4 GIO_UNIX_REQUIRED_VERSION=2.24 AC_ARG_ENABLE([tests], AC_HELP_STRING([--disable-tests], [Disable tests]), [enable_tests=$enableval], [enable_tests=auto]) AM_CONDITIONAL([WANT_TESTS], [test "x$enable_tests" != "xno"]) AS_IF([test "x$enable_tests" != "xno"],[ PKG_CHECK_MODULES(DBUSMENUTESTS, json-glib-1.0 >= $JSON_GLIB_REQUIRED_VERSION gio-unix-2.0 >= $GIO_UNIX_REQUIRED_VERSION, [have_tests=yes] ) PKG_CHECK_MODULES(DBUSMENUTESTSVALGRIND, valgrind, have_valgrind=yes, have_valgrind=no) AM_CONDITIONAL([HAVE_VALGRIND], [test "x$have_valgrind" = "xyes"]) ]) AC_SUBST(DBUSMENUTESTS_CFLAGS) AC_SUBST(DBUSMENUTESTS_LIBS) ########################### # GObject Introspection ########################### GOBJECT_INTROSPECTION_CHECK([0.6.7]) PKG_CHECK_EXISTS([gobject-introspection-1.0 >= 0.10], introspection_ten=yes, introspection_ten=no) AM_CONDITIONAL(INTROSPECTION_TEN, [test "x$introspection_ten" = "xyes"]) if test "$enable_introspection" = "yes"; then # Redefine introspection dirs using proper prefixes INTROSPECTION_GIRDIR=`$PKG_CONFIG --define-variable=datadir=${datadir} --variable=girdir gobject-introspection-1.0` AC_SUBST(INTROSPECTION_GIRDIR) INTROSPECTION_TYPELIBDIR=`$PKG_CONFIG --define-variable=libdir=${libdir} --variable=typelibdir gobject-introspection-1.0` AC_SUBST(INTROSPECTION_TYPELIBDIR) fi ########################### # Vala API Generation ########################### AC_ARG_ENABLE([vala], AC_HELP_STRING([--disable-vala], [Disable vala]), [enable_vala=$enableval], [enable_vala=auto]) AS_IF([test "x$enable_vala" != "xno"],[ AM_COND_IF([HAVE_INTROSPECTION],,[ AC_MSG_ERROR([Vala bindings require introspection support, please --enable-introspection]) ]) AC_PATH_PROG([VALA_API_GEN], [vapigen]) ]) AM_CONDITIONAL([HAVE_VALA], [test -n "$VALA_API_GEN"]) ########################### # XSLT Processor ########################### AC_PATH_PROG([XSLT_PROC], [xsltproc]) ########################### # Lib versioning ########################### LIBDBUSMENU_CURRENT=4 LIBDBUSMENU_REVISION=12 LIBDBUSMENU_AGE=0 AC_SUBST(LIBDBUSMENU_CURRENT) AC_SUBST(LIBDBUSMENU_REVISION) AC_SUBST(LIBDBUSMENU_AGE) ########################### # Internationalization ########################### GETTEXT_PACKAGE=libdbusmenu AC_SUBST(GETTEXT_PACKAGE) AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", [Name of the default gettext domain]) AM_GLIB_GNU_GETTEXT ########################### # Massive Debugging ########################### with_massivedebugging="no" AC_ARG_ENABLE(massivedebugging, AS_HELP_STRING([--enable-massivedebugging], [Print out so much information your brain will hurt]), with_massivedebugging=$enableval, with_massivedebugging=no) if test "x$with_massivedebugging" = "xyes"; then AC_DEFINE([MASSIVEDEBUGGING], [1], [Print everyting]) fi ########################### # gcov coverage reporting ########################### m4_include([m4/gcov.m4]) AC_TDD_GCOV AM_CONDITIONAL([HAVE_GCOV], [test "x$ac_cv_check_gcov" = xyes]) AM_CONDITIONAL([HAVE_LCOV], [test "x$ac_cv_check_lcov" = xyes]) AM_CONDITIONAL([HAVE_GCOVR], [test "x$ac_cv_check_gcovr" = xyes]) AC_SUBST(COVERAGE_CFLAGS) AC_SUBST(COVERAGE_LDFLAGS) ########################### # Files ########################### AC_OUTPUT([ Makefile po/Makefile.in libdbusmenu-glib/Makefile libdbusmenu-glib/dbusmenu-glib-0.4.pc libdbusmenu-gtk/Makefile libdbusmenu-gtk/dbusmenu-gtk-0.4.pc libdbusmenu-gtk/dbusmenu-gtk3-0.4.pc tools/Makefile tools/testapp/Makefile tests/Makefile tests/dbusmenu-jsonloader-0.4.pc docs/Makefile docs/libdbusmenu-glib/Makefile docs/libdbusmenu-glib/reference/Makefile docs/libdbusmenu-glib/reference/version.xml docs/libdbusmenu-gtk/Makefile docs/libdbusmenu-gtk/reference/Makefile docs/libdbusmenu-gtk/reference/version.xml ]) ########################### # Results ########################### AC_MSG_NOTICE([ libdbusmenu Configuration: Prefix: $prefix Massive Debugging: $with_massivedebugging GTK+ Version: $with_gtk ]) AS_IF([test "x$have_tests" = "xyes"], AC_MSG_NOTICE([ Tests: yes]), AC_MSG_NOTICE([ Tests: no]) ) AS_IF([test "x$enable_gtk" = "xno"], AC_MSG_NOTICE([ Gtk: no]), AC_MSG_NOTICE([ Gtk: yes (gtk$with_gtk)]) ) AM_COND_IF([HAVE_VALA], AC_MSG_NOTICE([ Vala bindings: yes]), AC_MSG_NOTICE([ Vala bindings no]) ) AS_IF([test "x$have_dumper" = "xyes"], AC_MSG_NOTICE([ Dumper: yes]), AC_MSG_NOTICE([ Dumper: no]) ) AS_IF([test "x$use_gcov" = "xyes"], AC_MSG_NOTICE([ Coverage reporting: yes]), AC_MSG_NOTICE([ Coverage reporting: no]) )