I attached patch itself to ease checking (:
Regards,
--
Hadret | Blog: blog.fchabik.com
Twitter: @hadret | Identi.ca: hadret
(D)PPA: hadret.rootnode.net
=== modified file 'Makefile.am'
--- old/Makefile.am 2010-01-08 22:13:05 +0000
+++ new/Makefile.am 2011-07-23 21:39:04 +0000
@@ -1,8 +1,14 @@
SUBDIRS=gtkspell examples docs po
pkgconfigdir=$(libdir)/pkgconfig
+
+if USE_GTK3
+pkgconfig_DATA=gtkspell3-2.0.pc
+DISTCLEANFILES=gtkspell3-2.0.pc
+else
pkgconfig_DATA=gtkspell-2.0.pc
DISTCLEANFILES=gtkspell-2.0.pc
+endif
dist-hook:
$(MAKE) -C "$(srcdir)/po" "$(GETTEXT_PACKAGE).pot"
=== modified file 'configure.ac'
--- old/configure.ac 2010-01-08 22:13:05 +0000
+++ new/configure.ac 2011-07-24 00:34:17 +0000
@@ -15,11 +15,32 @@
SPELLER_LIB=-lenchant
AC_SUBST(SPELLER_LIB)
-GTKSPELL_PACKAGES=gtk+-2.0
+
+AC_ARG_WITH([gtk],
+ [AS_HELP_STRING([--with-gtk],
+ [Which version of gtk to use @<:@default=2@:>@])],
+ [],
+ [with_gtk=3])
+AS_IF([test "x$with_gtk" = x3],
+ [PKG_CHECK_MODULES(GTKSPELL, gtk+-3.0
+ enchant >= 0.4.0)
+ GTKSPELL_PACKAGES=gtk+-3.0
+ AC_SUBST(GTKSPELL_CFLAGS)
+ AC_SUBST(GTKSPELL_LIBS)
+ AC_DEFINE(HAVE_GTK3, 1, [whether gtk3 is available])
+ ],
+ [test "x$with_gtk" = x2],
+ [PKG_CHECK_MODULES(GTKSPELL, gtk+-2.0
+ enchant >= 0.4.0)
+ GTKSPELL_PACKAGES=gtk+-2.0
+ AC_SUBST(GTKSPELL_CFLAGS)
+ AC_SUBST(GTKSPELL_LIBS)
+ ],
+ [AC_MSG_FAILURE([Value for --with-gtk was neither 2 nor 3])]
+)
+AM_CONDITIONAL(USE_GTK3, [test "x$with_gtk" = x3])
+
AC_SUBST(GTKSPELL_PACKAGES)
-PKG_CHECK_MODULES(GTKSPELL, $GTKSPELL_PACKAGES enchant >= 0.4.0 )
-AC_SUBST(GTKSPELL_CFLAGS)
-AC_SUBST(GTKSPELL_LIBS)
# check Pango version so we can use PANGO_UNDERLINE_ERROR when available:
PKG_CHECK_MODULES(PANGO, [pango >= 1.3.5],
@@ -90,7 +111,7 @@
dnl AM_MAINTAINER_MODE
-AC_CONFIG_FILES(Makefile gtkspell/Makefile examples/Makefile gtkspell-2.0.pc gtkspell.spec docs/Makefile po/Makefile.in)
+AC_CONFIG_FILES(Makefile gtkspell/Makefile examples/Makefile gtkspell-2.0.pc gtkspell3-2.0.pc gtkspell.spec docs/Makefile po/Makefile.in)
GTK_DOC_CHECK(1.0)
=== modified file 'examples/Makefile.am'
--- old/examples/Makefile.am 2005-09-06 13:00:45 +0000
+++ new/examples/Makefile.am 2011-07-23 21:39:04 +0000
@@ -1,6 +1,10 @@
noinst_PROGRAMS = simple advanced
AM_CFLAGS = @GTKSPELL_CFLAGS@ -I$(top_builddir)
INCLUDES = -I$(top_srcdir)
+if USE_GTK3
+LDADD = @GTKSPELL_LIBS@ $(top_builddir)/gtkspell/libgtkspell3.la
+else
LDADD = @GTKSPELL_LIBS@ $(top_builddir)/gtkspell/libgtkspell.la
+endif
simple_SOURCES = simple.c
advanced_SOURCES = advanced.c
=== modified file 'gtkspell/Makefile.am'
--- old/gtkspell/Makefile.am 2005-09-06 13:00:45 +0000
+++ new/gtkspell/Makefile.am 2011-07-23 21:39:04 +0000
@@ -1,6 +1,19 @@
-lib_LTLIBRARIES=libgtkspell.la
+if USE_GTK3
+VER=3
+lib_LTLIBRARIES = libgtkspell3.la
+else
+VER=
+lib_LTLIBRARIES = libgtkspell.la
+endif
+
AM_CFLAGS=@GTKSPELL_CFLAGS@ -DG_LOG_DOMAIN=\"gtkspell\" -DLOCALEDIR=\""$(datadir)/locale"\"
libgtkspell_la_LIBADD=@GTKSPELL_LIBS@ @SPELLER_LIB@
libgtkspell_la_includedir=$(includedir)/gtkspell-2.0/gtkspell
libgtkspell_la_include_HEADERS=gtkspell.h
libgtkspell_la_SOURCES=gtkspell.c deprecated.c gtkspell.h
+
+libgtkspell3_la_LIBADD=$(libgtkspell_la_LIBADD)
+libgtkspell3_la_includedir=$(libgtkspell_la_includedir)
+libgtkspell3_la_include_HEADERS=$(libgtkspell_la_include_HEADERS)
+libgtkspell3_la_SOURCES=$(libgtkspell_la_SOURCES)
+
=== modified file 'gtkspell/gtkspell.c'
--- old/gtkspell/gtkspell.c 2010-01-08 22:13:05 +0000
+++ new/gtkspell/gtkspell.c 2011-07-23 21:39:04 +0000
@@ -310,7 +310,8 @@
get_word_extents_from_mark(spell->buffer, &start, &end, spell->mark_click);
oldword = gtk_text_buffer_get_text(spell->buffer, &start, &end, FALSE);
- newword = gtk_label_get_text(GTK_LABEL(GTK_BIN(menuitem)->child));
+ newword =
+ gtk_label_get_text(GTK_LABEL(gtk_bin_get_child(GTK_BIN(menuitem))));
if (debug) {
g_print("old word: '%s'\n", oldword);
=== added file 'gtkspell3-2.0.pc.in'
--- old/gtkspell3-2.0.pc.in 1970-01-01 00:00:00 +0000
+++ new/gtkspell3-2.0.pc.in 2011-07-23 21:39:04 +0000
@@ -0,0 +1,13 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: GTKSpell
+Description: GTK spelling library
+Version: @VERSION@
+Requires: @GTKSPELL_PACKAGES@
+Libs: -L${libdir} -lgtkspell3
+Libs.private: @SPELLER_LIB@
+Cflags: -I${includedir}/gtkspell-2.0
+