[gobject-introspection] add fix for PPC failure, bugzilla 749604
Karsten Hopp
karsten at fedoraproject.org
Mon Dec 5 11:02:38 UTC 2011
commit f62622e527beb3e10f271f88e63642583ce379c2
Author: Karsten Hopp <karsten at redhat.com>
Date: Mon Dec 5 11:42:34 2011 +0100
add fix for PPC failure, bugzilla 749604
Conflicts:
gobject-introspection.spec
gobject-introspection-1.30.0-749604.patch | 83 +++++++++++++++++++++++++++++
gobject-introspection.spec | 8 +++
2 files changed, 91 insertions(+), 0 deletions(-)
---
diff --git a/gobject-introspection-1.30.0-749604.patch b/gobject-introspection-1.30.0-749604.patch
new file mode 100644
index 0000000..69d61b2
--- /dev/null
+++ b/gobject-introspection-1.30.0-749604.patch
@@ -0,0 +1,83 @@
+diff -up gobject-introspection-1.30.0/girepository/girffi.c.enum-fixes gobject-introspection-1.30.0/girepository/girffi.c
+--- gobject-introspection-1.30.0/girepository/girffi.c.enum-fixes 2011-11-29 12:30:04.759106057 -0600
++++ gobject-introspection-1.30.0/girepository/girffi.c 2011-11-29 11:06:26.540248521 -0600
+@@ -30,16 +30,10 @@
+ #include "girepository.h"
+ #include "girepository-private.h"
+
+-/**
+- * gi_type_tag_get_ffi_type:
+- * @tag: A #GITypeTag
+- * @is_pointer: Whether or not this is a pointer type
+- *
+- * Returns: A #ffi_type corresponding to the platform default C ABI for @tag and @is_pointer.
+- */
+-ffi_type *
+-gi_type_tag_get_ffi_type (GITypeTag tag,
+- gboolean is_pointer)
++static ffi_type *
++gi_type_tag_get_ffi_type_internal (GITypeInfo *info,
++ GITypeTag tag,
++ gboolean is_pointer)
+ {
+ switch (tag)
+ {
+@@ -77,12 +71,27 @@ gi_type_tag_get_ffi_type (GITypeTag ta
+ case GI_TYPE_TAG_UTF8:
+ case GI_TYPE_TAG_FILENAME:
+ case GI_TYPE_TAG_ARRAY:
+- case GI_TYPE_TAG_INTERFACE:
+ case GI_TYPE_TAG_GLIST:
+ case GI_TYPE_TAG_GSLIST:
+ case GI_TYPE_TAG_GHASH:
+ case GI_TYPE_TAG_ERROR:
+ return &ffi_type_pointer;
++ case GI_TYPE_TAG_INTERFACE:
++ {
++ /* This is for compat, but is broken! */
++ if (info == NULL)
++ return &ffi_type_pointer;
++
++ GIBaseInfo *interface = g_type_info_get_interface (info);
++ switch (g_base_info_get_type (interface))
++ {
++ case GI_INFO_TYPE_ENUM:
++ case GI_INFO_TYPE_FLAGS:
++ return &ffi_type_sint32;
++ default:
++ return &ffi_type_pointer;
++ }
++ }
+ case GI_TYPE_TAG_VOID:
+ if (is_pointer)
+ return &ffi_type_pointer;
+@@ -96,6 +105,20 @@ gi_type_tag_get_ffi_type (GITypeTag ta
+ }
+
+ /**
++ * gi_type_tag_get_ffi_type:
++ * @tag: A #GITypeTag
++ * @is_pointer: Whether or not this is a pointer type
++ *
++ * Returns: A #ffi_type corresponding to the platform default C ABI for @tag and @is_pointer.
++ */
++ffi_type *
++gi_type_tag_get_ffi_type (GITypeTag tag,
++ gboolean is_pointer)
++{
++ return gi_type_tag_get_ffi_type_internal (NULL, tag, is_pointer);
++}
++
++/**
+ * g_type_info_get_ffi_type:
+ * @info: A #GITypeInfo
+ *
+@@ -104,7 +127,7 @@ gi_type_tag_get_ffi_type (GITypeTag ta
+ ffi_type *
+ g_type_info_get_ffi_type (GITypeInfo *info)
+ {
+- return gi_type_tag_get_ffi_type (g_type_info_get_tag (info), g_type_info_is_pointer (info));
++ return gi_type_tag_get_ffi_type_internal (info, g_type_info_get_tag (info), g_type_info_is_pointer (info));
+ }
+
+ /**
diff --git a/gobject-introspection.spec b/gobject-introspection.spec
index 1268a0d..b04e7a0 100644
--- a/gobject-introspection.spec
+++ b/gobject-introspection.spec
@@ -11,6 +11,7 @@ License: GPLv2+, LGPLv2+, MIT
URL: http://live.gnome.org/GObjectIntrospection
#VCS: git:git://git.gnome.org/gobject-introspection
Source0: http://download.gnome.org/sources/gobject-introspection/1.31/%{name}-%{version}.tar.xz
+Patch0: gobject-introspection-1.30.0-749604.patch
Obsoletes: gir-repository
@@ -54,6 +55,7 @@ Libraries and headers for gobject-introspection
%prep
%setup -q
+%patch0 -p1 -b .538194
%build
(if ! test -x configure; then NOCONFIGURE=1 ./autogen.sh; CONFIGFLAGS=--enable-gtk-doc; fi;
@@ -94,6 +96,9 @@ find $RPM_BUILD_ROOT -type f -name "*.a" -exec rm -f {} ';'
%{_datadir}/gtk-doc/html/gi/*
%changelog
+* Mon Dec 05 2011 Karsten Hopp <karsten at redhat.com> 1.31.0-2
+- add fix for PPC failure, bugzilla 749604
+
* Wed Nov 16 2011 Colin Walters <walters at verbum.org> - 1.31.0-2
- -devel package requires libtool
https://bugzilla.redhat.com/show_bug.cgi?id=613466
@@ -101,6 +106,9 @@ find $RPM_BUILD_ROOT -type f -name "*.a" -exec rm -f {} ';'
* Wed Nov 2 2011 Matthias Clasen <mclasen at redhat.com> - 1.31.0-1
- Update to 1.31.0
+* Mon Sep 26 2011 Ray <rstrode at redhat.com> - 1.30.0-1
+- Update to 1.30.0
+
* Tue Sep 20 2011 Matthias Clasen <mclasen at redhat.com> - 1.30.0-1
- Update to 1.30.0
More information about the scm-commits
mailing list