mirror of
https://gitlab.freedesktop.org/pkg-config/pkg-config.git
synced 2025-12-20 03:10:03 +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
|
||||
no-installed-files.patch
|
||||
foreign-automake.patch
|
||||
|
|
@ -8,3 +9,7 @@ cross-compiling.patch
|
|||
static-only.patch
|
||||
win32-static-init.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
|
||||
*/
|
||||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic ignored "-Wformat-nonliteral"
|
||||
|
||||
gsize
|
||||
g_date_strftime (gchar *s,
|
||||
gsize slen,
|
||||
|
|
@ -2549,3 +2552,5 @@ g_date_strftime (gchar *s,
|
|||
return retval;
|
||||
#endif
|
||||
}
|
||||
|
||||
#pragma GCC diagnostic pop
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue