summaryrefslogtreecommitdiffstats
path: root/gtkspell/gtk3_support.patch
blob: 4f3f85a83b20d39f922244e71c213cbe4a76727e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
=== 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=gtkspell-3.0.pc
+DISTCLEANFILES=gtkspell-3.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 gtkspell-3.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/libgtkspell-3.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,20 @@
-lib_LTLIBRARIES=libgtkspell.la
+if USE_GTK3
+VER=3
+lib_LTLIBRARIES = libgtkspell-3.la
+else
+VER=
+lib_LTLIBRARIES = libgtkspell.la
+endif
+
 AM_CFLAGS=@GTKSPELL_CFLAGS@ -DG_LOG_DOMAIN=\"gtkspell\" -DLOCALEDIR=\""$(datadir)/locale"\"
+if USE_GTK3
+libgtkspell_3_la_LIBADD=@GTKSPELL_LIBS@ @SPELLER_LIB@
+libgtkspell_3_la_includedir=$(includedir)/gtkspell-3.0/gtkspell
+libgtkspell_3_la_include_HEADERS=gtkspell.h
+libgtkspell_3_la_SOURCES=gtkspell.c deprecated.c gtkspell.h
+else
 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
+endif

=== 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 'gtkspell-3.0.pc.in'
--- old/gtkspell-3.0.pc.in	1970-01-01 00:00:00 +0000
+++ new/gtkspell-3.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} -lgtkspell-3
+Libs.private: @SPELLER_LIB@
+Cflags: -I${includedir}/gtkspell-3.0
+