[oe] [meta-oe][for-denzil][PATCH 3/8] kernel: Add kernel headers to kernel-dev package

McClintock Matthew-B29882 B29882 at freescale.com
Thu Sep 6 16:43:45 UTC 2012


On Thu, Sep 6, 2012 at 6:23 AM, Koen Kooi <koen at dominion.thruhere.net> wrote:
> From: Darren Hart <dvhart at linux.intel.com>
>
> [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.
>
> As we use /usr/src/kernel in several places (and I missed one in the
> previous version), add a KERNEL_SRC_DIR variable and use that throughout
> the class to avoid update errors in the future.
>
> Now that we package the kernel headers, drop the
> kernel_package_preprocess function which removed them from PKGD.
>
> All *-sdk image recipes include dev-pkgs, so the kernel-dev package will
> be installed by default on all such images.
>
> 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>
> Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
> Signed-off-by: Koen Kooi <koen at dominion.thruhere.net>

Why did you resent this? Are there changes or by accident? Just asking
before I make a patch for denzil with my previous fix.

-M


> ---
>  meta-oe/classes/kernel.bbclass |   27 ++++++++++++---------------
>  1 files changed, 12 insertions(+), 15 deletions(-)
>
> diff --git a/meta-oe/classes/kernel.bbclass b/meta-oe/classes/kernel.bbclass
> index 6f1b6a4..d7e42f6 100644
> --- a/meta-oe/classes/kernel.bbclass
> +++ b/meta-oe/classes/kernel.bbclass
> @@ -82,6 +82,10 @@ EXTRA_OEMAKE = ""
>
>  KERNEL_ALT_IMAGETYPE ??= ""
>
> +# Define where the kernel headers are installed on the target as well as where
> +# they are staged.
> +KERNEL_SRC_PATH = "/usr/src/kernel"
> +
>  KERNEL_IMAGETYPE_FOR_MAKE = "${@(lambda s: s[:-3] if s[-3:] == ".gz" else s)(d.getVar('KERNEL_IMAGETYPE', True))}"
>
>  kernel_do_compile() {
> @@ -135,7 +139,7 @@ kernel_do_install() {
>         # Support for external module building - create a minimal copy of the
>         # kernel source tree.
>         #
> -       kerneldir=${D}/kernel
> +       kerneldir=${D}${KERNEL_SRC_PATH}
>         install -d $kerneldir
>
>         #
> @@ -188,23 +192,18 @@ 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
>  }
>
> -PACKAGE_PREPROCESS_FUNCS += "kernel_package_preprocess"
> -
> -kernel_package_preprocess () {
> -       rm -rf ${PKGD}/kernel
> -}
> -
>  sysroot_stage_all_append() {
> -       sysroot_stage_dir ${D}/kernel ${SYSROOT_DESTDIR}/kernel
> +       sysroot_stage_dir ${D}${KERNEL_SRC_PATH} ${SYSROOT_DESTDIR}${KERNEL_SRC_PATH}
>  }
>
>  kernel_do_configure() {
> @@ -252,13 +251,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* ${KERNEL_SRC_PATH}"
>  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
> @@ -475,7 +472,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))
> --
> 1.7.7.6
>
>
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel




More information about the Openembedded-devel mailing list