[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gentoo-dev
Subject:    Re: [gentoo-dev] Subject: [PATCH] toolchain.eclass: ada related changes
From:       Sam James <sam () gentoo ! org>
Date:       2024-04-25 12:02:51
Message-ID: 87r0ethcpg.fsf () gentoo ! org
[Download RAW message or body]

Alfredo Tupone <tupone@gentoo.org> writes:

> Having received no comments, I would like to add this changes to
> toolchain.eclass
>
> This is less intrusive.
>
> The compiler check that was in place in the original email maybe is
> distruptive. It was checking that the used compiler is ada and version
> is less or equal.
>
> I saw that some gcc versions can be build with a newer compiler. IIRC
> gcc-13 can build gcc-12 but gcc-11 cannot be built with gcc-12
>
>

I don't really get the point in this change, though, if it's purely
the diff quoted below. I don't see a commit message either.

Please send another version with `git-send-email` with a full commit
message to explain what you're doing here and why?

(added missing toolchain@ CC too)

> diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
> index a5d4345e7fbf..23c57353d702 100644
> --- a/eclass/toolchain.eclass
> +++ b/eclass/toolchain.eclass
> @@ -288,38 +288,38 @@ if [[ ${PN} != kgcc64 && ${PN} != gcc-* ]] ; then
>  	IUSE+=" objc-gc" TC_FEATURES+=( objc-gc )
>  	IUSE+=" libssp objc++"
>  
>  	# Stop forcing openmp on by default in the eclass. Gradually phase it out.
>  	# See bug #890999.
>  	if tc_version_is_at_least 13.0.0_pre20221218 ; then
>  		IUSE+=" openmp"
>  	else
>  		IUSE+=" +openmp"
>  	fi
>  
>  	IUSE+=" fixed-point"
>  	IUSE+=" go"
>  	IUSE+=" +sanitize"  TC_FEATURES+=( sanitize )
>  	IUSE+=" graphite" TC_FEATURES+=( graphite )
> -	IUSE+=" ada"
>  	IUSE+=" vtv"
>  	IUSE+=" jit"
>  	IUSE+=" +pie +ssp pch"
>  
>  	IUSE+=" systemtap" TC_FEATURES+=( systemtap )
>  
>  	tc_version_is_at_least 9.0 && IUSE+=" d" TC_FEATURES+=( d )
> +	tc_version_is_at_least 9.0 && IUSE+=" ada" TC_FEATURES+=( ada )
>  	tc_version_is_at_least 9.1 && IUSE+=" lto"
>  	tc_version_is_at_least 10 && IUSE+=" cet"
>  	tc_version_is_at_least 10 && IUSE+=" zstd" TC_FEATURES+=( zstd )
>  	tc_version_is_at_least 11 && IUSE+=" valgrind" TC_FEATURES+=( valgrind )
>  	tc_version_is_at_least 11 && IUSE+=" custom-cflags"
>  	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_pre20221218 ${PV} && IUSE+=" modula2"
>  	# See https://gcc.gnu.org/pipermail/gcc-patches/2023-April/615944.html
>  	# and https://rust-gcc.github.io/2023/04/24/gccrs-and-gcc13-release.html for why
>  	# it was disabled in 13.
>  	tc_version_is_at_least 14.0.0_pre20230423 ${PV} && IUSE+=" rust"
>  fi
>  
> @@ -2495,31 +2495,31 @@ should_we_gcc_config() {
>  #
>  # Also add a hook so special ebuilds (kgcc64) can control which languages
>  # exactly get enabled
>  gcc-lang-supported() {
>  	grep ^language=\"${1}\" "${S}"/gcc/*/config-lang.in > /dev/null || return 1
>  	[[ -z ${TOOLCHAIN_ALLOWED_LANGS} ]] && return 0
>  	has $1 ${TOOLCHAIN_ALLOWED_LANGS}
>  }
>  
>  _tc_use_if_iuse() {
>  	in_iuse $1 && use $1
>  }
>  
>  is_ada() {
>  	gcc-lang-supported ada || return 1
> -	_tc_use_if_iuse ada
> +	_tc_use_if_iuse cxx && _tc_use_if_iuse ada
>  }
>  
>  is_cxx() {
>  	gcc-lang-supported 'c++' || return 1
>  	_tc_use_if_iuse cxx
>  }
>  
>  is_d() {
>  	gcc-lang-supported d || return 1
>  	_tc_use_if_iuse d
>  }
>  
>  is_f77() {
>  	gcc-lang-supported f77 || return 1
>  	_tc_use_if_iuse fortran

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic