[PATCH] fix PR target/46040, build failure on arm-linux-gnueabi

Richard Earnshaw rearnsha@arm.com
Fri Dec 10 15:44:00 GMT 2010


On Wed, 2010-12-08 at 16:31 -0500, Nathan Froyd wrote:
> The patch below implements Joseph's suggestion in:
> 
> http://gcc.gnu.org/ml/gcc-patches/2010-12/msg00619.html
> 
> for fixing the bootstrap failures seen on ARM.  I'm currently trying
> this with a cross compilation and attempting a bootstrap on an ARM
> machine; the bootstrap is progressing *very* slowly, so if anybody
> (Ulrich?) wanted to try a bootstrap on their (probably faster) machine,
> that would be appreciated.
> 
> OK to commit if testing succeeds?
> 
> -Nathan
> 
> 	PR target/46040
> 	* config.gcc (arm*-*-linux-*eabi): Adjust path to bpabi.h.
> 	(arm*-*-uclinux*eabi, arm*-*-eabi*): Likewise.
> 

So presumably the problem here is that we have two different files, both
of which have the common tail sequence arm/bpabi.h and that sometimes we
can't resolve this unambiguously.

Wouldn't it be better just to rename the one in libgcc to
arm/bpabi-lib.h (or something similar)?  Then we won't be depending so
much on the precise relative layout of the two subdirs.

R.

> diff --git a/gcc/config.gcc b/gcc/config.gcc
> index dfbf2c5..45bdc6c 100644
> --- a/gcc/config.gcc
> +++ b/gcc/config.gcc
> @@ -792,7 +792,7 @@ arm*-*-linux*)			# ARM GNU/Linux with ELF
>  	tmake_file="${tmake_file} t-linux arm/t-arm"
>  	case ${target} in
>  	arm*-*-linux-*eabi)
> -	    tm_file="$tm_file arm/bpabi.h arm/linux-eabi.h"
> +	    tm_file="$tm_file ../../gcc/config/arm/bpabi.h arm/linux-eabi.h"
>  	    tm_file="$tm_file ../../libgcc/config/arm/bpabi.h"
>  	    tmake_file="$tmake_file arm/t-arm-elf arm/t-bpabi arm/t-linux-eabi t-slibgcc-libgcc"
>  	    # Define multilib configuration for arm-linux-androideabi.
> @@ -820,7 +820,7 @@ arm*-*-uclinux*)		# ARM ucLinux
>  	tmake_file="arm/t-arm arm/t-arm-elf"
>  	case ${target} in
>  	arm*-*-uclinux*eabi)
> -	    tm_file="$tm_file arm/bpabi.h arm/uclinux-eabi.h"
> +	    tm_file="$tm_file ../../gcc/config/arm/bpabi.h arm/uclinux-eabi.h"
>  	    tm_file="$tm_file ../../libgcc/config/arm/bpabi.h"
>  	    tmake_file="$tmake_file arm/t-bpabi"
>    	    # The BPABI long long divmod functions return a 128-bit value in
> @@ -844,7 +844,8 @@ arm*-*-eabi* | arm*-*-symbianelf* )
>  	# TImode.
>  	need_64bit_hwint=yes
>  	default_use_cxa_atexit=yes
> -	tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/bpabi.h"
> +	tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h"
> +	tm_file="$tm_file ../../gcc/config/arm/bpabi.h"
>  	tm_file="$tm_file ../../libgcc/config/arm/bpabi.h"
>  	tmake_file="arm/t-arm arm/t-arm-elf"
>  	case ${target} in




More information about the Gcc-patches mailing list