On Thu, Mar 21, 2013 at 12:20:21PM +0530, Vineet Gupta wrote: > Hi, > > We do cross compile builds for ARC Linux. To avoid the env var set, we have a > defconfig entry for CONFIG_CROSS_COMPILE. > This worked fine so far (host gcc 4.4 i.e.). When switched to a new host distro > (gcc 4.7), a defconfig build spews out the warning. > > ------------------->8-------------------------- > mymake defconfig > gcc: error: unrecognized command line option '-marc600' > gcc: error: unrecognized command line option '-mA7' > gcc: error: unrecognized command line option '-mno-sdata' > gcc: error: unrecognized command line option '-mno-mpy' > *** Default configuration is based on 'fpga_defconfig' > # > # configuration written to .config > ------------------->8-------------------------- > > While the following trivial fix seems to fix this, it seems that the spew is > coming due to LIBGCC definition line, which is strange to be called for defconfig > generation. Any thoughts ? > > ----------------> > diff --git a/arch/arc/Makefile b/arch/arc/Makefile > index 4232d4e..97e6c20 100644 > --- a/arch/arc/Makefile > +++ b/arch/arc/Makefile > @@ -8,6 +8,10 @@ > > UTS_MACHINE := arc > > +ifeq ($(CROSS_COMPILE),) > +#CROSS_COMPILE := arc-elf32- > +endif > + > KBUILD_DEFCONFIG := fpga_defconfig You could try to use LIBGCC = $(shell ... for assignment. Use "=" and not ":=". Like this: -LIBGCC := $(shell $(CC) $(ARC_LIBGCC) $(cflags-y) --print-libgcc-file-name) +LIBGCC = $(shell $(CC) $(ARC_LIBGCC) $(cflags-y) --print-libgcc-file-name) This would defer the evaluation until we actually reference the variable, and thus I think it will not trigger for a defconfig build. I could not reproduce the problem here so I am not sure this has any effect though... Sam -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html