commit:     9bb87839a6ad66ee7c89837a546fbf2e7f69b577
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 29 11:17:33 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Sep 29 11:21:25 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9bb87839

toolchain.eclass: start with oldest GNAT and work upwards instead

Per https://gcc.gnu.org/install/prerequisites.html
"""
Similarly, it is strongly recommended to use an older version of GNAT to build 
GNAT.

More recent versions of GNAT than the version built are not guaranteed to work
and will often fail during the build with compilation errors.
"""

Bug: https://gcc.gnu.org/PR103357
Bug: https://bugs.gentoo.org/880825
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index f941f08d4198..759d871fde62 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -872,8 +872,8 @@ toolchain_src_configure() {
                local ada_candidate
                # We always prefer the version being built if possible
                # as it has the greatest chance of success. Failing that,
-               # try the latest installed GCC and iterate downwards.
-               for ada_candidate in ${SLOT} $(seq ${latest_gcc} -1 10) ; do
+               # try GCC 10 and iterate upwards.
+               for ada_candidate in ${SLOT} $(seq 10 ${latest_gcc}) ; do
                        has_version -b "sys-devel/gcc:${ada_candidate}" || 
continue
 
                        ebegin "Testing sys-devel/gcc:${ada_candidate} for Ada"

Reply via email to