From mboxrd@z Thu Jan 1 00:00:00 1970 From: Luc Van Oostenryck Subject: Re: Conflict between sparse and commit cafa0010cd51f ("Raise the minimum required gcc version to 4.6") Date: Mon, 10 Sep 2018 13:34:49 +0200 Message-ID: <20180910113448.dxnfvznyimtj3tkv@ltop.local> References: <81a5fd11-366c-0897-4143-d8d041420a41@c-s.fr> <1324e7d6-83f8-f40f-ad34-c46e4ad3139b@c-s.fr> <20180907181337.peyfq7yvhahduvmq@ltop.local> <20180910092835.v5nex5nzfgtl475m@ltop.local> <061b3056-1a9a-af6b-de2a-49fea394320d@c-s.fr> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Content-Disposition: inline In-Reply-To: <061b3056-1a9a-af6b-de2a-49fea394320d@c-s.fr> Sender: linux-kernel-owner@vger.kernel.org To: Christophe Leroy Cc: Nick Desaulniers , joe@perches.com, Kees Cook , LKML , linux-sparse@vger.kernel.org, sparse@chrisli.org, linuxppc-dev@lists.ozlabs.org List-Id: linux-sparse@vger.kernel.org On Mon, Sep 10, 2018 at 09:56:33AM +0000, Christophe Leroy wrote: > > # export REAL_CC=ppc-linux-gcc > # make CHECK="cgcc -target=ppc -D_CALL_ELF=2 -D__GCC__=5 > -D__GCC_MINOR__=4" C=2 arch/powerpc/kernel/process.o > scripts/kconfig/conf --syncconfig Kconfig > # > # configuration written to .config > # > UPD include/config/kernel.release > UPD include/generated/utsrelease.h > CC kernel/bounds.s > CC arch/powerpc/kernel/asm-offsets.s > CALL scripts/checksyscalls.sh > CHECK scripts/mod/empty.c > Can't exec "/bin/sh": Argument list too long at /usr/local/bin/cgcc line 86. > make[2]: *** [scripts/mod/empty.o] Error 1 > make[1]: *** [scripts/mod] Error 2 > make: *** [scripts] Error 2 OK. Clearly nobody has ever used it so :( There is an infinite loop because cgcc use the env var CHECK to call sparse while kbuild use CHECK to call cgcc here. The following seems to work here. $ export REAL_CC=ppc-linux-gcc $ make CHECK="CHECK=sparse cgcc -target=ppc ... It's a bit kludgy, I admit. -- Luc