## MANDATORY for the GTK+ client
##
##
-GTK_MINIMUM=2.22.0
-AC_SUBST(GTK_MINIMUM)
+
+GTK2_MINIMUM=2.22.0
+AC_SUBST(GTK2_MINIMUM)
+GTK3_MINIMUM=3.2.0
+AC_SUBST(GTK3_MINIMUM)
GLIB_MINIMUM=2.28.0
AC_SUBST(GLIB_MINIMUM)
GIO_MINIMUM=2.26.0
dnl
dnl detection for the GTK+ client
-PKG_CHECK_MODULES(GTK,
- [gtk+-2.0 >= $GTK_MINIMUM
- glib-2.0 >= $GLIB_MINIMUM
- gio-2.0 >= $GIO_MINIMUM,
- gmodule-2.0 >= $GLIB_MINIMUM
- gthread-2.0 >= $GLIB_MINIMUM],
- [have_gtk=yes],
- [have_gtk=no])
-AC_ARG_ENABLE([gtk],
- AS_HELP_STRING([--enable-gtk],[build gtk client]),
- [want_gtk=${enableval}],
- [want_gtk=${have_gtk}])
-build_gtk=no
+
+gtk_version="none"
+with_gtk_default="no"
+PKG_CHECK_MODULES([GTK2],[gtk+-2.0 >= $GTK2_MINIMUM],[gtk_version="2" with_gtk_default="yes"])
+PKG_CHECK_MODULES([GTK3],[gtk+-3.0 >= $GTK3_MINIMUM],[gtk_version="3" with_gtk_default="yes"])
+AC_ARG_WITH([gtk], AC_HELP_STRING([--with-gtk],[with Gtk]),
+ [with_gtk=$withval],
+ [with_gtk=$with_gtk_default])
+AC_ARG_ENABLE([nls],
+ [AS_HELP_STRING([--enable-nls],[enable native language support])],,
+ [enable_nls=yes])
+AM_CONDITIONAL([BUILD_GTK],[test "x$with_gtk" = "xyes"])
use_libappindicator=no
-if test "x$want_gtk" = "xyes" ; then
- if test "x$have_gtk" = "xyes"; then
- build_gtk=yes
- else
- AC_MSG_ERROR("GTK+ not found!")
+if test "x$with_gtk" = "xyes" ; then
+
+ if test "x$gtk_version" = "xnone" ; then
+ AC_MSG_ERROR("GTK+ not found!")
fi
-fi
-AM_CONDITIONAL([BUILD_GTK],[test "x$build_gtk" = "xyes"])
+ if test "x$enable_nls" = "xno" ; then
+ AC_MSG_ERROR("The gtk client cannot be built without nls support. Try adding either --enable-nls or --disable-gtk" )
+ fi
+
+ if test "x$gtk_version" = "x3"; then
+
+ PKG_CHECK_MODULES([GTK], [gtk+-3.0 >= $GTK3_MINIMUM
+ glib-2.0 >= $GLIB_MINIMUM
+ gio-2.0 >= $GIO_MINIMUM,
+ gmodule-2.0 >= $GLIB_MINIMUM
+ gthread-2.0 >= $GLIB_MINIMUM])
+ PKG_CHECK_MODULES([LIBAPPINDICATOR],
+ [appindicator3-0.1 >= $LIBAPPINDICATOR_MINIMUM],
+ [have_libappindicator=yes],
+ [have_libappindicator=no])
+ AC_MSG_NOTICE([using GTK+ 3])
+ else
-if test "x$build_gtk" = "xyes"; then
+ PKG_CHECK_MODULES([GTK], [gtk+-2.0 >= $GTK2_MINIMUM
+ glib-2.0 >= $GLIB_MINIMUM
+ gio-2.0 >= $GIO_MINIMUM,
+ gmodule-2.0 >= $GLIB_MINIMUM
+ gthread-2.0 >= $GLIB_MINIMUM])
+ PKG_CHECK_MODULES([LIBAPPINDICATOR],
+ [appindicator-0.1 >= $LIBAPPINDICATOR_MINIMUM],
+ [have_libappindicator=yes],
+ [have_libappindicator=no])
+ AC_MSG_NOTICE([using GTK+ 2])
- PKG_CHECK_MODULES([LIBAPPINDICATOR],
- [appindicator-0.1 >= $LIBAPPINDICATOR_MINIMUM],
- [have_libappindicator=yes],
- [have_libappindicator=no])
+ fi
- AC_ARG_ENABLE([libappindicator],
- AS_HELP_STRING([--enable-libappindicator],[enable AppIndicator support]),,
- [enable_libappindicator=yes])
- use_libappindicator=no
if test "x$have_libappindicator" = "xyes"; then
- if test "x$enable_libappindicator" = "xyes" ; then
- use_libappindicator=yes
- AC_DEFINE([HAVE_LIBAPPINDICATOR], 1)
- else
- LIBAPPINDICATOR_CFLAGS=
- LIBAPPINDICATOR_LIBS=
- fi
+ use_libappindicator=yes
+ AC_DEFINE([HAVE_LIBAPPINDICATOR], 1)
+ else
+ LIBAPPINDICATOR_CFLAGS=
+ LIBAPPINDICATOR_LIBS=
fi
fi
-AC_ARG_ENABLE([nls],
- AS_HELP_STRING([--enable-nls],[enable native language support]),,
- [enable_nls=yes])
-
-if test "x$build_gtk" = "xyes" -a "x$enable_nls" = "xno" ; then
- AC_MSG_ERROR("The gtk client cannot be built without nls support. Try adding either --enable-nls or --disable-gtk" )
-fi
-
dnl This section is only used for internationalization.
dnl If you don't need translations and this section gives you trouble --
dnl such as if you're building for a headless system --
Build Command-Line client: ${build_cli}
- Build GTK+ client: ${build_gtk}
+ Build GTK+ client: ${with_gtk}
* libappindicator for an Ubuntu-style tray: ${use_libappindicator}
Build Daemon: ${build_daemon}