added autoconf test for clutter
authorVladimir Nadvornik <nadvornik@suse.cz>
Sun, 12 Aug 2012 19:07:49 +0000 (21:07 +0200)
committerVladimir Nadvornik <nadvornik@suse.cz>
Sat, 18 Aug 2012 17:20:06 +0000 (19:20 +0200)
configure.in
src/Makefile.am
src/main.c
src/pixbuf-renderer.c
src/renderer-clutter.c
src/renderer-clutter.h

index cae8daf..e4512f2 100644 (file)
@@ -396,14 +396,49 @@ AC_SUBST(CPPFLAGS)
 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 @@ else
   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 @@ Flags:
   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 @@ Support:
   LCMS:          $HAVE_LCMS
   Exiv2:        $HAVE_EXIV2
   Lirc:          $HAVE_LIRC
+  Clutter:       $HAVE_CLUTTER
   Libchamplain:                $HAVE_LIBCHAMPLAIN
   Libchamplain-gtk:    $HAVE_LIBCHAMPLAIN_GTK
 
index 0342196..329973c 100644 (file)
@@ -7,6 +7,8 @@ AM_CFLAGS =                             \
        $(EXIV2_CFLAGS)                 \
        $(LIBCHAMPLAIN_CFLAGS)          \
        $(LIBCHAMPLAIN_GTK_CFLAGS)      \
+       $(CLUTTER_CFLAGS)               \
+       $(CLUTTER_GTK_CFLAGS)   \
        -I$(top_srcdir)                 \
        -I$(top_builddir)
 
@@ -17,6 +19,8 @@ AM_CXXFLAGS =                         \
        $(EXIV2_CFLAGS)                 \
        $(LIBCHAMPLAIN_CFLAGS)          \
        $(LIBCHAMPLAIN_GTK_CFLAGS)      \
+       $(CLUTTER_CFLAGS)               \
+       $(CLUTTER_GTK_CFLAGS)   \
        -I$(top_srcdir)                 \
        -I$(top_builddir)
 
@@ -255,7 +259,7 @@ geeqie_SOURCES = \
        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)
index fa9f22e..571a910 100644 (file)
 #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,16 +773,12 @@ gint main(gint argc, gchar *argv[])
 
        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");
                exit(1);
                }
-#else
-       gtk_init(&argc, &argv);
-#endif
 #else
        gtk_init(&argc, &argv);
 #endif
index 7089bb1..41e9c44 100644 (file)
 
 #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:
index 5f0f612..5afb43f 100644 (file)
@@ -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 @@ RendererFuncs *renderer_clutter_new(PixbufRenderer *pr)
        return (RendererFuncs *) rc;
 }
 
-
+#endif 
 /* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */
index 4a802d8..89c1b7c 100644 (file)
 #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: */