[OE-core] [oe] [kernel.bbclass] [PATCH] let the multi-version kernel header files coexist on the target

fupan fupan.li at windriver.com
Tue Aug 19 03:28:47 UTC 2014


On 08/19/2014 11:18 AM, fupan.li at windriver.com wrote:
> From: fupan li <fupan.li at windriver.com>
Hi, All

Please ignore this patch, I'll send another one!

Thanks
> When do RCPL upgrading, we want to keep the different RCPL's kernel header files coexist, just
> as the kernel image does.
>
> Signed-off-by: fupan li <fupan.li at windriver.com>
> ---
>   meta/classes/kernel.bbclass | 18 ++++++++++++++----
>   1 file changed, 14 insertions(+), 4 deletions(-)
>
> diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass
> index 6d9e646..e6ed716 100644
> --- a/meta/classes/kernel.bbclass
> +++ b/meta/classes/kernel.bbclass
> @@ -75,9 +75,11 @@ 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"
> +# Define where the kernel headers are staged.
> +KERNEL_SRC_EXPORT_PATH = "/usr/src/kernel"
> +#put the kernel headers in /usr/src/kernel-${@legitimize_package_name('${KERNEL_VERSION}')} to
> +#let the different RCPL's kernel headers coexist.
> +KERNEL_SRC_PATH = "/usr/src/kernel-${@legitimize_package_name('${KERNEL_VERSION}')}"
>   
>   KERNEL_IMAGETYPE_FOR_MAKE = "${@(lambda s: s[:-3] if s[-3:] == ".gz" else s)(d.getVar('KERNEL_IMAGETYPE', True))}"
>   
> @@ -313,7 +315,7 @@ kernelscripts_sstate_postinst () {
>   }
>   
>   sysroot_stage_all_append() {
> -	sysroot_stage_dir ${D}${KERNEL_SRC_PATH} ${SYSROOT_DESTDIR}${KERNEL_SRC_PATH}
> +	sysroot_stage_dir ${D}${KERNEL_SRC_PATH} ${SYSROOT_DESTDIR}${KERNEL_SRC_EXPORT_PATH}
>   }
>   
>   kernel_do_configure() {
> @@ -386,6 +388,14 @@ pkg_postrm_kernel-image () {
>   	update-alternatives --remove ${KERNEL_IMAGETYPE} ${KERNEL_IMAGETYPE}-${KERNEL_VERSION} || true
>   }
>   
> +pkg_postinst_kernel-dev () {
> +        update-alternatives --install ${KERNEL_SRC_EXPORT_PATH} kernel-path kernel-${@legitimize_package_name('${KERNEL_VERSION}')} ${KERNEL_PRIORITY} || true
> +}
> +
> +pkg_postrm_kernel-dev () {
> +        update-alternatives --remove kernel-path kernel-${@legitimize_package_name('${KERNEL_VERSION}')} || true
> +}
> +
>   PACKAGESPLITFUNCS_prepend = "split_kernel_packages "
>   
>   python split_kernel_packages () {




More information about the Openembedded-core mailing list