summaryrefslogtreecommitdiff
path: root/Build/source/libs/libpng/libpng-PATCHES/patch-02-backport-20160314-12e63e9
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/libs/libpng/libpng-PATCHES/patch-02-backport-20160314-12e63e9')
-rw-r--r--Build/source/libs/libpng/libpng-PATCHES/patch-02-backport-20160314-12e63e936
1 files changed, 36 insertions, 0 deletions
diff --git a/Build/source/libs/libpng/libpng-PATCHES/patch-02-backport-20160314-12e63e9 b/Build/source/libs/libpng/libpng-PATCHES/patch-02-backport-20160314-12e63e9
new file mode 100644
index 00000000000..6941ae0019f
--- /dev/null
+++ b/Build/source/libs/libpng/libpng-PATCHES/patch-02-backport-20160314-12e63e9
@@ -0,0 +1,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
+