commit:     f5d37c450823325ee43519dc710c21018f89f6ad
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 11 07:50:34 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Oct 11 07:50:34 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f5d37c45

dev-lang/python: check for new enough GCC/Clang for USE=tail-call-interp

I've kept the p.use.stable.mask entry as users enabling it on stable would
still have to manually set CC=clang etc and it doesn't seem worth it. Hopefully
we can stable GCC 15 soonish anyway.

Closes: https://bugs.gentoo.org/963989
Thanks-to: Jerome C <me <AT> jeromec.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-lang/python/python-0.3.14.0.ebuild    | 10 ++++++++++
 dev-lang/python/python-0.3.14.9999.ebuild | 10 ++++++++++
 dev-lang/python/python-0.3.15.9999.ebuild | 10 ++++++++++
 dev-lang/python/python-3.14.0.ebuild      | 10 ++++++++++
 dev-lang/python/python-3.14.9999.ebuild   | 10 ++++++++++
 dev-lang/python/python-3.15.9999.ebuild   | 10 ++++++++++
 6 files changed, 60 insertions(+)

diff --git a/dev-lang/python/python-0.3.14.0.ebuild 
b/dev-lang/python/python-0.3.14.0.ebuild
index df2b42ecd15e..1c94364453a7 100644
--- a/dev-lang/python/python-0.3.14.0.ebuild
+++ b/dev-lang/python/python-0.3.14.0.ebuild
@@ -86,6 +86,12 @@ BDEPEND="
        dev-build/autoconf-archive
        app-alternatives/awk
        virtual/pkgconfig
+       tail-call-interp? (
+               || (
+                       >=sys-devel/gcc-15:*
+                       >=llvm-core/clang-19:*
+               )
+       )
 "
 if [[ ${PV} != *_alpha* ]]; then
        RDEPEND+="
@@ -129,6 +135,10 @@ pkg_setup() {
                        done
                        linux-info_pkg_setup
                fi
+               if use tail-call-interp; then
+                       tc-check-min_ver gcc 15
+                       tc-check-min_ver clang 19
+               fi
        fi
 }
 

diff --git a/dev-lang/python/python-0.3.14.9999.ebuild 
b/dev-lang/python/python-0.3.14.9999.ebuild
index 9d9d70958f7a..a82f1b2c6f4b 100644
--- a/dev-lang/python/python-0.3.14.9999.ebuild
+++ b/dev-lang/python/python-0.3.14.9999.ebuild
@@ -77,6 +77,12 @@ BDEPEND="
        dev-build/autoconf-archive
        app-alternatives/awk
        virtual/pkgconfig
+       tail-call-interp? (
+               || (
+                       >=sys-devel/gcc-15:*
+                       >=llvm-core/clang-19:*
+               )
+       )
 "
 if [[ ${PV} != *_alpha* ]]; then
        RDEPEND+="
@@ -122,6 +128,10 @@ pkg_setup() {
                        done
                        linux-info_pkg_setup
                fi
+               if use tail-call-interp; then
+                       tc-check-min_ver gcc 15
+                       tc-check-min_ver clang 19
+               fi
        fi
 }
 

diff --git a/dev-lang/python/python-0.3.15.9999.ebuild 
b/dev-lang/python/python-0.3.15.9999.ebuild
index 246ae13dfe7a..126aefe73c6b 100644
--- a/dev-lang/python/python-0.3.15.9999.ebuild
+++ b/dev-lang/python/python-0.3.15.9999.ebuild
@@ -77,6 +77,12 @@ BDEPEND="
        dev-build/autoconf-archive
        app-alternatives/awk
        virtual/pkgconfig
+       tail-call-interp? (
+               || (
+                       >=sys-devel/gcc-15:*
+                       >=llvm-core/clang-19:*
+               )
+       )
 "
 PDEPEND="
        ensurepip? ( dev-python/ensurepip-pip )
@@ -117,6 +123,10 @@ pkg_setup() {
                        done
                        linux-info_pkg_setup
                fi
+               if use tail-call-interp; then
+                       tc-check-min_ver gcc 15
+                       tc-check-min_ver clang 19
+               fi
        fi
 }
 

diff --git a/dev-lang/python/python-3.14.0.ebuild 
b/dev-lang/python/python-3.14.0.ebuild
index dac8cefa2176..1ce0497e573d 100644
--- a/dev-lang/python/python-3.14.0.ebuild
+++ b/dev-lang/python/python-3.14.0.ebuild
@@ -94,6 +94,12 @@ BDEPEND="
                        llvm-core/llvm:${LLVM_SLOT}
                ')
        )
+       tail-call-interp? (
+               || (
+                       >=sys-devel/gcc-15:*
+                       >=llvm-core/clang-19:*
+               )
+       )
 "
 if [[ ${PV} != *_alpha* ]]; then
        RDEPEND+="
@@ -146,6 +152,10 @@ pkg_setup() {
                        done
                        linux-info_pkg_setup
                fi
+               if use tail-call-interp; then
+                       tc-check-min_ver gcc 15
+                       tc-check-min_ver clang 19
+               fi
        fi
 }
 

diff --git a/dev-lang/python/python-3.14.9999.ebuild 
b/dev-lang/python/python-3.14.9999.ebuild
index 6b946baf9083..f40e1772bf94 100644
--- a/dev-lang/python/python-3.14.9999.ebuild
+++ b/dev-lang/python/python-3.14.9999.ebuild
@@ -86,6 +86,12 @@ BDEPEND="
                        llvm-core/llvm:${LLVM_SLOT}
                ')
        )
+       tail-call-interp? (
+               || (
+                       >=sys-devel/gcc-15:*
+                       >=llvm-core/clang-19:*
+               )
+       )
 "
 if [[ ${PV} != *_alpha* ]]; then
        RDEPEND+="
@@ -134,6 +140,10 @@ pkg_setup() {
                        done
                        linux-info_pkg_setup
                fi
+               if use tail-call-interp; then
+                       tc-check-min_ver gcc 15
+                       tc-check-min_ver clang 19
+               fi
        fi
 }
 

diff --git a/dev-lang/python/python-3.15.9999.ebuild 
b/dev-lang/python/python-3.15.9999.ebuild
index f85907c04d29..fe95c1ff7303 100644
--- a/dev-lang/python/python-3.15.9999.ebuild
+++ b/dev-lang/python/python-3.15.9999.ebuild
@@ -86,6 +86,12 @@ BDEPEND="
                        llvm-core/llvm:${LLVM_SLOT}
                ')
        )
+       tail-call-interp? (
+               || (
+                       >=sys-devel/gcc-15:*
+                       >=llvm-core/clang-19:*
+               )
+       )
 "
 PDEPEND="
        ensurepip? ( dev-python/ensurepip-pip )
@@ -129,6 +135,10 @@ pkg_setup() {
                        done
                        linux-info_pkg_setup
                fi
+               if use tail-call-interp; then
+                       tc-check-min_ver gcc 15
+                       tc-check-min_ver clang 19
+               fi
        fi
 }
 

Reply via email to