Re: [PATCH] m32r: set CHECKFLAGS properly

Al Viro
2005-09-27T16:35:01Z

On Tue, Sep 27, 2005 at 11:13:44AM -0400, Kyle Moffett wrote:
> On Sep 27, 2005, at 03:10:25, Al Viro wrote:
> >You do realize that this way sparse will get neither? It does not
> >pick predefined symbols from gcc; thus the -D<your_arch>, etc.
>
> How about sticking this in some global Makefile somewhere? This will
> give sparse the same list of defines that GCC uses:
>
> CHECKFLAGS += $(shell echo | gcc -E - -dM | sed -re 's/^#define +([^ ]
> +) +(.*)$/-D\1=\2/g')
>
> Or you could do this:
>
> include/linux/checkerdefines.h:
> echo | gcc -E - -dM >$@

*Hell*, no.
1) any use of cross-gcc is immediately b0rken
2) anything like building i386 on amd64 (native toolchain, -m32
in arguments) is b0rken
3) way, way, *WAY* too much spew. gcc pre-defines shitloads of
stuff and some of that stuff very definitely should not be there for sparse.

IOW, it's not that simple. You need final CC, CFLAGS and CPPFLAGS for
that. Moreover, your variant won't do at all - change .config and you
might need to rebuild that file on biarch platforms (parisc and s390 at
the very least; ppc/ppc64 are also moving in that direction).