gcc 4.9 build warnings (was: Re: next build: 2674 warnings 1 failures (next/next-20141022))
Arnd Bergmann
arnd at arndb.de
Thu Nov 13 06:30:42 PST 2014
On Thursday 13 November 2014 08:19:50 Segher Boessenkool wrote:
> On Tue, Nov 11, 2014 at 10:32:23PM +0100, Arnd Bergmann wrote:
> > I've decided to investigate it further. It seems that your change to
> > 'arm-linux-eabi' did not have the intended effect.
>
> "It worked for me", i.e., it did build kernels. I don't build arm terribly
> often, does it show?
It builds most kernels, but produces extra warnings because some of the
types are different and a handful of drivers don't build if the __linux__
macro is not set. Any user ABI that depends on the size of an enum is
potentially broken.
> > What happens in gcc apparently is that the configuration logic gets confused
> > and uses this entry in gcc/config.gcc:
> >
> > arm*-*-eabi*)
> > default_use_cxa_atexit=yes
> > tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/bpabi.h"
> > tmake_file="${tmake_file} arm/t-arm arm/t-arm-elf"
> > tm_file="$tm_file newlib-stdint.h"
> > tmake_file="${tmake_file} arm/t-bpabi"
> > use_gcc_stdint=wrap
> > tm_file="${tm_file} arm/aout.h vxworks-dummy.h arm/arm.h"
> > ;;
> >
> > instead of this one:
> >
> > arm*-*-linux-*) # ARM GNU/Linux with ELF
>
> That one would match arm-unknown-linux-eabi (as it does
> arm-unknown-linux-gnueabi), not arm-linux-eabi. "triples" ;-)
Right, but config.sub thinks that is invalid.
> arm-linux-eabi canonicalises to arm-linux-eabi;
> arm-linux-gnueabi canonicalises to arm-unknown-linux-gnueabi.
Yes, that's what I found too.
Arnd
More information about the linux-arm-kernel
mailing list