From feeb6ea3690f73eb3748c1970a69e1b53db03c9e Mon Sep 17 00:00:00 2001 From: Fabrice Fontaine Date: Sat, 20 Jul 2024 14:29:08 +0200 Subject: [PATCH] package/mpir: fix build with host gcc >= 14 Fix the following build failure with host gcc >= 14 which enables -Werror=implicit-function-declaration (https://gcc.gnu.org/gcc-14/porting_to.html): configure:9998: checking build system compiler /usr/bin/gcc configure:10011: /usr/bin/gcc conftest.c conftest.c: In function 'main': conftest.c:4:3: error: implicit declaration of function 'exit' [-Wimplicit-function-declaration] 4 | exit(0); | ^~~~ conftest.c:1:1: note: include '' or provide a declaration of 'exit' +++ |+#include 1 | int conftest.c:4:3: warning: incompatible implicit declaration of built-in function 'exit' [-Wbuiltin-declaration-mismatch] 4 | exit(0); | ^~~~ conftest.c:4:3: note: include '' or provide a declaration of 'exit' configure:10014: $? = 1 configure:10021: result: no configure:10026: error: Specified CC_FOR_BUILD doesn't seem to work Fixes: - http://autobuild.buildroot.org/results/3ab381f06d5dc030039b6f6f8d19feb55cf3367d Signed-off-by: Fabrice Fontaine Signed-off-by: Thomas Petazzoni (cherry picked from commit 3bb426628c19f04cbad6821c1a68f008043d7808) Signed-off-by: Peter Korsgaard --- ...-Fix-configure-failures-with-Xcode12.patch | 116 ++++++++++++++++++ package/mpir/mpir.mk | 2 + 2 files changed, 118 insertions(+) create mode 100644 package/mpir/0002-Fix-configure-failures-with-Xcode12.patch diff --git a/package/mpir/0002-Fix-configure-failures-with-Xcode12.patch b/package/mpir/0002-Fix-configure-failures-with-Xcode12.patch new file mode 100644 index 0000000000..453515f926 --- /dev/null +++ b/package/mpir/0002-Fix-configure-failures-with-Xcode12.patch @@ -0,0 +1,116 @@ +From bbc43ca6ae0bec4f64e69c9cd4c967005d6470eb Mon Sep 17 00:00:00 2001 +From: Mitchell Blank Jr +Date: Mon, 21 Dec 2020 12:05:19 +0000 +Subject: [PATCH] Fix configure failures with Xcode12 + +Changes are needed becuase Xcode12 includes a default of +-Werror,-Wimplicit-function-declaration which means that +even something like calling "exit(0);" is a compile failure +if you haven't done a "#include " first (as C99 +requires, but most other compilers will just warn about) + +I don't know if the "long long reliability test 2" test which +tries to provoke a crash on a particular gcc 3.3 build still +does what it was originally intended to do with my change. +Of course, I doubt anyone has tried to use that compiler in +years. + +Fixes #290 + +Upstream: https://github.com/wbhart/mpir/commit/bbc43ca6ae0bec4f64e69c9cd4c967005d6470eb +Signed-off-by: Fabrice Fontaine +--- + acinclude.m4 | 24 +++++++++++++----------- + 1 file changed, 13 insertions(+), 11 deletions(-) + +diff --git a/acinclude.m4 b/acinclude.m4 +index 91c35bc23..620a629ef 100644 +--- a/acinclude.m4 ++++ b/acinclude.m4 +@@ -589,9 +589,9 @@ extern + #endif + __inline__ t1 e(t2 rp,t2 up,int n,t1 v0) + {t1 c,x,r;int i;if(v0){c=1;for(i=1;iconftest.c <conftest.c < + int + main () + { +- exit(0); ++ return 0; + } + double d; + double diff --git a/package/mpir/mpir.mk b/package/mpir/mpir.mk index 5dbd760aa1..46cd35e436 100644 --- a/package/mpir/mpir.mk +++ b/package/mpir/mpir.mk @@ -11,6 +11,8 @@ MPIR_LICENSE = LGPL-3.0+ MPIR_LICENSE_FILES = COPYING.LIB MPIR_INSTALL_STAGING = YES MPIR_DEPENDENCIES = gmp host-yasm +# 0002-Fix-configure-failures-with-Xcode12.patch +MPIR_AUTORECONF = YES ifeq ($(BR2_MIPS_NABI32),y) MPIR_CONF_OPTS += ABI=n32