• Aaro Koskinen's avatar
    MIPS: Fix build with C=1 · 08fa624f
    Aaro Koskinen authored
    When trying to compile the 3.1-rc10 kernel for my MIPS board with C=1
    (sparse checking), the build fails early with the error:
    
    	  CHK     include/linux/version.h
    	  UPD     include/linux/version.h
    	  CHK     include/generated/utsrelease.h
    	  UPD     include/generated/utsrelease.h
    	  Checking missing-syscalls for N32
    	  CALL    scripts/checksyscalls.sh
    	  Checking missing-syscalls for O32
    	  CALL    scripts/checksyscalls.sh
    	  CC      kernel/bounds.s
    	  GEN     include/generated/bounds.h
    	  CC      arch/mips/kernel/asm-offsets.s
    	  GEN     include/generated/asm-offsets.h
    	  CALL    scripts/checksyscalls.sh
    	  HOSTCC  scripts/genksyms/genksyms.o
    	  SHIPPED scripts/genksyms/lex.lex.c
    	  SHIPPED scripts/genksyms/keywords.hash.c
    	  SHIPPED scripts/genksyms/parse.tab.h
    	  HOSTCC  scripts/genksyms/lex.lex.o
    	  SHIPPED scripts/genksyms/parse.tab.c
    	  HOSTCC  scripts/genksyms/parse.tab.o
    	  HOSTLD  scripts/genksyms/genksyms
    	/bin/sh: Syntax error: "(" unexpected
    	make[3]: *** [scripts/mod/empty.o] Error 2
    	make[2]: *** [scripts/mod] Error 2
    	make[1]: *** [scripts] Error 2
    
    It seems the shell chokes because sparse is called with command line
    arguments such as:
    
    	-D__INT8_C(c)='c'
    
    Converting these to form:
    
    	-D'__INT8_C(c)'='c'
    
    seems to fix the problem.
    
    [ralf@linux-mips.org: This affects builds with gcc 4.5 and newer.]
    Signed-off-by: default avatarAaro Koskinen <aaro.koskinen@iki.fi>
    Cc: linux-kernel@vger.kernel.org
    Patchwork: https://patchwork.linux-mips.org/patch/2827/Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
    08fa624f
Makefile 10.3 KB