mirror of
https://gitlab.freedesktop.org/pkg-config/pkg-config.git
synced 2025-12-20 04:20:04 +01:00
glib: Fix bundled build with GCC 6
Backport two patches from upstream glib to handle -Wformat-nonliteral included by default with GCC 6. Ideally the snapshot should be updated, but this fix the issue until that happens. https://bugs.freedesktop.org/show_bug.cgi?id=95326
This commit is contained in:
parent
325ddf2f4b
commit
64cbed9884
4 changed files with 86 additions and 0 deletions
29
glib-patches/gcc-format-nonliteral-1.patch
Normal file
29
glib-patches/gcc-format-nonliteral-1.patch
Normal file
|
|
@ -0,0 +1,29 @@
|
||||||
|
From 0817af40e8c74c721c30f6ef482b1f53d12044c7 Mon Sep 17 00:00:00 2001
|
||||||
|
From: coypu <coypu@sdf.org>
|
||||||
|
Date: Mon, 8 Feb 2016 00:06:06 +0200
|
||||||
|
Subject: gdate: Suppress string format literal warning
|
||||||
|
|
||||||
|
Newer versions of GCC emit an error here, but we know it's safe.
|
||||||
|
https://bugzilla.gnome.org/761550
|
||||||
|
---
|
||||||
|
glib/gdate.c | 3 +++
|
||||||
|
1 file changed, 3 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/glib/gdate.c b/glib/gdate.c
|
||||||
|
index 4aece02..cdc735c 100644
|
||||||
|
--- a/glib/gdate.c
|
||||||
|
+++ b/glib/gdate.c
|
||||||
|
@@ -2494,7 +2494,10 @@ g_date_strftime (gchar *s,
|
||||||
|
* recognize whether strftime actually failed or just returned "".
|
||||||
|
*/
|
||||||
|
tmpbuf[0] = '\1';
|
||||||
|
+ #pragma GCC diagnostic push
|
||||||
|
+ #pragma GCC diagnostic ignored "-Wformat-nonliteral"
|
||||||
|
tmplen = strftime (tmpbuf, tmpbufsize, locale_format, &tm);
|
||||||
|
+ #pragma GCC diagnostic pop
|
||||||
|
|
||||||
|
if (tmplen == 0 && tmpbuf[0] != '\0')
|
||||||
|
{
|
||||||
|
--
|
||||||
|
cgit v0.12
|
||||||
|
|
||||||
47
glib-patches/gcc-format-nonliteral-2.patch
Normal file
47
glib-patches/gcc-format-nonliteral-2.patch
Normal file
|
|
@ -0,0 +1,47 @@
|
||||||
|
From 8cdbc7fb2c8c876902e457abe46ee18a0b134486 Mon Sep 17 00:00:00 2001
|
||||||
|
From: coypu <coypu@sdf.org>
|
||||||
|
Date: Wed, 2 Mar 2016 19:38:48 +0200
|
||||||
|
Subject: gdate: Move warning pragma outside of function
|
||||||
|
|
||||||
|
Commit 0817af40e8c74c721c30f6ef482b1f53d12044c7 breaks the build on
|
||||||
|
older versions of GCC, which don't allow pragma inside functions.
|
||||||
|
|
||||||
|
https://bugzilla.gnome.org/761550
|
||||||
|
---
|
||||||
|
glib/gdate.c | 8 +++++---
|
||||||
|
1 file changed, 5 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/glib/gdate.c b/glib/gdate.c
|
||||||
|
index cdc735c..92c34d2 100644
|
||||||
|
--- a/glib/gdate.c
|
||||||
|
+++ b/glib/gdate.c
|
||||||
|
@@ -2439,6 +2439,9 @@ win32_strftime_helper (const GDate *d,
|
||||||
|
*
|
||||||
|
* Returns: number of characters written to the buffer, or 0 the buffer was too small
|
||||||
|
*/
|
||||||
|
+#pragma GCC diagnostic push
|
||||||
|
+#pragma GCC diagnostic ignored "-Wformat-nonliteral"
|
||||||
|
+
|
||||||
|
gsize
|
||||||
|
g_date_strftime (gchar *s,
|
||||||
|
gsize slen,
|
||||||
|
@@ -2494,10 +2497,7 @@ g_date_strftime (gchar *s,
|
||||||
|
* recognize whether strftime actually failed or just returned "".
|
||||||
|
*/
|
||||||
|
tmpbuf[0] = '\1';
|
||||||
|
- #pragma GCC diagnostic push
|
||||||
|
- #pragma GCC diagnostic ignored "-Wformat-nonliteral"
|
||||||
|
tmplen = strftime (tmpbuf, tmpbufsize, locale_format, &tm);
|
||||||
|
- #pragma GCC diagnostic pop
|
||||||
|
|
||||||
|
if (tmplen == 0 && tmpbuf[0] != '\0')
|
||||||
|
{
|
||||||
|
@@ -2552,3 +2552,5 @@ g_date_strftime (gchar *s,
|
||||||
|
return retval;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
+
|
||||||
|
+#pragma GCC diagnostic pop
|
||||||
|
--
|
||||||
|
cgit v0.12
|
||||||
|
|
||||||
|
|
@ -1,3 +1,4 @@
|
||||||
|
# pkg-config specific
|
||||||
glib-only.patch
|
glib-only.patch
|
||||||
no-installed-files.patch
|
no-installed-files.patch
|
||||||
foreign-automake.patch
|
foreign-automake.patch
|
||||||
|
|
@ -8,3 +9,7 @@ cross-compiling.patch
|
||||||
static-only.patch
|
static-only.patch
|
||||||
win32-static-init.patch
|
win32-static-init.patch
|
||||||
osx-static-framework.patch
|
osx-static-framework.patch
|
||||||
|
|
||||||
|
# Upstream backports
|
||||||
|
gcc-format-nonliteral-1.patch
|
||||||
|
gcc-format-nonliteral-2.patch
|
||||||
|
|
|
||||||
|
|
@ -2439,6 +2439,9 @@ win32_strftime_helper (const GDate *d,
|
||||||
*
|
*
|
||||||
* Returns: number of characters written to the buffer, or 0 the buffer was too small
|
* Returns: number of characters written to the buffer, or 0 the buffer was too small
|
||||||
*/
|
*/
|
||||||
|
#pragma GCC diagnostic push
|
||||||
|
#pragma GCC diagnostic ignored "-Wformat-nonliteral"
|
||||||
|
|
||||||
gsize
|
gsize
|
||||||
g_date_strftime (gchar *s,
|
g_date_strftime (gchar *s,
|
||||||
gsize slen,
|
gsize slen,
|
||||||
|
|
@ -2549,3 +2552,5 @@ g_date_strftime (gchar *s,
|
||||||
return retval;
|
return retval;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#pragma GCC diagnostic pop
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue