1 |
commit: 8e04aaec5a6b297e83081e819063be4cf560227a |
2 |
Author: Priit Laes <plaes <AT> plaes <DOT> org> |
3 |
AuthorDate: Tue Jul 3 10:40:28 2012 +0000 |
4 |
Commit: Priit Laes <plaes <AT> plaes <DOT> org> |
5 |
CommitDate: Tue Jul 3 10:40:28 2012 +0000 |
6 |
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=8e04aaec |
7 |
|
8 |
dev-libs/glib: Add 2.33.3 to overlay |
9 |
|
10 |
--- |
11 |
.../glib/files/glib-2.10.3-ia64-atomic-ops.patch | 39 ++++++++++++ |
12 |
...karound-gio-test-failure-without-userpriv.patch | 20 ------ |
13 |
.../glib-2.25-skip-tests-with-dbus-keyring.patch | 22 ------- |
14 |
...ib-2.33.x-testsuite-skip-gdbus-auth-tests.patch | 62 ++++++++++++++++++++ |
15 |
.../files/glib-2.33.x-testsuite-skip-thread4.patch | 44 ++++++++++++++ |
16 |
.../glib/{glib-9999.ebuild => glib-2.33.3.ebuild} | 34 +++++++---- |
17 |
dev-libs/glib/glib-9999.ebuild | 29 ++++++---- |
18 |
7 files changed, 186 insertions(+), 64 deletions(-) |
19 |
|
20 |
diff --git a/dev-libs/glib/files/glib-2.10.3-ia64-atomic-ops.patch b/dev-libs/glib/files/glib-2.10.3-ia64-atomic-ops.patch |
21 |
new file mode 100644 |
22 |
index 0000000..0859e33 |
23 |
--- /dev/null |
24 |
+++ b/dev-libs/glib/files/glib-2.10.3-ia64-atomic-ops.patch |
25 |
@@ -0,0 +1,39 @@ |
26 |
+From Debian, this one is needed for gcc < 4.1... |
27 |
+ |
28 |
+--- glib-2.10.0/glib/gatomic.c 2006-02-24 14:02:51.000000000 +0000 |
29 |
++++ glib-2.10.0/glib/gatomic.c 2006-03-06 18:12:06.000000000 +0000 |
30 |
+@@ -414,14 +414,14 @@ |
31 |
+ g_atomic_int_exchange_and_add (volatile gint *atomic, |
32 |
+ gint val) |
33 |
+ { |
34 |
+- return __sync_fetch_and_add (atomic, val); |
35 |
++ return __sync_fetch_and_add_si (atomic, val); |
36 |
+ } |
37 |
+ |
38 |
+ void |
39 |
+ g_atomic_int_add (volatile gint *atomic, |
40 |
+ gint val) |
41 |
+ { |
42 |
+- __sync_fetch_and_add (atomic, val); |
43 |
++ __sync_fetch_and_add_si (atomic, val); |
44 |
+ } |
45 |
+ |
46 |
+ gboolean |
47 |
+@@ -429,7 +429,7 @@ |
48 |
+ gint oldval, |
49 |
+ gint newval) |
50 |
+ { |
51 |
+- return __sync_bool_compare_and_swap (atomic, oldval, newval); |
52 |
++ return __sync_bool_compare_and_swap_si (atomic, oldval, newval); |
53 |
+ } |
54 |
+ |
55 |
+ gboolean |
56 |
+@@ -437,7 +437,7 @@ |
57 |
+ gpointer oldval, |
58 |
+ gpointer newval) |
59 |
+ { |
60 |
+- return __sync_bool_compare_and_swap ((long *)atomic, |
61 |
++ return __sync_bool_compare_and_swap_di ((long *)atomic, |
62 |
+ (long)oldval, (long)newval); |
63 |
+ } |
64 |
+ |
65 |
|
66 |
diff --git a/dev-libs/glib/files/glib-2.18.1-workaround-gio-test-failure-without-userpriv.patch b/dev-libs/glib/files/glib-2.18.1-workaround-gio-test-failure-without-userpriv.patch |
67 |
deleted file mode 100644 |
68 |
index cabe56f..0000000 |
69 |
--- a/dev-libs/glib/files/glib-2.18.1-workaround-gio-test-failure-without-userpriv.patch |
70 |
+++ /dev/null |
71 |
@@ -1,20 +0,0 @@ |
72 |
-Temporary workaround for gio tests failure when ran without FEATURES=userpriv |
73 |
-until upstream bug #552912 is fixed |
74 |
- |
75 |
---- gio/tests/live-g-file.c.orig 2008-09-25 05:44:12.848556034 +0300 |
76 |
-+++ gio/tests/live-g-file.c 2008-09-25 06:12:34.248726237 +0300 |
77 |
-@@ -769,11 +769,14 @@ |
78 |
- if (posix_compat) |
79 |
- { |
80 |
- /* target directory is not accessible (no execute flag) */ |
81 |
-+#if 0 |
82 |
-+/* Fails when ran as root */ |
83 |
- do_copy_move (root, item, TEST_DIR_NO_ACCESS, |
84 |
- TEST_NO_ACCESS); |
85 |
- /* target directory is readonly */ |
86 |
- do_copy_move (root, item, TEST_DIR_NO_WRITE, |
87 |
- TEST_NO_ACCESS); |
88 |
-+#endif |
89 |
- } |
90 |
- } |
91 |
- } |
92 |
|
93 |
diff --git a/dev-libs/glib/files/glib-2.25-skip-tests-with-dbus-keyring.patch b/dev-libs/glib/files/glib-2.25-skip-tests-with-dbus-keyring.patch |
94 |
deleted file mode 100644 |
95 |
index baca1ec..0000000 |
96 |
--- a/dev-libs/glib/files/glib-2.25-skip-tests-with-dbus-keyring.patch |
97 |
+++ /dev/null |
98 |
@@ -1,22 +0,0 @@ |
99 |
---- gio/tests/gdbus-peer.c.orig 2010-08-28 20:06:11.000000000 +0300 |
100 |
-+++ gio/tests/gdbus-peer.c 2010-08-28 20:06:21.000000000 +0300 |
101 |
-@@ -1448,7 +1448,7 @@ |
102 |
- |
103 |
- g_test_add_func ("/gdbus/peer-to-peer", test_peer); |
104 |
- g_test_add_func ("/gdbus/delayed-message-processing", delayed_message_processing); |
105 |
-- g_test_add_func ("/gdbus/nonce-tcp", test_nonce_tcp); |
106 |
-+ //g_test_add_func ("/gdbus/nonce-tcp", test_nonce_tcp); |
107 |
- g_test_add_func ("/gdbus/credentials", test_credentials); |
108 |
- g_test_add_func ("/gdbus/overflow", test_overflow); |
109 |
- |
110 |
---- gio/tests/gdbus-non-socket.c.orig 2010-08-28 20:36:52.000000000 +0300 |
111 |
-+++ gio/tests/gdbus-non-socket.c 2010-08-28 20:37:02.000000000 +0300 |
112 |
-@@ -336,7 +336,7 @@ |
113 |
- /* all the tests rely on a shared main loop */ |
114 |
- loop = g_main_loop_new (NULL, FALSE); |
115 |
- |
116 |
-- g_test_add_func ("/gdbus/non-socket", test_non_socket); |
117 |
-+ //g_test_add_func ("/gdbus/non-socket", test_non_socket); |
118 |
- |
119 |
- ret = g_test_run(); |
120 |
- |
121 |
|
122 |
diff --git a/dev-libs/glib/files/glib-2.33.x-testsuite-skip-gdbus-auth-tests.patch b/dev-libs/glib/files/glib-2.33.x-testsuite-skip-gdbus-auth-tests.patch |
123 |
new file mode 100644 |
124 |
index 0000000..aff75cb |
125 |
--- /dev/null |
126 |
+++ b/dev-libs/glib/files/glib-2.33.x-testsuite-skip-gdbus-auth-tests.patch |
127 |
@@ -0,0 +1,62 @@ |
128 |
+From 6e6aa7de746b78bc5fc6d2cad1cac762f6d2205f Mon Sep 17 00:00:00 2001 |
129 |
+From: Priit Laes <plaes@×××××.org> |
130 |
+Date: Tue, 3 Jul 2012 12:50:44 +0300 |
131 |
+Subject: [PATCH] Gentoo: skip over gdbus-auth /gdbus/auth/*/DBUS_COOKIE_SHA1 |
132 |
+ tests |
133 |
+ |
134 |
+https://bugzilla.gnome.org/show_bug.cgi?id=679308 |
135 |
+--- |
136 |
+ gio/tests/gdbus-auth.c | 9 +++++++++ |
137 |
+ 1 files changed, 9 insertions(+), 0 deletions(-) |
138 |
+ |
139 |
+diff --git a/gio/tests/gdbus-auth.c b/gio/tests/gdbus-auth.c |
140 |
+index 737770e..9f42c24 100644 |
141 |
+--- a/gio/tests/gdbus-auth.c |
142 |
++++ b/gio/tests/gdbus-auth.c |
143 |
+@@ -89,11 +89,14 @@ auth_client_external (void) |
144 |
+ auth_client_mechanism ("EXTERNAL"); |
145 |
+ } |
146 |
+ |
147 |
++#if 0 |
148 |
++// https://bugzilla.gnome.org/show_bug.cgi?id=679308 |
149 |
+ static void |
150 |
+ auth_client_dbus_cookie_sha1 (void) |
151 |
+ { |
152 |
+ auth_client_mechanism ("DBUS_COOKIE_SHA1"); |
153 |
+ } |
154 |
++#endif |
155 |
+ |
156 |
+ /* ---------------------------------------------------------------------------------------------------- */ |
157 |
+ |
158 |
+@@ -250,11 +253,13 @@ auth_server_external (void) |
159 |
+ auth_server_mechanism ("EXTERNAL"); |
160 |
+ } |
161 |
+ |
162 |
++#if 0 |
163 |
+ static void |
164 |
+ auth_server_dbus_cookie_sha1 (void) |
165 |
+ { |
166 |
+ auth_server_mechanism ("DBUS_COOKIE_SHA1"); |
167 |
+ } |
168 |
++#endif |
169 |
+ |
170 |
+ /* ---------------------------------------------------------------------------------------------------- */ |
171 |
+ |
172 |
+@@ -272,10 +277,14 @@ main (int argc, |
173 |
+ session_bus_up (); |
174 |
+ |
175 |
+ g_test_add_func ("/gdbus/auth/client/EXTERNAL", auth_client_external); |
176 |
++#if 0 |
177 |
+ g_test_add_func ("/gdbus/auth/client/DBUS_COOKIE_SHA1", auth_client_dbus_cookie_sha1); |
178 |
++#endif |
179 |
+ g_test_add_func ("/gdbus/auth/server/ANONYMOUS", auth_server_anonymous); |
180 |
+ g_test_add_func ("/gdbus/auth/server/EXTERNAL", auth_server_external); |
181 |
++#if 0 |
182 |
+ g_test_add_func ("/gdbus/auth/server/DBUS_COOKIE_SHA1", auth_server_dbus_cookie_sha1); |
183 |
++#endif |
184 |
+ |
185 |
+ ret = g_test_run(); |
186 |
+ |
187 |
+-- |
188 |
+1.7.8.6 |
189 |
+ |
190 |
|
191 |
diff --git a/dev-libs/glib/files/glib-2.33.x-testsuite-skip-thread4.patch b/dev-libs/glib/files/glib-2.33.x-testsuite-skip-thread4.patch |
192 |
new file mode 100644 |
193 |
index 0000000..f409094 |
194 |
--- /dev/null |
195 |
+++ b/dev-libs/glib/files/glib-2.33.x-testsuite-skip-thread4.patch |
196 |
@@ -0,0 +1,44 @@ |
197 |
+From 8a8112aad6dc98aaaf9767b31e48f5ae8fabd858 Mon Sep 17 00:00:00 2001 |
198 |
+From: Priit Laes <plaes@×××××.org> |
199 |
+Date: Tue, 3 Jul 2012 11:21:56 +0300 |
200 |
+Subject: [PATCH] Gentoo: skip over thread/thread4 test failure |
201 |
+ |
202 |
+https://bugzilla.gnome.org/show_bug.cgi?id=679306 |
203 |
+--- |
204 |
+ glib/tests/thread.c | 5 +++++ |
205 |
+ 1 files changed, 5 insertions(+), 0 deletions(-) |
206 |
+ |
207 |
+diff --git a/glib/tests/thread.c b/glib/tests/thread.c |
208 |
+index 29b3850..ffe8087 100644 |
209 |
+--- a/glib/tests/thread.c |
210 |
++++ b/glib/tests/thread.c |
211 |
+@@ -124,6 +124,8 @@ test_thread3 (void) |
212 |
+ g_assert_cmpint (GPOINTER_TO_INT(result), ==, 9); |
213 |
+ } |
214 |
+ |
215 |
++#if 0 |
216 |
++// https://bugzilla.gnome.org/show_bug.cgi?id=679306 |
217 |
+ /* test that thread creation fails as expected, |
218 |
+ * by setting RLIMIT_NPROC ridiculously low |
219 |
+ */ |
220 |
+@@ -152,6 +154,7 @@ test_thread4 (void) |
221 |
+ g_error ("resetting RLIMIT_NPROC failed: %s\n", g_strerror (ret)); |
222 |
+ #endif |
223 |
+ } |
224 |
++#endif |
225 |
+ |
226 |
+ static void |
227 |
+ test_thread5 (void) |
228 |
+@@ -195,7 +198,9 @@ main (int argc, char *argv[]) |
229 |
+ g_test_add_func ("/thread/thread1", test_thread1); |
230 |
+ g_test_add_func ("/thread/thread2", test_thread2); |
231 |
+ g_test_add_func ("/thread/thread3", test_thread3); |
232 |
++#if 0 |
233 |
+ g_test_add_func ("/thread/thread4", test_thread4); |
234 |
++#endif |
235 |
+ g_test_add_func ("/thread/thread5", test_thread5); |
236 |
+ g_test_add_func ("/thread/thread6", test_thread6); |
237 |
+ |
238 |
+-- |
239 |
+1.7.8.6 |
240 |
+ |
241 |
|
242 |
diff --git a/dev-libs/glib/glib-9999.ebuild b/dev-libs/glib/glib-2.33.3.ebuild |
243 |
similarity index 89% |
244 |
copy from dev-libs/glib/glib-9999.ebuild |
245 |
copy to dev-libs/glib/glib-2.33.3.ebuild |
246 |
index 1d9fff6..7fe4fca 100644 |
247 |
--- a/dev-libs/glib/glib-9999.ebuild |
248 |
+++ b/dev-libs/glib/glib-2.33.3.ebuild |
249 |
@@ -30,7 +30,7 @@ RDEPEND="virtual/libiconv |
250 |
sys-libs/zlib |
251 |
|| ( |
252 |
>=dev-libs/elfutils-0.142 |
253 |
- >=dev-libs/libelf-0.8.11 ) |
254 |
+ >=dev-libs/libelf-0.8.12 ) |
255 |
xattr? ( sys-apps/attr ) |
256 |
fam? ( virtual/fam ) |
257 |
utils? ( >=dev-util/gdbus-codegen-${PV} )" |
258 |
@@ -81,14 +81,27 @@ src_prepare() { |
259 |
[[ ${PV} = 9999 ]] && gnome2-live_src_prepare |
260 |
mv -vf "${WORKDIR}"/pkg-config-*/pkg.m4 "${WORKDIR}"/ || die |
261 |
|
262 |
+ if use ia64 ; then |
263 |
+ # Only apply for < 4.1 |
264 |
+ local major=$(gcc-major-version) |
265 |
+ local minor=$(gcc-minor-version) |
266 |
+ if (( major < 4 || ( major == 4 && minor == 0 ) )); then |
267 |
+ epatch "${FILESDIR}/glib-2.10.3-ia64-atomic-ops.patch" |
268 |
+ fi |
269 |
+ fi |
270 |
+ |
271 |
# Fix gmodule issues on fbsd; bug #184301 |
272 |
epatch "${FILESDIR}"/${PN}-2.12.12-fbsd.patch |
273 |
|
274 |
- # Do not try to remove files on live filesystem, upstream bug #619274 |
275 |
- sed 's:^\(.*"/desktop-app-info/delete".*\):/*\1*/:' \ |
276 |
- -i "${S}"/gio/tests/desktop-app-info.c || die "sed failed" |
277 |
+ # need to build tests if USE=doc for bug #387385 |
278 |
+ if ! use test && ! use doc; then |
279 |
+ # don't waste time building tests |
280 |
+ sed 's/^\(.*\SUBDIRS .*\=.*\)tests\(.*\)$/\1\2/' -i $(find . -name Makefile.am -o -name Makefile.in) || die |
281 |
+ else |
282 |
+ # Do not try to remove files on live filesystem, upstream bug #619274 |
283 |
+ sed 's:^\(.*"/desktop-app-info/delete".*\):/*\1*/:' \ |
284 |
+ -i "${S}"/gio/tests/desktop-app-info.c || die "sed failed" |
285 |
|
286 |
- if use test; then |
287 |
# Disable tests requiring dev-util/desktop-file-utils when not installed, bug #286629 |
288 |
if ! has_version dev-util/desktop-file-utils ; then |
289 |
ewarn "Some tests will be skipped due dev-util/desktop-file-utils not being present on your system," |
290 |
@@ -118,6 +131,11 @@ src_prepare() { |
291 |
# gdbus-codegen is a separate package |
292 |
epatch "${FILESDIR}/${PN}-2.31.x-external-gdbus-codegen.patch" |
293 |
|
294 |
+ # https://bugzilla.gnome.org/show_bug.cgi?id=679306 |
295 |
+ epatch "${FILESDIR}/${PN}-2.33.x-testsuite-skip-thread4.patch" |
296 |
+ # https://bugzilla.gnome.org/show_bug.cgi?id=679308 |
297 |
+ epatch "${FILESDIR}/${PN}-2.33.x-testsuite-skip-gdbus-auth-tests.patch" |
298 |
+ |
299 |
# disable pyc compiling |
300 |
use test && python_clean_py-compile_files |
301 |
|
302 |
@@ -187,12 +205,6 @@ src_install() { |
303 |
[[ ${PV} = 9999 ]] && { emake README || die "emake README failed"; } |
304 |
dodoc AUTHORS ChangeLog* NEWS* README |
305 |
|
306 |
- insinto /usr/share/bash-completion |
307 |
- for f in gdbus gsettings; do |
308 |
- newins "${ED}/etc/bash_completion.d/${f}-bash-completion.sh" ${f} |
309 |
- done |
310 |
- rm -rf "${ED}/etc" |
311 |
- |
312 |
# Completely useless with or without USE static-libs, people need to use |
313 |
# pkg-config |
314 |
find "${D}" -name '*.la' -exec rm -f {} + |
315 |
|
316 |
diff --git a/dev-libs/glib/glib-9999.ebuild b/dev-libs/glib/glib-9999.ebuild |
317 |
index 1d9fff6..ca821e8 100644 |
318 |
--- a/dev-libs/glib/glib-9999.ebuild |
319 |
+++ b/dev-libs/glib/glib-9999.ebuild |
320 |
@@ -30,7 +30,7 @@ RDEPEND="virtual/libiconv |
321 |
sys-libs/zlib |
322 |
|| ( |
323 |
>=dev-libs/elfutils-0.142 |
324 |
- >=dev-libs/libelf-0.8.11 ) |
325 |
+ >=dev-libs/libelf-0.8.12 ) |
326 |
xattr? ( sys-apps/attr ) |
327 |
fam? ( virtual/fam ) |
328 |
utils? ( >=dev-util/gdbus-codegen-${PV} )" |
329 |
@@ -81,14 +81,27 @@ src_prepare() { |
330 |
[[ ${PV} = 9999 ]] && gnome2-live_src_prepare |
331 |
mv -vf "${WORKDIR}"/pkg-config-*/pkg.m4 "${WORKDIR}"/ || die |
332 |
|
333 |
+ if use ia64 ; then |
334 |
+ # Only apply for < 4.1 |
335 |
+ local major=$(gcc-major-version) |
336 |
+ local minor=$(gcc-minor-version) |
337 |
+ if (( major < 4 || ( major == 4 && minor == 0 ) )); then |
338 |
+ epatch "${FILESDIR}/glib-2.10.3-ia64-atomic-ops.patch" |
339 |
+ fi |
340 |
+ fi |
341 |
+ |
342 |
# Fix gmodule issues on fbsd; bug #184301 |
343 |
epatch "${FILESDIR}"/${PN}-2.12.12-fbsd.patch |
344 |
|
345 |
- # Do not try to remove files on live filesystem, upstream bug #619274 |
346 |
- sed 's:^\(.*"/desktop-app-info/delete".*\):/*\1*/:' \ |
347 |
- -i "${S}"/gio/tests/desktop-app-info.c || die "sed failed" |
348 |
+ # need to build tests if USE=doc for bug #387385 |
349 |
+ if ! use test && ! use doc; then |
350 |
+ # don't waste time building tests |
351 |
+ sed 's/^\(.*\SUBDIRS .*\=.*\)tests\(.*\)$/\1\2/' -i $(find . -name Makefile.am -o -name Makefile.in) || die |
352 |
+ else |
353 |
+ # Do not try to remove files on live filesystem, upstream bug #619274 |
354 |
+ sed 's:^\(.*"/desktop-app-info/delete".*\):/*\1*/:' \ |
355 |
+ -i "${S}"/gio/tests/desktop-app-info.c || die "sed failed" |
356 |
|
357 |
- if use test; then |
358 |
# Disable tests requiring dev-util/desktop-file-utils when not installed, bug #286629 |
359 |
if ! has_version dev-util/desktop-file-utils ; then |
360 |
ewarn "Some tests will be skipped due dev-util/desktop-file-utils not being present on your system," |
361 |
@@ -187,12 +200,6 @@ src_install() { |
362 |
[[ ${PV} = 9999 ]] && { emake README || die "emake README failed"; } |
363 |
dodoc AUTHORS ChangeLog* NEWS* README |
364 |
|
365 |
- insinto /usr/share/bash-completion |
366 |
- for f in gdbus gsettings; do |
367 |
- newins "${ED}/etc/bash_completion.d/${f}-bash-completion.sh" ${f} |
368 |
- done |
369 |
- rm -rf "${ED}/etc" |
370 |
- |
371 |
# Completely useless with or without USE static-libs, people need to use |
372 |
# pkg-config |
373 |
find "${D}" -name '*.la' -exec rm -f {} + |