configure: add --with-gtk option and default to Gtk+ 2.0 while the 3.0 API is still in flux

https://bugzilla.gnome.org/show_bug.cgi?id=634014
diff --git a/configure.ac b/configure.ac
index 3f9ea02..0986e28 100644
--- a/configure.ac
+++ b/configure.ac
@@ -277,13 +277,30 @@
 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