Gentoo Archives: gentoo-commits

From: Alexandre Restovtsev <tetromino@×××××.com>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/gnome:gnome-next commit in: dev-cpp/glibmm/, dev-cpp/glibmm/files/
Date: Tue, 30 Aug 2011 23:52:50
Message-Id: 9b750cb11848c865e446d90d0bfa43ce5969ebd1.tetromino@gentoo
1 commit: 9b750cb11848c865e446d90d0bfa43ce5969ebd1
2 Author: Alexandre Rostovtsev <tetromino <AT> gmail <DOT> com>
3 AuthorDate: Tue Aug 30 22:05:14 2011 +0000
4 Commit: Alexandre Restovtsev <tetromino <AT> gmail <DOT> com>
5 CommitDate: Tue Aug 30 23:52:19 2011 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=9b750cb1
7
8 dev-cpp/glibmm: 2.29.11 → 2.29.11-r1, glib-2.29.18 compatibility
9
10 Backport an upstream patch for glib-2.29.18 compatibility.
11
12 ---
13 .../glibmm-2.29.11-timezonemonitor-generated.patch | 42 ++++++
14 .../files/glibmm-2.29.11-timezonemonitor.patch | 138 ++++++++++++++++++++
15 ...bmm-2.29.11.ebuild => glibmm-2.29.11-r1.ebuild} | 9 +-
16 3 files changed, 188 insertions(+), 1 deletions(-)
17
18 diff --git a/dev-cpp/glibmm/files/glibmm-2.29.11-timezonemonitor-generated.patch b/dev-cpp/glibmm/files/glibmm-2.29.11-timezonemonitor-generated.patch
19 new file mode 100644
20 index 0000000..649e296
21 --- /dev/null
22 +++ b/dev-cpp/glibmm/files/glibmm-2.29.11-timezonemonitor-generated.patch
23 @@ -0,0 +1,42 @@
24 +--- a/glib/glibmm/timezone.cc
25 ++++ b/glib/glibmm/timezone.cc
26 +@@ -117,13 +117,6 @@
27 + return Glib::wrap(g_time_zone_new_utc());
28 + }
29 +
30 +-
31 +-void TimeZone::refresh_local()
32 +-{
33 +-g_time_zone_refresh_local();
34 +-}
35 +-
36 +-
37 + int TimeZone::find_interval(TimeType type, gint64 time) const
38 + {
39 + return g_time_zone_find_interval(const_cast<GTimeZone*>(gobj()), ((GTimeType)(type)), time);
40 +--- a/glib/glibmm/timezone.h
41 ++++ b/glib/glibmm/timezone.h
42 +@@ -160,23 +160,6 @@
43 + */
44 + static TimeZone create_utc();
45 +
46 +-
47 +- /** Notifies TimeZone that the local timezone may have changed.
48 +- *
49 +- * In response, TimeZone will drop its cache of the local time zone.
50 +- * No existing TimeZone will be modified and no DateTime will change
51 +- * its timezone but future calls to g_time_zone_new_local() will start
52 +- * returning the new timezone.
53 +- *
54 +- * TimeZone does no monitoring of the local timezone on its own, which
55 +- * is why you have to call this function to notify it of the change.
56 +- *
57 +- * If you use TimeZoneMonitor to watch for changes then this function
58 +- * will automatically be called for you.
59 +- */
60 +- static void refresh_local();
61 +-
62 +-
63 + /** Finds an the interval within @a tz that corresponds to the given @a time.
64 + * The meaning of @a time depends on @a type.
65 + *
66
67 diff --git a/dev-cpp/glibmm/files/glibmm-2.29.11-timezonemonitor.patch b/dev-cpp/glibmm/files/glibmm-2.29.11-timezonemonitor.patch
68 new file mode 100644
69 index 0000000..47825ea
70 --- /dev/null
71 +++ b/dev-cpp/glibmm/files/glibmm-2.29.11-timezonemonitor.patch
72 @@ -0,0 +1,138 @@
73 +From fb93262ca182aeb54632a3ddead4ed8e84b80ddc Mon Sep 17 00:00:00 2001
74 +From: José Alburquerque <jaalburqu@×××××××××.org>
75 +Date: Mon, 22 Aug 2011 22:03:27 +0000
76 +Subject: TimeZoneMonitor: Remove as was done in glib.
77 +
78 + * gio/src/filelist.am:
79 + * gio/src/timezonemonitor.{ccg,hg}: Remove sources and the mention
80 + from the build.
81 + * glib/src/timezone.hg (refresh_local): Remove this method as the
82 + function that it wraps was also removed from glib.
83 + * tools/extra_defs_gen/generate_defs_gio.cc
84 + (G_TYPE_TIME_ZONE_MONITOR): Remove this GType from the list of types
85 + for which properties and signals are generated.
86 +
87 + See the glib commit:
88 + http://git.gnome.org/browse/glib/commit/?id=5b68b49b2072c371c72ee96175e3d6a727eb5e8b
89 +
90 +[Alexandre Rostovtsev <tetromino@×××××.com>: backport to 2.29.11 tarball release]
91 +---
92 +diff -ur a/gio/giomm/wrap_init.cc b/gio/giomm/wrap_init.cc
93 +--- a/gio/giomm/wrap_init.cc
94 ++++ b/gio/giomm/wrap_init.cc
95 +@@ -90,7 +90,6 @@
96 + #include "tcpconnection.h"
97 + #include "themedicon.h"
98 + #include "threadedsocketservice.h"
99 +-#include "timezonemonitor.h"
100 + #ifndef G_OS_WIN32
101 + #include "unixconnection.h"
102 + #endif //G_OS_WIN32
103 +@@ -172,7 +171,6 @@
104 + GType g_tcp_connection_get_type(void);
105 + GType g_themed_icon_get_type(void);
106 + GType g_threaded_socket_service_get_type(void);
107 +-GType g_time_zone_monitor_get_type(void);
108 + #ifndef G_OS_WIN32
109 + GType g_unix_connection_get_type(void);
110 + #endif //G_OS_WIN32
111 +@@ -258,7 +256,6 @@
112 + namespace Gio { class TcpConnection_Class { public: static Glib::ObjectBase* wrap_new(GObject*); }; }
113 + namespace Gio { class ThemedIcon_Class { public: static Glib::ObjectBase* wrap_new(GObject*); }; }
114 + namespace Gio { class ThreadedSocketService_Class { public: static Glib::ObjectBase* wrap_new(GObject*); }; }
115 +-namespace Gio { class TimeZoneMonitor_Class { public: static Glib::ObjectBase* wrap_new(GObject*); }; }
116 + #ifndef G_OS_WIN32
117 + namespace Gio { class UnixConnection_Class { public: static Glib::ObjectBase* wrap_new(GObject*); }; }
118 + #endif //G_OS_WIN32
119 +@@ -344,7 +341,6 @@
120 + Glib::wrap_register(g_tcp_connection_get_type(), &Gio::TcpConnection_Class::wrap_new);
121 + Glib::wrap_register(g_themed_icon_get_type(), &Gio::ThemedIcon_Class::wrap_new);
122 + Glib::wrap_register(g_threaded_socket_service_get_type(), &Gio::ThreadedSocketService_Class::wrap_new);
123 +- Glib::wrap_register(g_time_zone_monitor_get_type(), &Gio::TimeZoneMonitor_Class::wrap_new);
124 + #ifndef G_OS_WIN32
125 + Glib::wrap_register(g_unix_connection_get_type(), &Gio::UnixConnection_Class::wrap_new);
126 + #endif //G_OS_WIN32
127 +@@ -421,7 +417,6 @@
128 + Gio::TcpConnection::get_type();
129 + Gio::ThemedIcon::get_type();
130 + Gio::ThreadedSocketService::get_type();
131 +- Gio::TimeZoneMonitor::get_type();
132 + #ifndef G_OS_WIN32
133 + Gio::UnixConnection::get_type();
134 + #endif //G_OS_WIN32
135 +diff -ur a/gio/src/filelist.am b/gio/src/filelist.am
136 +--- a/gio/src/filelist.am
137 ++++ b/gio/src/filelist.am
138 +@@ -88,7 +88,6 @@
139 + tcpconnection.hg \
140 + threadedsocketservice.hg \
141 + themedicon.hg \
142 +- timezonemonitor.hg \
143 + volume.hg \
144 + volumemonitor.hg
145 +
146 +diff -ur a/glib/glibmm/timezone.cc b/glib/glibmm/timezone.cc
147 +--- a/glib/glibmm/timezone.cc
148 ++++ b/glib/glibmm/timezone.cc
149 +@@ -118,12 +118,6 @@
150 + }
151 +
152 +
153 +-void TimeZone::refresh_local()
154 +-{
155 +-g_time_zone_refresh_local();
156 +-}
157 +-
158 +-
159 + int TimeZone::find_interval(TimeType type, gint64 time) const
160 + {
161 + return g_time_zone_find_interval(const_cast<GTimeZone*>(gobj()), ((GTimeType)(type)), time);
162 +diff -ur a/glib/glibmm/timezone.h b/glib/glibmm/timezone.h
163 +--- a/glib/glibmm/timezone.h
164 ++++ b/glib/glibmm/timezone.h
165 +@@ -161,22 +161,6 @@
166 + static TimeZone create_utc();
167 +
168 +
169 +- /** Notifies TimeZone that the local timezone may have changed.
170 +- *
171 +- * In response, TimeZone will drop its cache of the local time zone.
172 +- * No existing TimeZone will be modified and no DateTime will change
173 +- * its timezone but future calls to g_time_zone_new_local() will start
174 +- * returning the new timezone.
175 +- *
176 +- * TimeZone does no monitoring of the local timezone on its own, which
177 +- * is why you have to call this function to notify it of the change.
178 +- *
179 +- * If you use TimeZoneMonitor to watch for changes then this function
180 +- * will automatically be called for you.
181 +- */
182 +- static void refresh_local();
183 +-
184 +-
185 + /** Finds an the interval within @a tz that corresponds to the given @a time.
186 + * The meaning of @a time depends on @a type.
187 + *
188 +diff -ur a/glib/src/timezone.hg b/glib/src/timezone.hg
189 +--- a/glib/src/timezone.hg
190 ++++ b/glib/src/timezone.hg
191 +@@ -62,8 +62,6 @@
192 + _WRAP_METHOD(static TimeZone create_local(), g_time_zone_new_local)
193 + _WRAP_METHOD(static TimeZone create_utc(), g_time_zone_new_utc)
194 +
195 +- _WRAP_METHOD(static void refresh_local(), g_time_zone_refresh_local)
196 +-
197 + _WRAP_METHOD(int find_interval(TimeType type, gint64 time) const, g_time_zone_find_interval)
198 + _WRAP_METHOD(int adjust_time(TimeType type, gint64& time) const, g_time_zone_adjust_time)
199 + _WRAP_METHOD(Glib::ustring get_abbreviation(int interval) const, g_time_zone_get_abbreviation)
200 +diff -ur a/tools/extra_defs_gen/generate_defs_gio.cc b/tools/extra_defs_gen/generate_defs_gio.cc
201 +--- a/tools/extra_defs_gen/generate_defs_gio.cc
202 ++++ b/tools/extra_defs_gen/generate_defs_gio.cc
203 +@@ -82,7 +82,6 @@
204 + << get_defs(G_TYPE_SETTINGS_BACKEND)
205 + << get_defs(G_TYPE_SIMPLE_ASYNC_RESULT)
206 + << get_defs(G_TYPE_THEMED_ICON)
207 +- << get_defs(G_TYPE_TIME_ZONE_MONITOR)
208 +
209 + //TODO: This causes a g_warning:
210 + //GLib-GObject-CRITICAL **: g_param_spec_pool_list: assertion `pool != NULL' failed"
211
212 diff --git a/dev-cpp/glibmm/glibmm-2.29.11.ebuild b/dev-cpp/glibmm/glibmm-2.29.11-r1.ebuild
213 similarity index 84%
214 rename from dev-cpp/glibmm/glibmm-2.29.11.ebuild
215 rename to dev-cpp/glibmm/glibmm-2.29.11-r1.ebuild
216 index cc54551..fab7e74 100644
217 --- a/dev-cpp/glibmm/glibmm-2.29.11.ebuild
218 +++ b/dev-cpp/glibmm/glibmm-2.29.11-r1.ebuild
219 @@ -6,7 +6,7 @@ EAPI="4"
220 GCONF_DEBUG="no"
221 GNOME2_LA_PUNT="yes"
222
223 -inherit gnome2
224 +inherit autotools eutils gnome2
225
226 DESCRIPTION="C++ interface for glib2"
227 HOMEPAGE="http://www.gtkmm.org"
228 @@ -32,6 +32,13 @@ pkg_setup() {
229 }
230
231 src_prepare() {
232 + # Backport of upstream patch for glib-2.29.18 compatibility
233 + rm gio/src/timezonemonitor.{ccg,hg} \
234 + gio/giomm/private/timezonemonitor_p.h \
235 + gio/giomm/timezonemonitor.{cc,h} || die "rm failed"
236 + epatch "${FILESDIR}/${P}-timezonemonitor.patch"
237 + eautoreconf
238 +
239 gnome2_src_prepare
240
241 if ! use test; then