(trunk) #4550 "no way to build with GTK+ 3" -- fixed. We now use GTK+ 3 if available; GTK+ 2 if it's not.

This commit is contained in:
Jordan Lee 2011-10-11 04:17:54 +00:00
parent f9388714b7
commit 2ccc2bbbfe
1 changed files with 58 additions and 50 deletions

View File

@ -50,8 +50,11 @@ AC_SUBST(OPENSSL_MINIMUM)
## 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
@ -310,57 +313,62 @@ dnl ----------------------------------------------------------------------------
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
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!")
fi
fi
AM_CONDITIONAL([BUILD_GTK],[test "x$build_gtk" = "xyes"])
if test "x$build_gtk" = "xyes"; then
PKG_CHECK_MODULES([LIBAPPINDICATOR],
[appindicator-0.1 >= $LIBAPPINDICATOR_MINIMUM],
[have_libappindicator=yes],
[have_libappindicator=no])
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
fi
fi
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]),,
[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$with_gtk" = "xyes" ; then
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" )
if test "x$gtk_version" = "xnone" ; then
AC_MSG_ERROR("GTK+ not found!")
fi
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
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])
fi
if test "x$have_libappindicator" = "xyes"; then
use_libappindicator=yes
AC_DEFINE([HAVE_LIBAPPINDICATOR], 1)
else
LIBAPPINDICATOR_CFLAGS=
LIBAPPINDICATOR_LIBS=
fi
fi
dnl This section is only used for internationalization.
@ -512,7 +520,7 @@ Configuration:
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}