kexec-tools: fix recompile error
Fixed: NOTE: make -j 32 make: *** No rule to make target `/path/to/sysroot/4.9.0/include/stddef.h', needed by `kexec/kexec.o'. Stop. This happens when upgrade gcc from 4.9.0 to 4.9.1, and the kexec/kexec.d isn't regenerated when recompile, the content of it are: [snip] kexec/kexec.o: /path/to/sysroot/4.9.0/include/stddef.h [snip] And Makefile includes the kexec/kexec.d file if it exists, so there would be errors when /path/to/sysroot/4.9.0/include/stddef.h doesn't exist. Remove kexec/kexec.d and other similar files will fix the problem. (From OE-Core rev: 674e14555e6912453a96747ff017f49ac9350a52) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
866070c78a
commit
78e127d436
|
@ -15,3 +15,14 @@ inherit autotools-brokensep
|
|||
COMPATIBLE_HOST = '(x86_64.*|i.86.*|arm.*|powerpc.*|mips.*)-(linux|freebsd.*)'
|
||||
|
||||
INSANE_SKIP_${PN} = "arch"
|
||||
|
||||
do_compile_prepend() {
|
||||
# Remove the '*.d' file to make sure the recompile is OK
|
||||
for dep in `find ${B} -type f -name '*.d'`; do
|
||||
dep_no_d="`echo $dep | sed 's#.d$##'`"
|
||||
# Remove file.d when there is a file.o
|
||||
if [ -f "$dep_no_d.o" ]; then
|
||||
rm -f $dep
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue