diff --git a/configure.ac b/configure.ac index 3f9ea02840..0986e28800 100644 --- a/configure.ac +++ b/configure.ac @@ -277,13 +277,30 @@ AC_SUBST(GLIB_PREFIX) AC_SUBST(GST_PREFIX) dnl GTK is optional and only used in examples -PKG_CHECK_MODULES(GTK, gtk+-3.0, HAVE_GTK=yes, - [PKG_CHECK_MODULES(GTK, gtk+-2.0 >= 2.14.0, HAVE_GTK=yes, HAVE_GTK=no)]) +HAVE_GTK=no +HAVE_GTK_X11=no +GTK2_REQ=2.14.0 +GTK3_REQ=2.91.3 +if test "x$BUILD_EXAMPLES" = "xyes"; then + AC_MSG_CHECKING([which gtk+ version to compile examples against (optional)]) + AC_ARG_WITH([gtk], + AC_HELP_STRING([--with-gtk=3.0|2.0], + [which gtk+ version to compile against (default: 2.0)]), + [case "$with_gtk" in + 2.0) GTK_REQ=$GTK2_REQ ;; + 3.0) GTK_REQ=$GTK3_REQ ;; + *) AC_MSG_ERROR([invalid gtk+ version specified]);; + esac], + [with_gtk=2.0 + GTK_REQ=$GTK2_REQ]) + AC_MSG_RESULT([$with_gtk (>= $GTK_REQ)]) + PKG_CHECK_MODULES(GTK, gtk+-$with_gtk >= $GTK_REQ, HAVE_GTK=yes, HAVE_GTK=no) + dnl some examples need gtk+-x11 + PKG_CHECK_MODULES(GTK_X11, gtk+-x11-$with_gtk >= $GTK_REQ, HAVE_GTK_X11=yes, HAVE_GTK_X11=no) + AC_SUBST(GTK_LIBS) + AC_SUBST(GTK_CFLAGS) +fi AM_CONDITIONAL(HAVE_GTK, test "x$HAVE_GTK" = "xyes") - -dnl some examples need gtk+-x11 -PKG_CHECK_MODULES(GTK_X11, gtk+-x11-3.0, HAVE_GTK_X11=yes, - [PKG_CHECK_MODULES(GTK_X11, gtk+-x11-2.0 >= 2.14.0, HAVE_GTK_X11=yes, HAVE_GTK_X11=no)]) AM_CONDITIONAL(HAVE_GTK_X11, test "x$HAVE_GTK_X11" = "xyes") dnl QT is optional and only used in examples