summaryrefslogtreecommitdiff
path: root/Build/source/libs/libpng/libpng-PATCHES/patch-02-backport-20160314-12e63e9
blob: 6941ae0019f85b9eb0c455fa5f837bda5242ed80 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
https://github.com/glennrp/libpng/commit/12e63e91af1378225993b36e25ce3252b54e751a.patch

From 12e63e91af1378225993b36e25ce3252b54e751a Mon Sep 17 00:00:00 2001
From: Dagobert Michelsen <dam@opencsw.org>
Date: Mon, 14 Mar 2016 16:21:06 +0100
Subject: [PATCH] Force back to C89 if needed. This fixes #245

---
 configure.ac | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/configure.ac b/configure.ac
index 3b8746a..ee3ea05 100644
--- a/configure.ac
+++ b/configure.ac
@@ -114,6 +114,20 @@ AC_ARG_ENABLE(werror,
       CFLAGS="$sav_CFLAGS"
     fi],)
 
+# For GCC 5 the default mode for C is -std=gnu11 instead of -std=gnu89
+# In pngpriv.h we request just the POSIX 1003.1 and C89 APIs by defining _POSIX_SOURCE to 1
+# This is incompatible with the new default mode, so we test for that and force the 
+AC_MSG_CHECKING([if we need to force back C standard to C89])
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#define _POSIX_SOURCE 1
+#include <stdio.h>
+])],AC_MSG_RESULT(no),[
+if test "x$GCC" != "xyes"; then
+  AC_MSG_ERROR([Forcing back to C89 is required but the flags are unknown for other compilers than GCC])
+fi
+AC_MSG_RESULT(yes)
+CFLAGS="$CFLAGS -std=c89"
+])
+
 # Checks for header files.
 AC_HEADER_STDC