changeset 2077:034e50486d27

added autoconf test for clutter
author Vladimir Nadvornik <nadvornik@suse.cz>
date Sun, 12 Aug 2012 21:07:49 +0200
parents d02a0c9bfee3
children 41ea2592dde6
files configure.in src/Makefile.am src/main.c src/pixbuf-renderer.c src/renderer-clutter.c src/renderer-clutter.h
diffstat 6 files changed, 58 insertions(+), 14 deletions(-) [+]
line wrap: on
line diff
--- a/configure.in	Sun Aug 12 19:33:46 2012 +0200
+++ b/configure.in	Sun Aug 12 21:07:49 2012 +0200
@@ -396,14 +396,49 @@
 AC_SUBST(LDFLAGS)
 
 
+#  clutter support - experimental
+# ----------------------------------------------------------------------
+
+AC_ARG_ENABLE([clutter],
+  AC_HELP_STRING([--enable-clutter], [enable clutter support - experimental]),
+    [libclutter=$enableval], [libclutter=auto])
+
+if test "x${libclutter}" = "xyes" -o "x${libgps}" = "xyes"; then
+  PKG_CHECK_MODULES(CLUTTER, [clutter-1.0 >= 1.0],
+    [
+      PKG_CHECK_MODULES(CLUTTER_GTK, [clutter-gtk-1.0 >= 1.0],
+        [
+          HAVE_CLUTTER=yes
+          AC_DEFINE(HAVE_CLUTTER, 1, [define to enable use of clutter library])
+        ],
+        [
+          HAVE_CLUTTER=no
+          AC_MSG_WARN([$CLUTTER_GTK_PKG_ERRORS])
+        ])
+        
+    ],
+    [
+      HAVE_CLUTTER=no
+      AC_MSG_WARN([$CLUTTER_PKG_ERRORS])
+    ])
+else
+  HAVE_CLUTTER=disabled
+fi
+
+AC_SUBST(CLUTTER_CFLAGS)
+AC_SUBST(CLUTTER_LIBS)
+AC_SUBST(CLUTTER_GTK_CFLAGS)
+AC_SUBST(CLUTTER_GTK_LIBS)
+
+
 #  Libchamplain support - used for GPS map facility - experimental
 # ----------------------------------------------------------------------
 
 AC_ARG_ENABLE([gps],
   AC_HELP_STRING([--enable-gps], [enable GPS map support - experimental]),
-    [libgps=$enableval], [libgps=auto])
+    [libgps=$enableval], [libgps=yes])
 
