diff options
| author | Robert Yang <liezhi.yang@windriver.com> | 2014-08-06 20:05:22 -0700 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-08-11 10:53:06 +0100 |
| commit | 78e127d4366f1c0fca66846cc7ab4303114da794 (patch) | |
| tree | 56555927e8a6d56684b119179deae739966d9ea2 | |
| parent | 866070c78a396f8d394155cfb8845d84aab198f0 (diff) | |
| download | poky-78e127d4366f1c0fca66846cc7ab4303114da794.tar.gz | |
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>
| -rw-r--r-- | meta/recipes-kernel/kexec/kexec-tools.inc | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/meta/recipes-kernel/kexec/kexec-tools.inc b/meta/recipes-kernel/kexec/kexec-tools.inc index 50b448caed..7e3b7adfc7 100644 --- a/meta/recipes-kernel/kexec/kexec-tools.inc +++ b/meta/recipes-kernel/kexec/kexec-tools.inc | |||
| @@ -15,3 +15,14 @@ inherit autotools-brokensep | |||
| 15 | COMPATIBLE_HOST = '(x86_64.*|i.86.*|arm.*|powerpc.*|mips.*)-(linux|freebsd.*)' | 15 | COMPATIBLE_HOST = '(x86_64.*|i.86.*|arm.*|powerpc.*|mips.*)-(linux|freebsd.*)' |
| 16 | 16 | ||
| 17 | INSANE_SKIP_${PN} = "arch" | 17 | INSANE_SKIP_${PN} = "arch" |
| 18 | |||
| 19 | do_compile_prepend() { | ||
| 20 | # Remove the '*.d' file to make sure the recompile is OK | ||
| 21 | for dep in `find ${B} -type f -name '*.d'`; do | ||
| 22 | dep_no_d="`echo $dep | sed 's#.d$##'`" | ||
| 23 | # Remove file.d when there is a file.o | ||
| 24 | if [ -f "$dep_no_d.o" ]; then | ||
| 25 | rm -f $dep | ||
| 26 | fi | ||
| 27 | done | ||
| 28 | } | ||
