I am running into the same issue with powerpc.
I am trying to cross-compile the 3.14.49 kernel with the 3.14.49 grsecurity patches. ( grsecurity-3.1-3.14.49-201508032312.patch )
The base 3.14.49 kernel cross-compiles without error. It also boots on my target hardware.
After I applied the grsecurity patches, I get the error about a missing "compiler.h"
- Code: Select all
scripts/kconfig/conf --silentoldconfig Kconfig
CHK include/config/kernel.release
CHK include/generated/uapi/linux/version.h
CHK include/generated/utsrelease.h
CALL scripts/checksyscalls.sh
CHK include/generated/compile.h
CALL arch/powerpc/kernel/systbl_chk.sh
GZIP kernel/config_data.gz
CHK kernel/config_data.h
BOOTCC arch/powerpc/boot/gunzip_util.o
In file included from arch/powerpc/boot/gunzip_util.h:13:0,
from arch/powerpc/boot/gunzip_util.c:15:
arch/powerpc/boot/zlib.h:34:22: fatal error: compiler.h: No such file or directory
compilation terminated.
make[1]: *** [arch/powerpc/boot/gunzip_util.o] Error 1
BOOTCC arch/powerpc/boot/inffast.o
In file included from arch/powerpc/boot/zutil.h:16:0,
from arch/powerpc/boot/inffast.c:6:
arch/powerpc/boot/zlib.h:34:22: fatal error: compiler.h: No such file or directory
compilation terminated.
make[1]: *** [arch/powerpc/boot/inffast.o] Error 1
BOOTCC arch/powerpc/boot/inflate.o
In file included from arch/powerpc/boot/zutil.h:16:0,
from arch/powerpc/boot/inflate.c:12:
arch/powerpc/boot/zlib.h:34:22: fatal error: compiler.h: No such file or directory
compilation terminated.
make[1]: *** [arch/powerpc/boot/inflate.o] Error 1
BOOTCC arch/powerpc/boot/inftrees.o
In file included from arch/powerpc/boot/zutil.h:16:0,
from arch/powerpc/boot/inftrees.c:6:
arch/powerpc/boot/zlib.h:34:22: fatal error: compiler.h: No such file or directory
compilation terminated.
make[1]: *** [arch/powerpc/boot/inftrees.o] Error 1
BOOTCC arch/powerpc/boot/main.o
In file included from arch/powerpc/boot/gunzip_util.h:13:0,
from arch/powerpc/boot/main.c:18:
arch/powerpc/boot/zlib.h:34:22: fatal error: compiler.h: No such file or directory
compilation terminated.
make[1]: *** [arch/powerpc/boot/main.o] Error 1
make[1]: Target `arch/powerpc/boot/uImage' not remade because of errors.
make: *** [uImage] Error 2
I checked in the before-patch kernel code, and I found these compiler.h files:
- Code: Select all
> find . -name compiler.h
./include/linux/compiler.h
./arch/mips/include/asm/compiler.h
./arch/arm64/include/asm/compiler.h
./arch/alpha/include/asm/compiler.h
./arch/alpha/include/uapi/asm/compiler.h
./arch/arm/include/asm/compiler.h
./tools/include/linux/compiler.h
./tools/lib/lockdep/uinclude/linux/compiler.h
There is no compiler.h under arch/powerpc in the base kernel from kernel.org.