[OE-core] [PATCH 3/4] kernel: Add kernel-headers package for target module build

Khem Raj raj.khem at gmail.com
Fri Jun 29 04:52:50 UTC 2012


On Thu, Jun 28, 2012 at 9:18 PM, Darren Hart <dvhart at linux.intel.com> wrote:
> [YOCTO #1614]
>
> Add a kernel-headers package to kernel.bbclass. This packages
> effectively 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-headers.
>
> Before use on the target, the user will need to:
>
>    # cd /usr/src/kernel-headers
>    # make scripts
>

IMO using kernel-headers may not be representing the package contents
correctly since I believe it contains more than headers. Its probably
kernel-dev or external-lkm-dev or somesuch.

> Signed-off-by: Darren Hart <dvhart at linux.intel.com>
> CC: Bruce Ashfield <bruce.ashfield at windriver.com>
> CC: Tom Zanussi <tom.zanussi at intel.com>
> CC: Khem Raj <raj.khem at gmail.com>
> ---
>  meta/classes/kernel.bbclass |   11 +++++++----
>  meta/conf/bitbake.conf      |    2 +-
>  2 files changed, 8 insertions(+), 5 deletions(-)
>
> diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass
> index 31e633b..b82af74 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-headers
>        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,15 @@ 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 \
> +            kernel-misc kernel-headers"
>  FILES = ""
>  FILES_kernel-image = "/boot/${KERNEL_IMAGETYPE}*"
>  FILES_kernel-dev = "/boot/System.map* /boot/Module.symvers* /boot/config*"
>  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"
> +FILES_kernel-headers = "/usr/src/kernel-headers"
>  RDEPENDS_kernel = "kernel-base"
>  # Allow machines to override this dependency if kernel image files are
>  # not wanted in images as standard
> diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
> index 9b26580..9f3abee 100644
> --- a/meta/conf/bitbake.conf
> +++ b/meta/conf/bitbake.conf
> @@ -380,7 +380,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-headers"
>
>  ##################################################################
>  # Specific image creation and rootfs population info.
> --
> 1.7.10.2
>




More information about the Openembedded-core mailing list