commit:     ff7fb4695d7656feb7b793cd897882b7d49342d6
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 10 15:12:16 2021 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Sat Jul 10 21:41:02 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ff7fb469

autotools.eclass: rename configure.in to configure.ac on new EAPIs

automake is "eventually" going to fail when it detects configure.in.

Don't do this immediately - instead only on new EAPIs to avoid
breaking existing ebuilds.

We give an eqawarn (which is triggered by e.g. PORTAGE_ELOG_CLASSES="qa" and
is opt-in) for maintainers to upstream these where possible, but this isn't
always the case for software ehich otherwise works but is unmaintained upstream.

Bug: https://bugs.gentoo.org/426262
Signed-off-by: Sam James <sam <AT> gentoo.org>
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 eclass/autotools.eclass | 17 ++++++++++++++---
 1 file changed, 14 insertions(+), 3 deletions(-)

diff --git a/eclass/autotools.eclass b/eclass/autotools.eclass
index b386654c832..67ae6d8466b 100644
--- a/eclass/autotools.eclass
+++ b/eclass/autotools.eclass
@@ -373,10 +373,21 @@ eautoconf() {
                die "No configure.{ac,in} present!"
        fi
 
+
        if [[ ${WANT_AUTOCONF} != "2.1" && -e configure.in ]] ; then
-               eqawarn "This package has a configure.in file which has long 
been deprecated.  Please"
-               eqawarn "update it to use configure.ac instead as newer 
versions of autotools will die"
-               eqawarn "when it finds this file.  See 
https://bugs.gentoo.org/426262 for details."
+               case ${EAPI:-0} in
+                       0|1|2|3|4|5|6|7)
+                               eqawarn "This package has a configure.in file 
which has long been deprecated.  Please"
+                               eqawarn "update it to use configure.ac instead 
as newer versions of autotools will die"
+                               eqawarn "when it finds this file.  See 
https://bugs.gentoo.org/426262 for details."
+                       ;;
+               *)
+                               # Move configure file to the new location only 
on newer EAPIs to ensure
+                               # checks are done rather than retroactively 
breaking ebuilds.
+                               eqawarn "Moving configure.in to configure.ac 
(bug #426262)"
+                               mv configure.{in,ac} || die
+                       ;;
+               esac
        fi
 
        # Install config.guess and config.sub which are required by many macros

Reply via email to