package/minizip: fix build with gcc 4.8
authorFabrice Fontaine <fontaine.fabrice@gmail.com>
Sat, 25 Jul 2020 21:45:45 +0000 (23:45 +0200)
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>
Sat, 8 Aug 2020 21:50:13 +0000 (23:50 +0200)
Fixes:
 - http://autobuild.buildroot.org/results/b8baff4b86923d29163ce5cc9e391904d81fc90c

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
package/minizip/0002-mz.h-fix-build-with-gcc-4.8.patch [new file with mode: 0644]

diff --git a/package/minizip/0002-mz.h-fix-build-with-gcc-4.8.patch b/package/minizip/0002-mz.h-fix-build-with-gcc-4.8.patch
new file mode 100644 (file)
index 0000000..f9d28a3
--- /dev/null
@@ -0,0 +1,60 @@
+From d38254c2cfdfa2baceef9e4fa553b74ed2e0247e Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Date: Sat, 25 Jul 2020 14:36:11 +0200
+Subject: [PATCH] mz.h: fix build with gcc 4.8
+
+gcc 4.8 does not support __has_include directive as a result the build
+will fail on:
+
+/home/naourr/work/instance-1/output-1/build/minizip-2.10.0/mz.h:162:44: error: missing binary operator before token "("
+    (defined(__has_include) && __has_include(<stdint.h>))
+                                            ^
+
+Fix it by appling:
+https://gcc.gnu.org/onlinedocs/gcc-10.1.0/cpp/_005f_005fhas_005finclude.html
+
+Fix #510
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+[Upstream status: https://github.com/nmoinvaz/minizip/pull/515]
+---
+ mz.h | 14 ++++++++++----
+ 1 file changed, 10 insertions(+), 4 deletions(-)
+
+diff --git a/mz.h b/mz.h
+index 4d3732b..83662e0 100644
+--- a/mz.h
++++ b/mz.h
+@@ -158,9 +158,12 @@
+ #include <string.h> /* memset, strncpy, strlen */
+ #include <limits.h>
+-#if defined(HAVE_STDINT_H) || \
+-   (defined(__has_include) && __has_include(<stdint.h>))
++#if defined(HAVE_STDINT_H)
+ #  include <stdint.h>
++#elif defined(__has_include)
++#  if __has_include(<stdint.h>)
++#    include <stdint.h>
++#  endif
+ #endif
+ #ifndef __INT8_TYPE__
+@@ -188,9 +191,12 @@ typedef unsigned int       uint32_t;
+ typedef unsigned long long uint64_t;
+ #endif
+-#if defined(HAVE_INTTYPES_H) || \
+-   (defined(__has_include) && __has_include(<inttypes.h>))
++#if defined(HAVE_INTTYPES_H)
+ #  include <inttypes.h>
++#elif defined(__has_include)
++#  if __has_include(<inttypes.h>)
++#    include <inttypes.h>
++#  endif
+ #endif
+ #ifndef PRId8
+-- 
+2.27.0
+