From: "Sam James" <sam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-devel/autoconf/, sys-devel/autoconf/files/
Date: Fri, 18 Nov 2022 01:03:04 +0000 (UTC) [thread overview]
Message-ID: <1668733324.cc030538dc51e0bccceea9372bfab68cda588b8c.sam@gentoo> (raw)
commit: cc030538dc51e0bccceea9372bfab68cda588b8c
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 18 00:55:29 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Nov 18 01:02:04 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cc030538
sys-devel/autoconf: backport further Clang 16 fixes (2.71)
Bug: https://bugs.gentoo.org/870412
Signed-off-by: Sam James <sam <AT> gentoo.org>
...conf-2.71-r4.ebuild => autoconf-2.71-r5.ebuild} | 1 +
.../files/autoconf-2.13-K-R-decls-clang.patch | 2 +-
.../files/autoconf-2.71-K-R-decls-clang-deux.patch | 94 ++++++++++++++++++++++
.../files/autoconf-2.71-K-R-decls-clang.patch | 2 +-
4 files changed, 97 insertions(+), 2 deletions(-)
diff --git a/sys-devel/autoconf/autoconf-2.71-r4.ebuild b/sys-devel/autoconf/autoconf-2.71-r5.ebuild
similarity index 98%
rename from sys-devel/autoconf/autoconf-2.71-r4.ebuild
rename to sys-devel/autoconf/autoconf-2.71-r5.ebuild
index 225cfc50a50f..3ecf3ddc5979 100644
--- a/sys-devel/autoconf/autoconf-2.71-r4.ebuild
+++ b/sys-devel/autoconf/autoconf-2.71-r5.ebuild
@@ -47,6 +47,7 @@ PATCHES=(
"${FILESDIR}"/${P}-AC_C_BIGENDIAN-lto.patch
"${FILESDIR}"/${P}-K-R-decls-clang.patch
"${FILESDIR}"/${P}-make-4.4.patch
+ "${FILESDIR}"/${P}-K-R-decls-clang-deux.patch
)
src_prepare() {
diff --git a/sys-devel/autoconf/files/autoconf-2.13-K-R-decls-clang.patch b/sys-devel/autoconf/files/autoconf-2.13-K-R-decls-clang.patch
index 874712cea102..42c3018aea8c 100644
--- a/sys-devel/autoconf/files/autoconf-2.13-K-R-decls-clang.patch
+++ b/sys-devel/autoconf/files/autoconf-2.13-K-R-decls-clang.patch
@@ -1,7 +1,7 @@
https://bugs.gentoo.org/870412
https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=8b5e2016c7ed2d67f31b03a3d2e361858ff5299b
-Backport the K&R decls fix to 2.69 to avoid configure tests
+Backport the K&R decls fix to 2.13 to avoid configure tests
failing (often "silently", i.e. doesn't fail the build of
the package overall, just leads to wrong results) with
newer compilers like the upcoming Clang 16.
diff --git a/sys-devel/autoconf/files/autoconf-2.71-K-R-decls-clang-deux.patch b/sys-devel/autoconf/files/autoconf-2.71-K-R-decls-clang-deux.patch
new file mode 100644
index 000000000000..6a3d6580a3f6
--- /dev/null
+++ b/sys-devel/autoconf/files/autoconf-2.71-K-R-decls-clang-deux.patch
@@ -0,0 +1,94 @@
+https://bugs.gentoo.org/870412
+https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=bf5a75953b6d504f0405b1ca33b039b8dd39eef4
+
+Backport the K&R decls fix to 2.71 to avoid configure tests
+failing (often "silently", i.e. doesn't fail the build of
+the package overall, just leads to wrong results) with
+newer compilers like the upcoming Clang 16.
+
+From bf5a75953b6d504f0405b1ca33b039b8dd39eef4 Mon Sep 17 00:00:00 2001
+From: Zack Weinberg <zackw@panix.com>
+Date: Thu, 10 Nov 2022 12:05:30 -0500
+Subject: More fixes for compilers that reject K&R function definitions.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This fixes all of the remaining failures exposed by running the
+testsuite with GCC 12 and
+CC='cc -Wimplicit-function-declaration -Wold-style-definition
+ -Wimplicit-int -Werror'
+.
+
+* lib/autoconf/c.m4 (_AC_C_C89_TEST_GLOBALS): Don’t use K&R function
+ definitions.
+* lib/autoconf/specific.m4 (AC_SYS_RESTARTABLE_SYSCALLS): Likewise.
+ (AC_FUNC_MKTIME): Declare functions taking no arguments as ‘fn (void)’
+ not ‘fn ()’.
+* lib/autoconf/c.m4 (_AC_C_C99_TEST_GLOBALS): Declare free().
+--- a/lib/autoconf/c.m4
++++ b/lib/autoconf/c.m4
+@@ -1153,9 +1153,7 @@ struct stat;
+ /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */
+ struct buf { int x; };
+ struct buf * (*rcsopen) (struct buf *, struct stat *, int);
+-static char *e (p, i)
+- char **p;
+- int i;
++static char *e (char **p, int i)
+ {
+ return p[i];
+ }
+@@ -1212,6 +1210,7 @@ extern int puts (const char *);
+ extern int printf (const char *, ...);
+ extern int dprintf (int, const char *, ...);
+ extern void *malloc (size_t);
++extern void free (void *);
+
+ // Check varargs macros. These examples are taken from C99 6.10.3.5.
+ // dprintf is used instead of fprintf to avoid needing to declare
+--- a/lib/autoconf/functions.m4
++++ b/lib/autoconf/functions.m4
+@@ -1091,7 +1091,7 @@ static const char *tz_strings[] = {
+ /* Return 0 if mktime fails to convert a date in the spring-forward gap.
+ Based on a problem report from Andreas Jaeger. */
+ static int
+-spring_forward_gap ()
++spring_forward_gap (void)
+ {
+ /* glibc (up to about 1998-10-07) failed this test. */
+ struct tm tm;
+@@ -1128,7 +1128,7 @@ mktime_test (time_t now)
+ }
+
+ static int
+-irix_6_4_bug ()
++irix_6_4_bug (void)
+ {
+ /* Based on code from Ariel Faigon. */
+ struct tm tm;
+@@ -1170,7 +1170,7 @@ bigtime_test (int j)
+ }
+
+ static int
+-year_2050_test ()
++year_2050_test (void)
+ {
+ /* The correct answer for 2050-02-01 00:00:00 in Pacific time,
+ ignoring leap seconds. */
+--- a/lib/autoconf/specific.m4
++++ b/lib/autoconf/specific.m4
+@@ -361,10 +361,9 @@ AC_INCLUDES_DEFAULT
+ /* Some platforms explicitly require an extern "C" signal handler
+ when using C++. */
+ #ifdef __cplusplus
+-extern "C" void ucatch (int dummy) { }
+-#else
+-void ucatch (dummy) int dummy; { }
++extern "C"
+ #endif
++void ucatch (int dummy) { }
+
+ int
+ main (void)
+cgit v1.1
diff --git a/sys-devel/autoconf/files/autoconf-2.71-K-R-decls-clang.patch b/sys-devel/autoconf/files/autoconf-2.71-K-R-decls-clang.patch
index 33cb728695bb..e2e451e86920 100644
--- a/sys-devel/autoconf/files/autoconf-2.71-K-R-decls-clang.patch
+++ b/sys-devel/autoconf/files/autoconf-2.71-K-R-decls-clang.patch
@@ -1,7 +1,7 @@
https://bugs.gentoo.org/870412
https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=8b5e2016c7ed2d67f31b03a3d2e361858ff5299b
-Backport the K&R decls fix to 2.69 to avoid configure tests
+Backport the K&R decls fix to 2.71 to avoid configure tests
failing (often "silently", i.e. doesn't fail the build of
the package overall, just leads to wrong results) with
newer compilers like the upcoming Clang 16.
next reply other threads:[~2022-11-18 1:03 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-11-18 1:03 Sam James [this message]
-- strict thread matches above, loose matches on Subject: below --
2022-11-18 1:03 [gentoo-commits] repo/gentoo:master commit in: sys-devel/autoconf/, sys-devel/autoconf/files/ Sam James
2022-11-03 1:24 Sam James
2022-09-19 16:26 Sam James
2022-09-10 0:29 Sam James
2021-08-01 19:44 Andreas K. Hüttel
2021-03-13 20:08 Aaron Bauman
2020-12-01 17:19 Lars Wendler
2020-11-11 16:23 Lars Wendler
2020-10-21 7:00 Lars Wendler
2018-12-22 19:03 Andreas K. Hüttel
2017-08-04 15:17 Lars Wendler
2017-04-27 13:42 Lars Wendler
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1668733324.cc030538dc51e0bccceea9372bfab68cda588b8c.sam@gentoo \
--to=sam@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox