Summary: | sys-devel/autoconf-2.69: provide optional mode where `autoconf` does not inject `runstatedir` variable. | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Sergei Trofimovich (RETIRED) <slyfox> |
Component: | Current packages | Assignee: | Gentoo's Team for Core System packages <base-system> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | sam |
Priority: | Normal | Keywords: | PullRequest |
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
See Also: | https://github.com/gentoo/gentoo/pull/27345 | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Sergei Trofimovich (RETIRED)
![]() I agree it seems like this could be useful, although a lot of distributions have backported this (both Debian [0] and Fedora [1] have). [0] https://sources.debian.org/src/autoconf/2.69-14/debian/patches/add-runstatedir.patch/ [1] https://src.fedoraproject.org/rpms/autoconf/blob/rawhide/f/autoconf-2.69-backport-runstatedir-option.patch My inclination is we should just revbump 2.69 and drop the patch. I don't think it should've been there in the first place really. It just causes noise every time we try to submit a patch upstream. The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=78a8211dcda0a866326f6ee99cc4c5da1a40fed4 commit 78a8211dcda0a866326f6ee99cc4c5da1a40fed4 Author: Sam James <sam@gentoo.org> AuthorDate: 2022-07-30 09:40:07 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2022-07-30 09:40:07 +0000 sys-devel/autoconf: drop runstatedir patch for 2.69 It's confusing when sending patches upstream and we've had 2.71 for a while now. Closes: https://bugs.gentoo.org/806376 Signed-off-by: Sam James <sam@gentoo.org> sys-devel/autoconf/autoconf-2.69-r6.ebuild | 62 ++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dbcc188c5ef6bc63190cc07c93452652c682f5bb commit dbcc188c5ef6bc63190cc07c93452652c682f5bb Author: Sam James <sam@gentoo.org> AuthorDate: 2022-09-19 16:10:24 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2022-09-19 16:26:41 +0000 sys-devel/autoconf: backport K&R decls fix to 2.13 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. A consequence of this whole fuss is that we're going to have to eautoreconf in a bunch of older packages, but as Ionen pointed out on IRC, this means we get some other stuff for free like Python 3.10 fixes, so it's not all bad. Undecided how to handle any packages with a generated configure from autoconfs not in tree. We may just patch the configure manually. Will see. See linked bug 870412 and the Discourse thread therein for details if unfamiliar. As I remarked on IRC, it's unfortunate to have to backport anything which will then infect generated configure, as it's somewhat a repeat of the --runstatedir situation, and it leads to confusion/hassle when sending patches upstream where a generated/bootstrapped configure is required. But this is different - it's a (serious) bug being fixed rather than a gratuitous (although) understandable given we weren't sure if we'd ever see another autoconf release backport of a new feature. Bug: https://bugs.gentoo.org/806376 Bug: https://bugs.gentoo.org/870412 Thanks-to: Arsen Arsenovic <arsen@aarsen.me> Signed-off-by: Sam James <sam@gentoo.org> sys-devel/autoconf/autoconf-2.13-r3.ebuild | 51 +++ .../files/autoconf-2.13-K-R-decls-clang.patch | 346 +++++++++++++++++++++ 2 files changed, 397 insertions(+) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=79c0b97504177b9ee374e3d96af8b03349b86d12 commit 79c0b97504177b9ee374e3d96af8b03349b86d12 Author: Sam James <sam@gentoo.org> AuthorDate: 2022-09-19 16:07:54 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2022-09-19 16:26:40 +0000 sys-devel/autoconf: backport K&R decls fix to 2.69 Backport the K&R decls fix to 2.69 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. A consequence of this whole fuss is that we're going to have to eautoreconf in a bunch of older packages, but as Ionen pointed out on IRC, this means we get some other stuff for free like Python 3.10 fixes, so it's not all bad. Undecided how to handle any packages with a generated configure from autoconfs not in tree. We may just patch the configure manually. Will see. See linked bug 870412 and the Discourse thread therein for details if unfamiliar. As I remarked on IRC, it's unfortunate to have to backport anything which will then infect generated configure, as it's somewhat a repeat of the --runstatedir situation, and it leads to confusion/hassle when sending patches upstream where a generated/bootstrapped configure is required. But this is different - it's a (serious) bug being fixed rather than a gratuitous (although) understandable given we weren't sure if we'd ever see another autoconf release backport of a new feature. Bug: https://bugs.gentoo.org/806376 Bug: https://bugs.gentoo.org/870412 Thanks-to: Arsen Arsenovic <arsen@aarsen.me> Signed-off-by: Sam James <sam@gentoo.org> sys-devel/autoconf/autoconf-2.69-r7.ebuild | 63 ++++ .../files/autoconf-2.69-K-R-decls-clang.patch | 387 +++++++++++++++++++++ 2 files changed, 450 insertions(+) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0acd23de8af61e7b900c3ff2c0fcbfe0b0ddc3a3 commit 0acd23de8af61e7b900c3ff2c0fcbfe0b0ddc3a3 Author: Sam James <sam@gentoo.org> AuthorDate: 2022-09-19 03:01:26 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2022-09-19 16:26:40 +0000 sys-devel/autoconf: backport K&R decls fix to 2.71 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. A consequence of this whole fuss is that we're going to have to eautoreconf in a bunch of older packages, but as Ionen pointed out on IRC, this means we get some other stuff for free like Python 3.10 fixes, so it's not all bad. Undecided how to handle any packages with a generated configure from autoconfs not in tree. We may just patch the configure manually. Will see. See linked bug 870412 and the Discourse thread therein for details if unfamiliar. Patches: - AC_C_BIGENDIAN-lto.patch ("Port AC_C_BIGENDIAN to cross gcc -std=c11 -flto") - AC_LANG_CALL_C_cxx.patch ("Port AC_LANG_CALL(C) to C++") - K-R-decls-clang.patch ("Port to compilers that moan about K&R func decls") The first two are included to make the latter apply cleanly, but they're also both harmless and desirable. As I remarked on IRC, it's unfortunate to have to backport anything which will then infect generated configure, as it's somewhat a repeat of the --runstatedir situation, and it leads to confusion/hassle when sending patches upstream where a generated/bootstrapped configure is required. But this is different - it's a (serious) bug being fixed rather than a gratuitous (although) understandable given we weren't sure if we'd ever see another autoconf release backport of a new feature. Backports to 2.69 & 2.13 to follow. Bug: https://bugs.gentoo.org/806376 Bug: https://bugs.gentoo.org/870412 Thanks-to: Arsen Arsenovic <arsen@aarsen.me> Signed-off-by: Sam James <sam@gentoo.org> sys-devel/autoconf/autoconf-2.71-r3.ebuild | 87 +++++++++++++ .../files/autoconf-2.71-AC_C_BIGENDIAN-lto.patch | 50 ++++++++ .../files/autoconf-2.71-AC_LANG_CALL_C_cxx.patch | 30 +++++ .../files/autoconf-2.71-K-R-decls-clang.patch | 136 +++++++++++++++++++++ 4 files changed, 303 insertions(+) |