summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFabrice Fontaine <fontaine.fabrice@gmail.com>2018-04-15 08:23:39 (GMT)
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>2018-04-15 18:19:09 (GMT)
commitf9b6ec3b59746f3eddd387772ad60aa6bc52aa60 (patch)
tree851828df7894744c166db26f4d39c0ffda686881
parent2d64ba803befe0bbc28082ba5c1615254e9bf9dd (diff)
downloadbuildroot-f9b6ec3b59746f3eddd387772ad60aa6bc52aa60.tar.gz
buildroot-f9b6ec3b59746f3eddd387772ad60aa6bc52aa60.tar.bz2
libglib2: fix gobject with gcc <= 4.7
Patch under upstream review: https://bugzilla.gnome.org/show_bug.cgi?id=795138 Fixes: - http://autobuild.buildroot.net/results/b29a2f868438a2210873ea72f491db63175848be Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
-rw-r--r--package/libglib2/0003-gobject-fix-compilation-with-gcc-4.7.patch50
1 files changed, 50 insertions, 0 deletions
diff --git a/package/libglib2/0003-gobject-fix-compilation-with-gcc-4.7.patch b/package/libglib2/0003-gobject-fix-compilation-with-gcc-4.7.patch
new file mode 100644
index 0000000..fc67251
--- /dev/null
+++ b/package/libglib2/0003-gobject-fix-compilation-with-gcc-4.7.patch
@@ -0,0 +1,50 @@
+From a2b27c0d038ad76cc8016999f8788245da97e946 Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Date: Tue, 10 Apr 2018 19:18:57 +0200
+Subject: [PATCH] gobject: fix compilation with gcc <= 4.7
+
+On gcc 4.7, we got the following error:
+
+i686-nptl-linux-gnu-gcc --version
+> i686-nptl-linux-gnu-gcc (crosstool-NG 1.20.0) 4.7.4
+> $ echo '#include <glib-object.h>' | i686-nptl-linux-gnu-gcc -x c -I
+staging/usr/include/glib-2.0 -I staging/usr/lib/glib-2.0/include -Wall
+-Werror -c - -o /tmp/foo.o
+> In file included from
+staging/usr/include/glib-2.0/gobject/gbinding.h:29:0,
+> from staging/usr/include/glib-2.0/glib-object.h:23,
+> from <stdin>:1:
+> staging/usr/include/glib-2.0/gobject/gobject.h: In function
+'g_set_object':
+> staging/usr/include/glib-2.0/gobject/gobject.h:725:5: error: value
+computed is not used [-Werror=unused-value]
+> cc1: all warnings being treated as errors
+
+This error has been added by commit 3fae39a5d742afe73741f5fd7aa24e3ae8182f06
+So enable the new g_set_object definition only if gcc >= 4.8
+
+Fixes:
+ - http://autobuild.buildroot.net/results/b29a2f868438a2210873ea72f491db63175848be
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Upstream-status: https://bugzilla.gnome.org/show_bug.cgi?id=795138
+---
+ gobject/gobject.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/gobject/gobject.h b/gobject/gobject.h
+index 9830663ce..838046fe0 100644
+--- a/gobject/gobject.h
++++ b/gobject/gobject.h
+@@ -507,7 +507,7 @@ GLIB_AVAILABLE_IN_ALL
+ void g_object_remove_weak_pointer (GObject *object,
+ gpointer *weak_pointer_location);
+
+-#if defined(__GNUC__) && !defined(__cplusplus) && GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_56
++#if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 8)) && !defined(__cplusplus) && GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_56
+ /* Make reference APIs type safe with macros */
+ #define g_object_ref(Obj) ((__typeof__(Obj)) (g_object_ref) (Obj))
+ #define g_object_ref_sink(Obj) ((__typeof__(Obj)) (g_object_ref_sink) (Obj))
+--
+2.14.1
+