diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2015-01-20 13:01:29 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2015-01-23 14:32:02 +0000 |
commit | 11ef55a93bd2bbd95e203fab3aa237322923ffd9 (patch) | |
tree | 69c6dbbe850170ae846e419eb1ef964e6769863e /meta/recipes-kernel | |
parent | 46dba263741692d64801ed425e85362fce999d06 (diff) | |
download | poky-11ef55a93bd2bbd95e203fab3aa237322923ffd9.tar.gz |
kernel/image/depmodwrapper: Fixups for depmod
With the rpm package backend enabled, running:
bitbake <image>
bitbake virtual/kernel -c clean
bitbake <image> -c rootfs -f
results in an image with incorrect kernel module dependency information.
The problem is that the System.map and kernel-abiversion files are needed
for depmod and after the recent kernel changes, these are no longer in
sstate.
Its reasonable to require the kernel to unpack/build if you're
about to build a module against it. It is not reasonable to require this
just to build a rootfs.
Therefore stash the needed files specifically for depmod.
Also fix some STAGING_KERNEL_DIR references which were incorrect, found
whilst sorting through his change.
(From OE-Core rev: b851504dcf5e147c9efb1c7b6a4d22c1a1a87cd7)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-kernel')
-rw-r--r-- | meta/recipes-kernel/kmod/depmodwrapper-cross_1.0.bb | 12 | ||||
-rw-r--r-- | meta/recipes-kernel/systemtap/systemtap-uprobes_git.bb | 2 |
2 files changed, 7 insertions, 7 deletions
diff --git a/meta/recipes-kernel/kmod/depmodwrapper-cross_1.0.bb b/meta/recipes-kernel/kmod/depmodwrapper-cross_1.0.bb index 7533809f27..83a382a2cd 100644 --- a/meta/recipes-kernel/kmod/depmodwrapper-cross_1.0.bb +++ b/meta/recipes-kernel/kmod/depmodwrapper-cross_1.0.bb | |||
@@ -19,21 +19,21 @@ if [ "\$1" != "-a" -o "\$2" != "-b" ]; then | |||
19 | echo "Usage: depmodwrapper -a -b rootfs KERNEL_VERSION" >&2 | 19 | echo "Usage: depmodwrapper -a -b rootfs KERNEL_VERSION" >&2 |
20 | exit 1 | 20 | exit 1 |
21 | fi | 21 | fi |
22 | if [ ! -r ${STAGING_KERNEL_BUILDDIR}/kernel-abiversion ]; then | 22 | if [ ! -r ${STAGING_DIR_TARGET}${datadir}/kernel-depmod/kernel-abiversion ]; then |
23 | echo "Unable to read: ${STAGING_KERNEL_BUILDDIR}/kernel-abiversion" >&2 | 23 | echo "Unable to read: ${STAGING_DIR_TARGET}${datadir}/kernel-depmod/kernel-abiversion" >&2 |
24 | else | 24 | else |
25 | kernelabi=\$(cat ${STAGING_KERNEL_BUILDDIR}/kernel-abiversion) | 25 | kernelabi=\$(cat ${STAGING_DIR_TARGET}${datadir}/kernel-depmod/kernel-abiversion) |
26 | if [ "\$kernelabi" != "\$4" ]; then | 26 | if [ "\$kernelabi" != "\$4" ]; then |
27 | echo "Error: Kernel version \$4 does not match kernel-abiversion (\$kernelabi)" >&2 | 27 | echo "Error: Kernel version \$4 does not match kernel-abiversion (\$kernelabi)" >&2 |
28 | exit 1 | 28 | exit 1 |
29 | fi | 29 | fi |
30 | fi | 30 | fi |
31 | 31 | ||
32 | if [ ! -r ${STAGING_KERNEL_BUILDDIR}/System.map-\$4 ]; then | 32 | if [ ! -r ${STAGING_DIR_TARHET}${datadir}/kernel-depmod/System.map-\$4 ]; then |
33 | echo "Unable to read: ${STAGING_KERNEL_BUILDDIR}/System.map-\$4" >&2 | 33 | echo "Unable to read: ${STAGING_DIR_TARGET}${datadir}/kernel-depmod/System.map-\$4" >&2 |
34 | exec env depmod "\$1" "\$2" "\$3" "\$4" | 34 | exec env depmod "\$1" "\$2" "\$3" "\$4" |
35 | else | 35 | else |
36 | exec env depmod "\$1" "\$2" "\$3" -F "${STAGING_KERNEL_BUILDDIR}/System.map-\$4" "\$4" | 36 | exec env depmod "\$1" "\$2" "\$3" -F "${STAGING_DIR_TARGET}${datadir}/kernel-depmod/System.map-\$4" "\$4" |
37 | fi | 37 | fi |
38 | EOF | 38 | EOF |
39 | chmod +x ${D}${bindir_crossscripts}/depmodwrapper | 39 | chmod +x ${D}${bindir_crossscripts}/depmodwrapper |
diff --git a/meta/recipes-kernel/systemtap/systemtap-uprobes_git.bb b/meta/recipes-kernel/systemtap/systemtap-uprobes_git.bb index 4d2bec4714..758908bff9 100644 --- a/meta/recipes-kernel/systemtap/systemtap-uprobes_git.bb +++ b/meta/recipes-kernel/systemtap/systemtap-uprobes_git.bb | |||
@@ -21,7 +21,7 @@ EXTRA_OEMAKE = "" | |||
21 | # support. Note that staprun expects it in the systemtap/runtime directory, | 21 | # support. Note that staprun expects it in the systemtap/runtime directory, |
22 | # not in /lib/modules. | 22 | # not in /lib/modules. |
23 | do_compile() { | 23 | do_compile() { |
24 | if grep -q "CONFIG_UTRACE=y" ${STAGING_KERNEL_DIR}/.config | 24 | if grep -q "CONFIG_UTRACE=y" ${STAGING_KERNEL_BUILDDIR}/.config |
25 | then | 25 | then |
26 | unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS CC LD CPP | 26 | unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS CC LD CPP |
27 | oe_runmake CC="${KERNEL_CC}" LD="${KERNEL_LD}" \ | 27 | oe_runmake CC="${KERNEL_CC}" LD="${KERNEL_LD}" \ |