summaryrefslogtreecommitdiff
path: root/eclass/toolchain.eclass
diff options
context:
space:
mode:
Diffstat (limited to 'eclass/toolchain.eclass')
-rw-r--r--eclass/toolchain.eclass9
1 files changed, 8 insertions, 1 deletions
diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 66cf8e88f9b2..ba83cad72cb2 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -280,7 +280,8 @@ if [[ ${PN} != kgcc64 && ${PN} != gcc-* ]] ; then
tc_version_is_at_least 12 && IUSE+=" ieee-long-double"
tc_version_is_at_least 12.2.1_p20221203 ${PV} && IUSE+=" default-znow"
tc_version_is_at_least 12.2.1_p20221203 ${PV} && IUSE+=" default-stack-clash-protection"
- tc_version_is_at_least 13.0.0_pre20221211 ${PV} && IUSE+=" rust"
+ tc_version_is_at_least 13.0.0_pre20221218 ${PV} && IUSE+=" modula2"
+ tc_version_is_at_least 14.0.0_pre20230423 ${PV} && IUSE+=" rust"
fi
if tc_version_is_at_least 10; then
@@ -1045,6 +1046,7 @@ toolchain_src_configure() {
is_f77 && GCC_LANG+=",f77"
is_f95 && GCC_LANG+=",f95"
is_ada && GCC_LANG+=",ada"
+ is_modula2 && GCC_LANG+=",m2"
is_rust && GCC_LANG+=",rust"
confgcc+=( --enable-languages=${GCC_LANG} )
@@ -2744,6 +2746,11 @@ is_objcxx() {
_tc_use_if_iuse cxx && _tc_use_if_iuse objc++
}
+is_modula2() {
+ gcc-lang-supported m2 || return 1
+ _tc_use_if_iuse cxx && _tc_use_if_iuse modula2
+}
+
is_rust() {
gcc-lang-supported rust || return 1
_tc_use_if_iuse rust