diff --git a/autoconf.spec b/autoconf.spec index d10f66dc2c7defd5b249e99d2b874a53a5d43eb9..59323271ec21ec89b1c934f3abf73956ce86e3ff 100644 --- a/autoconf.spec +++ b/autoconf.spec @@ -3,7 +3,7 @@ Name: autoconf Version: 2.71 -Release: 4 +Release: 8 Summary: An extensible package to automatically configure software source code packages License: GPLv2+ and GPLv3+ and GFDL-1.3-only URL: https://www.gnu.org/software/%{name}/ @@ -12,6 +12,7 @@ Source1: config.site Source2: autoconf-el.el Patch1: backport-_AC_PROG_CXX_STDCXX_EDITION_TRY-fix-typo-in-variable.patch +Patch2: backport-Port-AC_LANG_CALL-C-to-C.patch.patch Patch9000: skip-one-test-at-line-1616-of-autotest.patch @@ -72,6 +73,9 @@ fi %changelog +* Wed Dec 04 2024 fuanan - 2.71-8 +- fix AC_CHECK_LIB no longer works with g++ (debian bug#992981) + * Wed Jun 12 2024 fuanan - 2.71-4 - Type:bugfix - ID:NA diff --git a/backport-Port-AC_LANG_CALL-C-to-C.patch.patch b/backport-Port-AC_LANG_CALL-C-to-C.patch.patch new file mode 100644 index 0000000000000000000000000000000000000000..da50fc044f737e76a93e568848c03e6e66d2fb2e --- /dev/null +++ b/backport-Port-AC_LANG_CALL-C-to-C.patch.patch @@ -0,0 +1,36 @@ +From b27bc3e230bb12fdd9a813e38e82bc4c3e22b4cc Mon Sep 17 00:00:00 2001 +From: Paul Eggert +Date: Tue, 31 Aug 2021 16:30:46 -0700 +Subject: [PATCH] Port AC_LANG_CALL(C) to C++ +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +* lib/autoconf/c.m4 (AC_LANG_CALL(C)): Add an extern "C" if C++. +Problem reported by Vincent Lefèvre (sr #110532). +--- + lib/autoconf/c.m4 | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/lib/autoconf/c.m4 b/lib/autoconf/c.m4 +index 44443a39..48bd49a3 100644 +--- a/lib/autoconf/c.m4 ++++ b/lib/autoconf/c.m4 +@@ -126,7 +126,13 @@ m4_define([AC_LANG_CALL(C)], + m4_if([$2], [main], , + [/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC +- builtin and then its argument prototype would still apply. */ ++ builtin and then its argument prototype would still apply. ++ The 'extern "C"' is for builds by C++ compilers; ++ although this is not generally supported in C code, supporting it here ++ has little cost and some practical benefit (sr 110532). */ ++#ifdef __cplusplus ++extern "C" ++#endif + char $2 ();])], [return $2 ();])]) + + +-- +2.43.5 +