[YOCTO #1614]

Add the kernel headers to the kernel-dev package. This packages what was
already built and kept in sysroots for building modules with bitbake.
Making this available on the target requires removing some additional
host binaries.

Move the location to /usr/src/kernel

Before use on the target, the user will need to:

    # cd /usr/src/kernel
    # make scripts

This renders the kernel-misc recipe empty, so remove it.

Signed-off-by: Darren Hart <[email protected]>
Acked-by: Bruce Ashfield <[email protected]>
CC: Tom Zanussi <[email protected]>
CC: Khem Raj <[email protected]>
---
 meta/classes/kernel.bbclass |   15 +++++++--------
 meta/conf/bitbake.conf      |    2 +-
 2 files changed, 8 insertions(+), 9 deletions(-)

diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass
index 31e633b..27e0033 100644
--- a/meta/classes/kernel.bbclass
+++ b/meta/classes/kernel.bbclass
@@ -130,7 +130,7 @@ kernel_do_install() {
        # Support for external module building - create a minimal copy of the
        # kernel source tree.
        #
-       kerneldir=${D}/kernel
+       kerneldir=${D}/usr/src/kernel
        install -d $kerneldir
 
        #
@@ -183,10 +183,11 @@ kernel_do_install() {
                cp arch/powerpc/lib/crtsavres.o 
$kerneldir/arch/powerpc/lib/crtsavres.o
        fi
 
-       # Remove the following binaries which cause strip errors
+       # Remove the following binaries which cause strip or arch QA errors
        # during do_package for cross-compiled platforms
        bin_files="arch/powerpc/boot/addnote arch/powerpc/boot/hack-coff \
-                  arch/powerpc/boot/mktree"
+                  arch/powerpc/boot/mktree scripts/kconfig/zconf.tab.o \
+                  scripts/kconfig/conf.o"
        for entry in $bin_files; do
                rm -f $kerneldir/$entry
        done
@@ -247,13 +248,11 @@ EXPORT_FUNCTIONS do_compile do_install do_configure
 
 # kernel-base becomes kernel-${KERNEL_VERSION}
 # kernel-image becomes kernel-image-${KERNEL_VERISON}
-PACKAGES = "kernel kernel-base kernel-vmlinux kernel-image kernel-dev 
kernel-misc"
+PACKAGES = "kernel kernel-base kernel-vmlinux kernel-image kernel-dev"
 FILES = ""
 FILES_kernel-image = "/boot/${KERNEL_IMAGETYPE}*"
-FILES_kernel-dev = "/boot/System.map* /boot/Module.symvers* /boot/config*"
+FILES_kernel-dev = "/boot/System.map* /boot/Module.symvers* /boot/config* 
/usr/src/kernel"
 FILES_kernel-vmlinux = "/boot/vmlinux*"
-# misc is a package to contain files we need in staging
-FILES_kernel-misc = "/kernel/include/config /kernel/scripts 
/kernel/drivers/crypto /kernel/drivers/media"
 RDEPENDS_kernel = "kernel-base"
 # Allow machines to override this dependency if kernel image files are 
 # not wanted in images as standard
@@ -469,7 +468,7 @@ python populate_packages_prepend () {
        metapkg = "kernel-modules"
        d.setVar('ALLOW_EMPTY_' + metapkg, "1")
        d.setVar('FILES_' + metapkg, "")
-       blacklist = [ 'kernel-dev', 'kernel-image', 'kernel-base', 
'kernel-vmlinux', 'kernel-misc' ]
+       blacklist = [ 'kernel-dev', 'kernel-image', 'kernel-base', 
'kernel-vmlinux' ]
        for l in module_deps.values():
                for i in l:
                        pkg = module_pattern % 
legitimize_package_name(re.match(module_regex, os.path.basename(i)).group(1))
diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
index 9377ee6..7e3de09 100644
--- a/meta/conf/bitbake.conf
+++ b/meta/conf/bitbake.conf
@@ -381,7 +381,7 @@ SDKPATHNATIVE = "${SDKPATH}/sysroots/${SDK_SYS}"
 ##################################################################
 
 OLDEST_KERNEL = "2.6.16"
-STAGING_KERNEL_DIR = "${STAGING_DIR_HOST}/kernel"
+STAGING_KERNEL_DIR = "${STAGING_DIR_HOST}/usr/src/kernel"
 
 ##################################################################
 # Specific image creation and rootfs population info.
-- 
1.7.10.2


_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

Reply via email to