diff options
author | Eric Sandall | 2007-12-01 11:37:27 -0800 |
---|---|---|
committer | Eric Sandall | 2007-12-01 11:37:27 -0800 |
commit | f53370367cb0b2a28ff4382c616af5aed7dc9e39 (patch) | |
tree | 4801760937bfcfe02ec76a9b041332dc32505bce | |
parent | 55cefcaa3d12d729f33e6ccdf603922153e20d03 (diff) |
ruby-glib2: Compile again with glib2 > 2.14.1 (Bug #14114)
-rw-r--r-- | gnome2-libs/ruby-glib2/01-timeout_add_seconds.patch | 108 | ||||
-rw-r--r-- | gnome2-libs/ruby-glib2/02-unicode.patch | 167 | ||||
-rw-r--r-- | gnome2-libs/ruby-glib2/HISTORY | 9 | ||||
-rwxr-xr-x | gnome2-libs/ruby-glib2/PRE_BUILD | 5 |
4 files changed, 289 insertions, 0 deletions
diff --git a/gnome2-libs/ruby-glib2/01-timeout_add_seconds.patch b/gnome2-libs/ruby-glib2/01-timeout_add_seconds.patch new file mode 100644 index 0000000000..e885089787 --- /dev/null +++ b/gnome2-libs/ruby-glib2/01-timeout_add_seconds.patch @@ -0,0 +1,108 @@ +--- rbglib_maincontext.c 2006/12/10 17:24:22 1.10 ++++ rbglib_maincontext.c 2007/08/30 10:13:44 1.13 +@@ -3,8 +3,8 @@ + + rbglib_maincontext.c - + +- $Author: mutoh $ +- $Date: 2006/12/10 17:24:22 $ ++ $Author: ktou $ ++ $Date: 2007/08/30 10:13:44 $ + + Copyright (C) 2005 Masao Mutoh + ************************************************/ +@@ -54,7 +54,7 @@ + callback_info_t *info = (callback_info_t *)data; + gboolean ret; + +- ret = RTEST(rb_funcall(info->callback, id_call, 0)); ++ ret = RVAL2CBOOL(rb_funcall(info->callback, id_call, 0)); + if (!ret) + G_REMOVE_RELATIVE(mGLibSource, id__callbacks__, UINT2NUM(info->id)); + return ret; +@@ -95,7 +95,7 @@ + mc_iteration(self, may_block) + VALUE self, may_block; + { +- return CBOOL2RVAL(g_main_context_iteration(_SELF(self), RTEST(may_block))); ++ return CBOOL2RVAL(g_main_context_iteration(_SELF(self), RVAL2CBOOL(may_block))); + } + + static VALUE +@@ -253,7 +253,7 @@ + mc_set_poll_func(self) + VALUE self; + { +- rb_ivar_set(self, id_poll_func, G_BLOCK_PROC()); ++ rb_ivar_set(self, id_poll_func, rb_block_proc()); + g_main_context_set_poll_func(_SELF(self), (GPollFunc)poll_func); + + return self; +@@ -331,19 +331,23 @@ + + #if GLIB_CHECK_VERSION(2,14,0) + static VALUE +-timeout_add_seconds(VALUE self, VALUE interval) ++timeout_add_seconds(int argc, VALUE *argv, VALUE self) + { +- VALUE func, rb_id; ++ VALUE interval, rb_priority, func, rb_id; ++ gint priority; + callback_info_t *info; + guint id; + +- func = G_BLOCK_PROC(); ++ rb_scan_args(argc, argv, "11&", &interval, &rb_priority, &func); + ++ priority = NIL_P(rb_priority) ? G_PRIORITY_DEFAULT : INT2NUM(rb_priority); + info = ALLOC(callback_info_t); + info->callback = func; +- id = g_timeout_add_seconds(NUM2UINT(interval), +- (GSourceFunc)invoke_source_func, +- (gpointer)info, g_free); ++ id = g_timeout_add_seconds_full(priority, ++ NUM2UINT(interval), ++ (GSourceFunc)invoke_source_func, ++ (gpointer)info, ++ g_free); + info->id = id; + rb_id = UINT2NUM(id); + G_RELATIVE2(mGLibSource, func, id__callbacks__, rb_id); +@@ -372,15 +376,15 @@ + + rb_scan_args(argc, argv, "02", &arg1, &arg2); + +- if (RTEST(rb_obj_is_kind_of(arg1, rb_cProc))) { ++ if (RVAL2CBOOL(rb_obj_is_kind_of(arg1, rb_cProc))) { + priority = G_PRIORITY_DEFAULT; + func = arg1; +- } else if (RTEST(rb_obj_is_kind_of(arg1, rb_cInteger))) { ++ } else if (RVAL2CBOOL(rb_obj_is_kind_of(arg1, rb_cInteger))) { + priority = NUM2INT(arg1); +- func = G_BLOCK_PROC(); ++ func = rb_block_proc(); + } else { + priority = G_PRIORITY_DEFAULT; +- func = G_BLOCK_PROC(); ++ func = rb_block_proc(); + } + + info = ALLOC(callback_info_t); +@@ -427,7 +431,7 @@ + child_watch_add(self, pid) + VALUE self, pid; + { +- VALUE func = G_BLOCK_PROC(); ++ VALUE func = rb_block_proc(); + G_RELATIVE(self, func); + return UINT2NUM(g_child_watch_add((GPid)NUM2INT(pid), + (GChildWatchFunc)child_watch_func, (gpointer)func)); +@@ -488,7 +492,7 @@ + #endif + rb_define_module_function(timeout, "add", timeout_add, -1); + #if GLIB_CHECK_VERSION(2,14,0) +- rb_define_module_function(timeout, "add_seconds", timeout_add_seconds, 1); ++ rb_define_module_function(timeout, "add_seconds", timeout_add_seconds, -1); + #endif + rb_define_module_function(idle, "source_new", idle_source_new, 0); + rb_define_module_function(idle, "add", idle_add, -1); diff --git a/gnome2-libs/ruby-glib2/02-unicode.patch b/gnome2-libs/ruby-glib2/02-unicode.patch new file mode 100644 index 0000000000..2c0d17a6d1 --- /dev/null +++ b/gnome2-libs/ruby-glib2/02-unicode.patch @@ -0,0 +1,167 @@ +--- rbglib_unicode.c 2006/12/16 05:01:30 1.7 ++++ rbglib_unicode.c 2007/08/30 10:16:35 1.9 +@@ -3,8 +3,8 @@ + + rbglib_unicode.c - + +- $Author: mutoh $ +- $Date: 2006/12/16 05:01:30 $ ++ $Author: ktou $ ++ $Date: 2007/08/30 10:16:35 $ + + Copyright (C) 2006 Kouhei Sutou + +@@ -100,7 +100,7 @@ + gint len; + + original_str = StringValuePtr(rb_ucs4); +- len = RSTRING(rb_ucs4)->len; ++ len = RSTRING_LEN(rb_ucs4); + ucs4 = g_memdup(original_str, len); + g_unicode_canonical_ordering(ucs4, len); + normalized_ucs4 = rb_str_new((const char *)ucs4, len); +@@ -140,7 +140,7 @@ + rbglib_m_unichar_get_script(VALUE self, VALUE unichar) + { + return GENUM2RVAL(g_unichar_get_script(NUM2UINT(unichar)), +- G_TYPE_UNICODE_SCRIPT_TYPE); ++ G_TYPE_UNICODE_SCRIPT); + } + #endif + +@@ -154,8 +154,8 @@ + + if (RVAL2CBOOL(validate)) { + StringValue(utf8); +- result = g_utf8_get_char_validated(RSTRING(utf8)->ptr, +- RSTRING(utf8)->len); ++ result = g_utf8_get_char_validated(RSTRING_PTR(utf8), ++ RSTRING_LEN(utf8)); + if (result == (gunichar)-1) { + return INT2NUM(-1); + } else if (result == (gunichar)-2) { +@@ -174,7 +174,7 @@ + gchar *utf8; + + utf8 = StringValueCStr(rb_utf8); +- return INT2NUM(g_utf8_strlen(utf8, RSTRING(rb_utf8)->len)); ++ return INT2NUM(g_utf8_strlen(utf8, RSTRING_LEN(rb_utf8))); + } + + static VALUE +@@ -184,7 +184,7 @@ + gchar *utf8, *reversed_utf8; + + utf8 = StringValueCStr(rb_utf8); +- reversed_utf8 = g_utf8_strreverse(utf8, RSTRING(rb_utf8)->len); ++ reversed_utf8 = g_utf8_strreverse(utf8, RSTRING_LEN(rb_utf8)); + result = rb_str_new2(reversed_utf8); + g_free(reversed_utf8); + return result; +@@ -194,7 +194,7 @@ + rbglib_m_utf8_validate(VALUE self, VALUE str) + { + StringValue(str); +- return CBOOL2RVAL(g_utf8_validate(RSTRING(str)->ptr, RSTRING(str)->len, ++ return CBOOL2RVAL(g_utf8_validate(RSTRING_PTR(str), RSTRING_LEN(str), + NULL)); + } + +@@ -205,7 +205,7 @@ + gchar *utf8, *upcased_utf8; + + utf8 = StringValueCStr(rb_utf8); +- upcased_utf8 = g_utf8_strup(utf8, RSTRING(rb_utf8)->len); ++ upcased_utf8 = g_utf8_strup(utf8, RSTRING_LEN(rb_utf8)); + result = rb_str_new2(upcased_utf8); + g_free(upcased_utf8); + return result; +@@ -218,7 +218,7 @@ + gchar *utf8, *downcased_utf8; + + utf8 = StringValueCStr(rb_utf8); +- downcased_utf8 = g_utf8_strdown(utf8, RSTRING(rb_utf8)->len); ++ downcased_utf8 = g_utf8_strdown(utf8, RSTRING_LEN(rb_utf8)); + result = rb_str_new2(downcased_utf8); + g_free(downcased_utf8); + return result; +@@ -231,7 +231,7 @@ + gchar *utf8, *casefolded_utf8; + + utf8 = StringValueCStr(rb_utf8); +- casefolded_utf8 = g_utf8_casefold(utf8, RSTRING(rb_utf8)->len); ++ casefolded_utf8 = g_utf8_casefold(utf8, RSTRING_LEN(rb_utf8)); + result = rb_str_new2(casefolded_utf8); + g_free(casefolded_utf8); + return result; +@@ -250,7 +250,7 @@ + mode = RVAL2GENUM(rb_mode, G_TYPE_NORMALIZE_MODE); + + utf8 = StringValueCStr(rb_utf8); +- normalized_utf8 = g_utf8_normalize(utf8, RSTRING(rb_utf8)->len, mode); ++ normalized_utf8 = g_utf8_normalize(utf8, RSTRING_LEN(rb_utf8), mode); + result = rb_str_new2(normalized_utf8); + g_free(normalized_utf8); + return result; +@@ -273,7 +273,7 @@ + rb_scan_args(argc, argv, "11", &rb_utf8, &for_filename); + + utf8 = StringValueCStr(rb_utf8); +- len = RSTRING(rb_utf8)->len; ++ len = RSTRING_LEN(rb_utf8); + #if GLIB_CHECK_VERSION(2,8,0) + if (RVAL2CBOOL(for_filename)) + key = g_utf8_collate_key_for_filename(utf8, len); +@@ -296,7 +296,7 @@ + GError *error = NULL; + + utf8 = StringValueCStr(rb_utf8); +- len = RSTRING(rb_utf8)->len; ++ len = RSTRING_LEN(rb_utf8); + + utf16 = g_utf8_to_utf16(utf8, len, NULL, &items_written, &error); + +@@ -319,7 +319,7 @@ + rb_scan_args(argc, argv, "11", &rb_utf8, &is_fast); + + utf8 = StringValueCStr(rb_utf8); +- len = RSTRING(rb_utf8)->len; ++ len = RSTRING_LEN(rb_utf8); + + if (RVAL2CBOOL(is_fast)) { + ucs4 = g_utf8_to_ucs4_fast(utf8, len, &items_written); +@@ -346,7 +346,7 @@ + GError *error = NULL; + + utf16 = (gunichar2 *)StringValueCStr(rb_utf16); +- len = RSTRING(rb_utf16)->len / sizeof(*utf16); ++ len = RSTRING_LEN(rb_utf16) / sizeof(*utf16); + + ucs4 = g_utf16_to_ucs4(utf16, len, NULL, &items_written, &error); + +@@ -368,7 +368,7 @@ + GError *error = NULL; + + utf16 = (gunichar2 *)StringValueCStr(rb_utf16); +- len = RSTRING(rb_utf16)->len / sizeof(*utf16); ++ len = RSTRING_LEN(rb_utf16) / sizeof(*utf16); + + utf8 = g_utf16_to_utf8(utf16, len, NULL, &items_written, &error); + +@@ -390,7 +390,7 @@ + GError *error = NULL; + + ucs4 = (gunichar *)StringValuePtr(rb_ucs4); +- len = RSTRING(rb_ucs4)->len / sizeof(*ucs4); ++ len = RSTRING_LEN(rb_ucs4) / sizeof(*ucs4); + + utf16 = g_ucs4_to_utf16(ucs4, len, NULL, &items_written, &error); + +@@ -412,7 +412,7 @@ + GError *error = NULL; + + ucs4 = (gunichar *)StringValuePtr(rb_ucs4); +- len = RSTRING(rb_ucs4)->len / sizeof(*ucs4); ++ len = RSTRING_LEN(rb_ucs4) / sizeof(*ucs4); + + utf8 = g_ucs4_to_utf8(ucs4, len, NULL, &items_written, &error); diff --git a/gnome2-libs/ruby-glib2/HISTORY b/gnome2-libs/ruby-glib2/HISTORY index efef09ce70..8473181636 100644 --- a/gnome2-libs/ruby-glib2/HISTORY +++ b/gnome2-libs/ruby-glib2/HISTORY @@ -1,3 +1,12 @@ +2007-12-01 Eric Sandall <sandalle@sourcemage.org> + * 01-timeout_add_seconds.patch: Patch between 1.10 and 1.13 from + Revision 1.12 from http://ruby-gnome2.cvs.sourceforge.net/ruby-gnome2/ruby-gnome2/glib/src/rbglib_maincontext.c?view=log + Fixes Bug #14114 + * 02-unicode.patch: Patch from 1.7 to 1.9 from + Revision 1.12 from http://ruby-gnome2.cvs.sourceforge.net/ruby-gnome2/ruby-gnome2/glib/src/rbglib_maincontext.c?view=log + Fixes another compile issue with glib2 > 2.14.1 + * PRE_BUILD: Apply patches in-order + 2007-03-18 Robin Cook <rcook@wyrms.net> * DETAILS: updated VERSION to 0.16.0 diff --git a/gnome2-libs/ruby-glib2/PRE_BUILD b/gnome2-libs/ruby-glib2/PRE_BUILD new file mode 100755 index 0000000000..7ed2d8c374 --- /dev/null +++ b/gnome2-libs/ruby-glib2/PRE_BUILD @@ -0,0 +1,5 @@ +default_pre_build && +patch $SOURCE_DIRECTORY/glib/src/rbglib_maincontext.c \ + $SCRIPT_DIRECTORY/01-timeout_add_seconds.patch && +patch $SOURCE_DIRECTORY/glib/src/rbglib_unicode.c \ + $SCRIPT_DIRECTORY/02-unicode.patch |