[libchamplain] Update the clutter-gtk patch set based on upstream commits to master

Christopher Aillon caillon at fedoraproject.org
Wed Feb 2 21:43:30 UTC 2011


commit 5bd0fff4834bc3997bd4a8999d33839d0430a804
Author: Christopher Aillon <caillon at redhat.com>
Date:   Wed Feb 2 13:41:24 2011 -0800

    Update the clutter-gtk patch set based on upstream commits to master
    
    Move back to gtk3-devel and need to BR autoconf for the configure changes

 libchamplain-0.8.0-clutter-gtk-1.0.patch |   92 -------------
 libchamplain-0.8.1-clutter-gtk-1.0.patch |  211 ++++++++++++++++++++++++++++++
 libchamplain.spec                        |    6 +-
 3 files changed, 215 insertions(+), 94 deletions(-)
---
diff --git a/libchamplain-0.8.1-clutter-gtk-1.0.patch b/libchamplain-0.8.1-clutter-gtk-1.0.patch
new file mode 100644
index 0000000..6ef151c
--- /dev/null
+++ b/libchamplain-0.8.1-clutter-gtk-1.0.patch
@@ -0,0 +1,211 @@
+From e9c3dbb797091dc392aa8c260f6d58b14e700707 Mon Sep 17 00:00:00 2001
+From: William Jon McCann <jmccann at redhat.com>
+Date: Tue, 12 Oct 2010 05:26:35 +0000
+Subject: Use gtk3 and clutter-gtk 1.0
+
+https://bugzilla.gnome.org/show_bug.cgi?id=631009
+---
+diff --git a/bindings/vala/champlain-gtk/Makefile.am b/bindings/vala/champlain-gtk/Makefile.am
+index bd3d8ce..653cc00 100644
+--- a/bindings/vala/champlain-gtk/Makefile.am
++++ b/bindings/vala/champlain-gtk/Makefile.am
+@@ -1,6 +1,6 @@
+ 
+ #champlain-gtk-0.6.vapi: $(top_srcdir)/champlain-gtk/GtkChamplain-0.6.gir
+-#	$(VAPIGEN) --vapidir ../champlain --pkg champlain-0.6 --pkg clutter-1.0 --pkg atk --pkg gtk+-2.0 --library champlain-gtk-0.6 $^
++#	$(VAPIGEN) --vapidir ../champlain --pkg champlain-0.6 --pkg clutter-1.0 --pkg atk --pkg gtk+-3.0 --library champlain-gtk-0.6 $^
+ #	touch $@
+ 
+ vapidir = $(datadir)/vala/vapi
+diff --git a/bindings/vala/champlain-gtk/champlain-gtk-0.8.deps b/bindings/vala/champlain-gtk/champlain-gtk-0.8.deps
+index 41d958f..882ca29 100644
+--- a/bindings/vala/champlain-gtk/champlain-gtk-0.8.deps
++++ b/bindings/vala/champlain-gtk/champlain-gtk-0.8.deps
+@@ -1,2 +1,2 @@
+-gtk+-2.0
++gtk+-3.0
+ champlain-0.8
+diff --git a/bindings/vala/champlain-gtk/create.sh.in b/bindings/vala/champlain-gtk/create.sh.in
+index 3ef70cc..a1eb8ba 100644
+--- a/bindings/vala/champlain-gtk/create.sh.in
++++ b/bindings/vala/champlain-gtk/create.sh.in
+@@ -1,4 +1,4 @@
+ export PKG_CONFIG_PATH=$(readlink -f ../../../)
+ 
+ vala-gen-introspect champlain-gtk- at CHAMPLAIN_API_VERSION@ champlain-gtk- at CHAMPLAIN_API_VERSION@
+-vapigen --library champlain-gtk- at CHAMPLAIN_API_VERSION@ --pkg clutter-gtk-0.10 --pkg gtk+-2.0 --pkg champlain- at CHAMPLAIN_API_VERSION@ --vapidir=../champlain champlain-gtk- at CHAMPLAIN_API_VERSION@/champlain-gtk- at CHAMPLAIN_API_VERSION@.gi --metadata champlain-gtk- at CHAMPLAIN_API_VERSION@/champlain-gtk- at CHAMPLAIN_API_VERSION@.metadata
++vapigen --library champlain-gtk- at CHAMPLAIN_API_VERSION@ --pkg clutter-gtk-0.10 --pkg gtk+-3.0 --pkg champlain- at CHAMPLAIN_API_VERSION@ --vapidir=../champlain champlain-gtk- at CHAMPLAIN_API_VERSION@/champlain-gtk- at CHAMPLAIN_API_VERSION@.gi --metadata champlain-gtk- at CHAMPLAIN_API_VERSION@/champlain-gtk- at CHAMPLAIN_API_VERSION@.metadata
+diff --git a/champlain-gtk-uninstalled.pc.in b/champlain-gtk-uninstalled.pc.in
+index 224eb54..dea3cc5 100644
+--- a/champlain-gtk-uninstalled.pc.in
++++ b/champlain-gtk-uninstalled.pc.in
+@@ -8,4 +8,4 @@ Description: Gtk+ Widget wrapper for libchamplain
+ Version: @VERSION@
+ Libs: ${abs_top_builddir}/champlain-gtk/libchamplain-gtk- at CHAMPLAIN_API_VERSION@.la
+ Cflags: -I${abs_top_srcdir} -I${abs_top_builddir}
+-Requires: champlain- at CHAMPLAIN_API_VERSION@-uninstalled clutter-gtk-0.10 gtk+-2.0
++Requires: champlain- at CHAMPLAIN_API_VERSION@-uninstalled clutter-gtk-0.10 gtk+-3.0
+diff --git a/champlain-gtk.pc.in b/champlain-gtk.pc.in
+index 6461a69..2c461b6 100644
+--- a/champlain-gtk.pc.in
++++ b/champlain-gtk.pc.in
+@@ -8,4 +8,4 @@ Description: Gtk+ Widget wrapper for libchamplain
+ Version: @VERSION@
+ Libs: -L${libdir} -lchamplain-gtk- at CHAMPLAIN_API_VERSION@
+ Cflags: -I${includedir}/libchamplain-gtk- at CHAMPLAIN_API_VERSION@
+-Requires: champlain- at CHAMPLAIN_API_VERSION@ clutter-gtk-0.10 gtk+-2.0
++Requires: champlain- at CHAMPLAIN_API_VERSION@ clutter-gtk-0.10 gtk+-3.0
+diff --git a/champlain-gtk/Makefile.am b/champlain-gtk/Makefile.am
+index 471d63a..9a3e752 100644
+--- a/champlain-gtk/Makefile.am
++++ b/champlain-gtk/Makefile.am
+@@ -74,9 +74,9 @@ GtkChamplain- at CHAMPLAIN_API_VERSION@.gir: libchamplain-gtk- at CHAMPLAIN_API_VERSIO
+ GtkChamplain_ at CHAMPLAIN_API_VERSION_NORM@_gir_NAMESPACE = GtkChamplain
+ GtkChamplain_ at CHAMPLAIN_API_VERSION_NORM@_gir_VERSION = @CHAMPLAIN_API_VERSION@
+ GtkChamplain_ at CHAMPLAIN_API_VERSION_NORM@_gir_LIBS = libchamplain-gtk- at CHAMPLAIN_API_VERSION@.la
+-GtkChamplain_ at CHAMPLAIN_API_VERSION_NORM@_gir_PACKAGES = gobject-2.0 gtk+-2.0
++GtkChamplain_ at CHAMPLAIN_API_VERSION_NORM@_gir_PACKAGES = gobject-2.0 gtk+-3.0
+ GtkChamplain_ at CHAMPLAIN_API_VERSION_NORM@_gir_FILES = $(introspection_sources)
+-GtkChamplain_ at CHAMPLAIN_API_VERSION_NORM@_gir_INCLUDES = Clutter-1.0 Gtk-2.0 Champlain- at CHAMPLAIN_API_VERSION@
++GtkChamplain_ at CHAMPLAIN_API_VERSION_NORM@_gir_INCLUDES = Clutter-1.0 Gtk-3.0 Champlain- at CHAMPLAIN_API_VERSION@
+ GtkChamplain_ at CHAMPLAIN_API_VERSION_NORM@_gir_CFLAGS = \
+ 	$(DEPS_CFLAGS) $(SOUP_CFLAGS) $(GTK_CFLAGS) \
+ 	-I$(top_srcdir) -I$(top_builddir)\
+diff --git a/champlain-uninstalled.pc.in b/champlain-uninstalled.pc.in
+index 13e566a..9afc281 100644
+--- a/champlain-uninstalled.pc.in
++++ b/champlain-uninstalled.pc.in
+@@ -9,4 +9,4 @@ Version: @VERSION@
+ Libs: ${abs_top_builddir}/champlain/libchamplain- at CHAMPLAIN_API_VERSION@.la
+ Cflags: -I${abs_top_srcdir} -I${abs_top_builddir}
+ Requires: gobject-2.0 glib-2.0 clutter-1.0
+-Requires.private: gdk-2.0 gio-2.0 cairo sqlite3 @SOUP_DEP@
++Requires.private: gdk-3.0 gio-2.0 cairo sqlite3 @SOUP_DEP@
+diff --git a/champlain.pc.in b/champlain.pc.in
+index 69cb23a..6d38c26 100644
+--- a/champlain.pc.in
++++ b/champlain.pc.in
+@@ -9,4 +9,4 @@ Version: @VERSION@
+ Libs: -L${libdir} -lchamplain- at CHAMPLAIN_API_VERSION@
+ Cflags: -I${includedir}/libchamplain- at CHAMPLAIN_API_VERSION@
+ Requires: gobject-2.0 glib-2.0 clutter-1.0
+-Requires.private: gdk-2.0 gio-2.0 cairo sqlite3 @SOUP_DEP@
++Requires.private: gdk-3.0 gio-2.0 cairo sqlite3 @SOUP_DEP@
+diff --git a/champlain/Makefile.am b/champlain/Makefile.am
+index aab3c11..342817d 100644
+--- a/champlain/Makefile.am
++++ b/champlain/Makefile.am
+@@ -156,9 +156,9 @@ Champlain- at CHAMPLAIN_API_VERSION@.gir: libchamplain- at CHAMPLAIN_API_VERSION@.la
+ Champlain_ at CHAMPLAIN_API_VERSION_NORM@_gir_NAMESPACE = Champlain
+ Champlain_ at CHAMPLAIN_API_VERSION_NORM@_gir_VERSION = @CHAMPLAIN_API_VERSION@
+ Champlain_ at CHAMPLAIN_API_VERSION_NORM@_gir_LIBS = libchamplain- at CHAMPLAIN_API_VERSION@.la
+-Champlain_ at CHAMPLAIN_API_VERSION_NORM@_gir_PACKAGES = gobject-2.0 gtk+-2.0
++Champlain_ at CHAMPLAIN_API_VERSION_NORM@_gir_PACKAGES = gobject-2.0 gtk+-3.0
+ Champlain_ at CHAMPLAIN_API_VERSION_NORM@_gir_FILES = $(introspection_sources)
+-Champlain_ at CHAMPLAIN_API_VERSION_NORM@_gir_INCLUDES = Clutter-1.0 Gtk-2.0 $(memphis_gir_include)
++Champlain_ at CHAMPLAIN_API_VERSION_NORM@_gir_INCLUDES = Clutter-1.0 Gtk-3.0 $(memphis_gir_include)
+ Champlain_ at CHAMPLAIN_API_VERSION_NORM@_gir_CFLAGS = \
+ 	$(DEPS_CFLAGS) $(SOUP_CFLAGS) $(MEMPHIS_CFLAGS) \
+ 	-I$(top_srcdir)/tidy -I$(top_srcdir) -I$(top_builddir) \
+diff --git a/configure.ac b/configure.ac
+index 09a2827..d7e1def 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -59,7 +59,7 @@ AC_SUBST(LIBRARY_VERSION)
+ PKG_CHECK_MODULES(DEPS,
+   [   glib-2.0 >= 2.16
+       gobject-2.0 >= 2.10
+-      gdk-2.0 >= 2.10
++      gdk-3.0 >= 2.90
+       clutter-1.0 >= 1.0
+       cairo >= 1.4
+       gio-2.0 >= 2.16
+@@ -132,8 +132,8 @@ AC_ARG_ENABLE(gtk,
+ 
+ if test x$enable_gtk = xyes; then
+   PKG_CHECK_MODULES(GTK,
+-    [   gtk+-2.0 >= 2.12
+-        clutter-gtk-0.10 >= 0.10
++    [   gtk+-3.0 >= 2.90
++        clutter-gtk-1.0 >= 0.90
+     ]
+   )
+   AC_SUBST(GTK_CFLAGS)
+--
+cgit v0.8.3.1
+
+From e39dbbdba9fc632fbacdda2bd060f5ccaf7d2bbe Mon Sep 17 00:00:00 2001
+From: Jiří Techet <techet at gmail.com>
+Date: Thu, 30 Dec 2010 19:22:35 +0000
+Subject: Use clutter-gtk 1.0
+
+Implement the missing functions from clutter-gtk 1.0 manually
+---
+diff --git a/champlain-gtk-uninstalled.pc.in b/champlain-gtk-uninstalled.pc.in
+index dea3cc5..23e5011 100644
+--- a/champlain-gtk-uninstalled.pc.in
++++ b/champlain-gtk-uninstalled.pc.in
+@@ -8,4 +8,4 @@ Description: Gtk+ Widget wrapper for libchamplain
+ Version: @VERSION@
+ Libs: ${abs_top_builddir}/champlain-gtk/libchamplain-gtk- at CHAMPLAIN_API_VERSION@.la
+ Cflags: -I${abs_top_srcdir} -I${abs_top_builddir}
+-Requires: champlain- at CHAMPLAIN_API_VERSION@-uninstalled clutter-gtk-0.10 gtk+-3.0
++Requires: champlain- at CHAMPLAIN_API_VERSION@-uninstalled clutter-gtk-1.0 gtk+-3.0
+diff --git a/champlain-gtk.pc.in b/champlain-gtk.pc.in
+index 2c461b6..c933537 100644
+--- a/champlain-gtk.pc.in
++++ b/champlain-gtk.pc.in
+@@ -8,4 +8,4 @@ Description: Gtk+ Widget wrapper for libchamplain
+ Version: @VERSION@
+ Libs: -L${libdir} -lchamplain-gtk- at CHAMPLAIN_API_VERSION@
+ Cflags: -I${includedir}/libchamplain-gtk- at CHAMPLAIN_API_VERSION@
+-Requires: champlain- at CHAMPLAIN_API_VERSION@ clutter-gtk-0.10 gtk+-3.0
++Requires: champlain- at CHAMPLAIN_API_VERSION@ clutter-gtk-1.0 gtk+-3.0
+diff --git a/champlain-gtk/gtk-champlain-embed.c b/champlain-gtk/gtk-champlain-embed.c
+index a833482..4d44af4 100644
+--- a/champlain-gtk/gtk-champlain-embed.c
++++ b/champlain-gtk/gtk-champlain-embed.c
+@@ -249,23 +249,37 @@ gtk_champlain_embed_init (GtkChamplainEmbed *embed)
+ }
+ 
+ 
++static inline void
++gdk_to_clutter_color (GdkColor *gtk_color,
++                      ClutterColor *color)
++{
++  color->red   = CLAMP (((gtk_color->red   / 65535.0) * 255), 0, 255);
++  color->green = CLAMP (((gtk_color->green / 65535.0) * 255), 0, 255);
++  color->blue  = CLAMP (((gtk_color->blue  / 65535.0) * 255), 0, 255);
++  color->alpha = 255;
++}
++
++
+ static void
+ view_realize_cb (GtkWidget *widget,
+     GtkChamplainEmbed *view)
+ {
+   ClutterColor color = { 0, 0, 0, };
+   GtkChamplainEmbedPrivate *priv = view->priv;
++  GtkStyle *style;
+ 
+   /* Setup mouse cursor to a hand */
+   gdk_window_set_cursor (gtk_widget_get_window (priv->clutter_embed), priv->cursor_hand_open);
+ 
+   /* Set selection color */
+-  gtk_clutter_get_bg_color (GTK_WIDGET (widget), GTK_STATE_SELECTED, &color);
+-  champlain_marker_set_highlight_color (&color);
++  style = gtk_widget_get_style (widget);
+ 
+-  gtk_clutter_get_text_color (GTK_WIDGET (widget), GTK_STATE_SELECTED, &color);
++  gdk_to_clutter_color (&style->text[GTK_STATE_SELECTED], &color);
+   champlain_marker_set_highlight_text_color (&color);
+ 
++  gdk_to_clutter_color (&style->bg[GTK_STATE_SELECTED], &color);
++  champlain_marker_set_highlight_color (&color);
++
+   /* To be added later: bg[active] (for selected markers, but focus is on another widget) */
+ }
+ 
+--
+cgit v0.8.3.1
+
diff --git a/libchamplain.spec b/libchamplain.spec
index 00ddc7a..119e5de 100644
--- a/libchamplain.spec
+++ b/libchamplain.spec
@@ -6,7 +6,7 @@ License:	LGPLv2+
 Group:		System Environment/Libraries
 URL:		http://projects.gnome.org/libchamplain/
 Source0:	http://download.gnome.org/sources/libchamplain/0.8/%{name}-%{version}.tar.bz2
-Patch0:		libchamplain-0.8.0-clutter-gtk-1.0.patch
+Patch0:		libchamplain-0.8.1-clutter-gtk-1.0.patch
 
 BuildRoot:	%(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
 
@@ -17,7 +17,8 @@ BuildRequires:	clutter-devel
 BuildRequires:	clutter-gtk-devel
 BuildRequires:	libsoup-devel
 BuildRequires:	sqlite-devel
-BuildRequires:  gtk2-devel
+BuildRequires:  gtk3-devel
+BuildRequires:  autoconf
 
 %description
 Libchamplain is a C library aimed to provide a ClutterActor to display
@@ -66,6 +67,7 @@ This package contains vala bindings for development %{name}.
 %patch0 -p1 -b .clutter-gtk-1.0
 
 %build
+autoreconf
 %configure --disable-debug --disable-silent-rules --disable-static \
   --enable-gtk --enable-gtk-doc --enable-introspection=yes
 


More information about the scm-commits mailing list