[PATCH][GCC] arm: Fix inclusion of arm-mlib.h header more than once (pr108505).

Richard Earnshaw Richard.Earnshaw@foss.arm.com
Tue Jan 24 10:48:06 GMT 2023



On 24/01/2023 09:55, Srinath Parvathaneni via Gcc-patches wrote:
> Hello,
> 
> The patch fixes the build issue for arm-none-eabi target configured with
> --with-multilib-list=aprofile,rmprofile, in which case the header file
> arm/arm-mlib.h is being included more than once and the toolchain build
> is failing (PR108505).
> 
> Regression tested on arm-none-eabi target and found no regressions.
> 
> Ok for master?
> 
> Regards,
> Srinath.
> 
> gcc/ChangeLog:
> 
> 2023-01-24  Srinath Parvathaneni  <srinath.parvathaneni@arm.com>
> 
>          PR target/108505
>          * config.gcc (tm_file): Move the variable out of loop.
> 
> 
> ###############     Attachment also inlined for ease of reply    ###############
> 
>

A more robust fix would be:


> diff --git a/gcc/config.gcc b/gcc/config.gcc
> index 771bd35e803b47e79c0a62eab8f4845e9bbf96ef..d828223c16d3076da0ab6582dfaf59ad657ea438 100644
> --- a/gcc/config.gcc
> +++ b/gcc/config.gcc
> @@ -4350,7 +4350,6 @@ case "${target}" in
>   					case ${arm_multilib} in
>   					aprofile|rmprofile)
>   						tmake_profile_file="arm/t-multilib"
> -						tm_file="$tm_file arm/arm-mlib.h"
						tm_mlib_file="arm/arm-mlib.h"
>   						;;
>   					@*)
>   						ml=`echo "X$arm_multilib" | sed '1s,^X@,,'`
> @@ -4389,6 +4388,7 @@ case "${target}" in
>   				# through to the multilib selector
>   				with_float="soft"
>   				tmake_file="${tmake_file} ${tmake_profile_file}"
> +				tm_file="$tm_file arm/arm-mlib.h"
				tm_file="$tm_file $tm_mlib_file"

>   				TM_MULTILIB_CONFIG="$with_multilib_list"
>   			fi
>   		fi
> 
> 
> 

Then if we ever need to add additional alternative multilib variants we 
can control the selection separately.

R.


More information about the Gcc-patches mailing list