-if test "x${libgps}" = "xyes"; then
+if test "x${libgps}" = "xyes" -a "x${HAVE_CLUTTER}" = "xyes" ; then
   PKG_CHECK_MODULES(LIBCHAMPLAIN, [champlain-0.12 >= 0.12],
     [
       HAVE_LIBCHAMPLAIN=yes
@@ -417,7 +452,7 @@
   HAVE_LIBCHAMPLAIN=disabled
 fi
 
-if test "x${libgps}" = "xyes"; then
+if test "x${libgps}" = "xyes" -a "x${HAVE_LIBCHAMPLAIN}" = "xyes" ; then
   PKG_CHECK_MODULES(LIBCHAMPLAIN_GTK, [champlain-gtk-0.12 >= 0.12],
     [
       HAVE_LIBCHAMPLAIN_GTK=yes
@@ -508,7 +543,7 @@
   Gtk:           $GTK_CFLAGS
   Glib:          $GLIB_CFLAGS
   Thread:        $GTHREAD_LIBS
-  Others:	 $JPEG_LIBS $TIFF_LIBS $LCMS_LIBS $EXIV2_LIBS $LIBCHAMPLAIN_LIBS $LIBCHAMPLAIN_GTK_LIBS
+  Others:	 $JPEG_LIBS $TIFF_LIBS $LCMS_LIBS $EXIV2_LIBS $CLUTTER_LIBS $CLUTTER_GTK_LIBS $LIBCHAMPLAIN_LIBS $LIBCHAMPLAIN_GTK_LIBS
 
 Localization:
   NLS support:   $USE_NLS
@@ -524,6 +559,7 @@
   LCMS:          $HAVE_LCMS
   Exiv2:	 $HAVE_EXIV2
   Lirc:          $HAVE_LIRC
+  Clutter:       $HAVE_CLUTTER
   Libchamplain:		$HAVE_LIBCHAMPLAIN
   Libchamplain-gtk:	$HAVE_LIBCHAMPLAIN_GTK
 
--- a/src/Makefile.am	Sun Aug 12 19:33:46 2012 +0200
+++ b/src/Makefile.am	Sun Aug 12 21:07:49 2012 +0200
@@ -7,6 +7,8 @@
 	$(EXIV2_CFLAGS)			\
 	$(LIBCHAMPLAIN_CFLAGS)		\
 	$(LIBCHAMPLAIN_GTK_CFLAGS)	\
+	$(CLUTTER_CFLAGS)		\
+	$(CLUTTER_GTK_CFLAGS)	\
 	-I$(top_srcdir)			\
 	-I$(top_builddir)
 
@@ -17,6 +19,8 @@
 	$(EXIV2_CFLAGS)			\
 	$(LIBCHAMPLAIN_CFLAGS)		\
 	$(LIBCHAMPLAIN_GTK_CFLAGS)	\
+	$(CLUTTER_CFLAGS)		\
+	$(CLUTTER_GTK_CFLAGS)	\
 	-I$(top_srcdir)			\
 	-I$(top_builddir)
 
@@ -255,7 +259,7 @@
 	window.c	\
 	window.h
 
-geeqie_LDADD = $(GTK_LIBS) $(GLIB_LIBS) $(INTLLIBS) $(JPEG_LIBS) $(TIFF_LIBS) $(LCMS_LIBS) $(EXIV2_LIBS) $(LIBCHAMPLAIN_LIBS) $(LIBCHAMPLAIN_GTK_LIBS)
+geeqie_LDADD = $(GTK_LIBS) $(GLIB_LIBS) $(INTLLIBS) $(JPEG_LIBS) $(TIFF_LIBS) $(LCMS_LIBS) $(EXIV2_LIBS) $(LIBCHAMPLAIN_LIBS) $(LIBCHAMPLAIN_GTK_LIBS) $(CLUTTER_LIBS) $(CLUTTER_GTK_LIBS)
 
 EXTRA_DIST = \
 	$(extra_SLIK)
--- a/src/main.c	Sun Aug 12 19:33:46 2012 +0200
+++ b/src/main.c	Sun Aug 12 21:07:49 2012 +0200
@@ -47,11 +47,9 @@
 #include "histogram.h"
 #include "pixbuf_util.h"
 
-#ifdef HAVE_LIBCHAMPLAIN
-#ifdef HAVE_LIBCHAMPLAIN_GTK
+#ifdef HAVE_CLUTTER
 #include <clutter-gtk/clutter-gtk.h>
 #endif
-#endif
 
 
 gboolean thumb_format_changed = FALSE;
@@ -775,8 +773,7 @@
 
 	parse_command_line_for_debug_option(argc, argv);
 	DEBUG_1("%s main: gtk_init", get_exec_time());	 
-#ifdef HAVE_LIBCHAMPLAIN
-#ifdef HAVE_LIBCHAMPLAIN_GTK
+#ifdef HAVE_CLUTTER
 	if (gtk_clutter_init(&argc, &argv) != CLUTTER_INIT_SUCCESS)
 		{
 		log_printf("Can't initialize clutter-gtk.\n");
@@ -785,9 +782,6 @@
 #else
 	gtk_init(&argc, &argv);
 #endif
-#else
-	gtk_init(&argc, &argv);
-#endif
 
 	if (gtk_major_version < GTK_MAJOR_VERSION ||
 	    (gtk_major_version == GTK_MAJOR_VERSION && gtk_minor_version < GTK_MINOR_VERSION) )
--- a/src/pixbuf-renderer.c	Sun Aug 12 19:33:46 2012 +0200
+++ b/src/pixbuf-renderer.c	Sun Aug 12 21:07:49 2012 +0200
@@ -25,7 +25,12 @@
 
 #include <gtk/gtk.h>
 
+#ifdef HAVE_CLUTTER
+/* FIXME: make this configurable */
 #define RENDERER_NEW(pr) renderer_clutter_new(pr)
+#else
+#define RENDERER_NEW(pr) renderer_tiles_new(pr)
+#endif
 
 /* comment this out if not using this from within Geeqie
  * defining GQ_BUILD does these things:
--- a/src/renderer-clutter.c	Sun Aug 12 19:33:46 2012 +0200
+++ b/src/renderer-clutter.c	Sun Aug 12 21:07:49 2012 +0200
@@ -24,6 +24,9 @@
 #include "layout.h"
 
 #include <gtk/gtk.h>
+
+#ifdef HAVE_CLUTTER
+
 #include <clutter/clutter.h>
 
 #include <clutter-gtk/clutter-gtk.h>
@@ -450,5 +453,5 @@
 	return (RendererFuncs *) rc;
 }
 
-
+#endif 
 /* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */
--- a/src/renderer-clutter.h	Sun Aug 12 19:33:46 2012 +0200
+++ b/src/renderer-clutter.h	Sun Aug 12 21:07:49 2012 +0200
@@ -13,10 +13,12 @@
 #ifndef RENDERER_CLUTTER_H
 #define RENDERER_CLUTTER_H
 
+#ifdef HAVE_CLUTTER
 #include <pixbuf-renderer.h>
 
 
 RendererFuncs *renderer_clutter_new(PixbufRenderer *pr);
 
 #endif
+#endif
 /* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */