From 3f073fc227e52cfd73a3d18508f74f0511ca738a Mon Sep 17 00:00:00 2001 From: Yi Zhao Date: Tue, 5 Jul 2016 10:04:44 +0800 Subject: gtksourceview2: fix build with gcc6 Fix build error: ../../gtksourceview-2.10.5/gtksourceview/gtksourceprintcompositor.c: In function 'strdup_strftime': ../../gtksourceview-2.10.5/gtksourceview/gtksourceprintcompositor.c:1951:3: error: format not a string literal, format string not checked [-Werror=format-nonliteral] tmplen = strftime (tmpbuf, tmpbufsize, locale_format, tm); ^~~~~~ A wrapper for strftime() would compile failed with -Werror=format-nonliteral in newer GCC. See GCC bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=39438 Since most of the strdup_strftime function code is taken from GLib's g_date_strftime() in gdate.c which already had a fix: https://bugzilla.gnome.org/show_bug.cgi?id=761550 So this patch refers the glib fixes: https://git.gnome.org/browse/glib/commit/?id=0817af40e8c74c721c30f6ef482b1f53d12044c7 https://git.gnome.org/browse/glib/commit/?id=8cdbc7fb2c8c876902e457abe46ee18a0b134486 Signed-off-by: Yi Zhao Signed-off-by: Martin Jansa (cherry picked from commit ca363445b80b47f3e0c18cb9d96b9463ce86b913) Signed-off-by: Armin Kuster --- .../suppress-string-format-literal-warning.patch | 33 ++++++++++++++++++++++ .../gtksourceview/gtksourceview2_2.10.5.bb | 1 + 2 files changed, 34 insertions(+) create mode 100644 meta-gnome/recipes-gnome/gtksourceview/gtksourceview2/suppress-string-format-literal-warning.patch diff --git a/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2/suppress-string-format-literal-warning.patch b/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2/suppress-string-format-literal-warning.patch new file mode 100644 index 0000000000..f9ae077631 --- /dev/null +++ b/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2/suppress-string-format-literal-warning.patch @@ -0,0 +1,33 @@ +Fix build error with gcc6: +../../gtksourceview-2.10.5/gtksourceview/gtksourceprintcompositor.c: In function 'strdup_strftime': +../../gtksourceview-2.10.5/gtksourceview/gtksourceprintcompositor.c:1951:3: error: format not a string literal, format string not checked [-Werror=format-nonliteral] + tmplen = strftime (tmpbuf, tmpbufsize, locale_format, tm); + ^~~~~~ + +Patch Reference: +https://git.gnome.org/browse/glib/commit/?id=0817af40e8c74c721c30f6ef482b1f53d12044c7 +https://git.gnome.org/browse/glib/commit/?id=8cdbc7fb2c8c876902e457abe46ee18a0b134486 + +Upstream-Status: Pending +Signed-off-by: Yi Zhao + +diff -Nurp gtksourceview-2.10.5.orig/gtksourceview/gtksourceprintcompositor.c gtksourceview-2.10.5/gtksourceview/gtksourceprintcompositor.c +--- gtksourceview-2.10.5.orig/gtksourceview/gtksourceprintcompositor.c 2016-07-01 13:11:43.631173762 +0800 ++++ gtksourceview-2.10.5/gtksourceview/gtksourceprintcompositor.c 2016-07-04 13:54:18.223726343 +0800 +@@ -1913,6 +1913,8 @@ setup_pango_layouts (GtkSourcePrintCompo + * GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald */ + ++#pragma GCC diagnostic push ++#pragma GCC diagnostic ignored "-Wformat-nonliteral" + static gchar * + strdup_strftime (const gchar *format, const struct tm *tm) + { +@@ -1982,6 +1984,7 @@ strdup_strftime (const gchar *format, co + + return convbuf; + } ++#pragma GCC diagnostic pop + + static gchar * + evaluate_format_string (GtkSourcePrintCompositor *compositor, diff --git a/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2_2.10.5.bb b/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2_2.10.5.bb index c745e345a8..14ef7262bd 100644 --- a/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2_2.10.5.bb +++ b/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2_2.10.5.bb @@ -15,6 +15,7 @@ inherit gnomebase lib_package gettext # overrule SRC_URI from gnome.conf SRC_URI = "${GNOME_MIRROR}/${PNAME}/${@gnome_verdir("${PV}")}/${PNAME}-${PV}.tar.bz2;name=archive \ file://gtk-doc.make \ + file://suppress-string-format-literal-warning.patch \ " SRC_URI[archive.md5sum] = "1219ad1694df136f126507466aeb41aa" SRC_URI[archive.sha256sum] = "c585773743b1df8a04b1be7f7d90eecdf22681490d6810be54c81a7ae152191e" -- cgit 1.2.3-korg