[OE-core] [PATCH v2] kernel.bbclass: Create symbolic link to add ${KERNEL_IMAGETYPE} to boot package
Mark Hatle
mark.hatle at windriver.com
Tue Aug 20 18:48:01 UTC 2013
On 8/20/13 1:45 PM, Franklin S. Cooper Jr wrote:
> * By default for some platforms U-boot assumes the kernel image is located in
> the boot directory of the root filesystem.
> * The kernel.bbclass already includes the kernel image in the /boot directory
> but adds a version number to the file name.
> * Create a symbolic link that names the kernel image in the exact way that
> U-boot expects.
This should be done with a package post-install script. It is fairly common for
multilib kernel versions to be installed on a machine at the same time, with the
Link pointing to the 'last-installed' version. Doing it in the do_install rule
will cause a conflict (at least in the RPM case), preventing certain field
upgrade activities.
post install script with something like:
ln -sf $D/boot/<kernel_name> <common-name>
Should work.
(The above assumes that the kernel itself is being packaged.. if it's not being
packages and just copied to the end image -- then doing the link should be fine.)
--Mark
> Signed-off-by: Franklin S. Cooper Jr <fcooper at ti.com>
> ---
> Version 2 changes:
> Change "ln -s" to "ln -sf" based on Bruce's comment.
>
> meta/classes/kernel.bbclass | 1 +
> 1 files changed, 1 insertions(+), 0 deletions(-)
>
> diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass
> index e039dfc..6e7d994 100644
> --- a/meta/classes/kernel.bbclass
> +++ b/meta/classes/kernel.bbclass
> @@ -109,6 +109,7 @@ kernel_do_install() {
> install -d ${D}/${KERNEL_IMAGEDEST}
> install -d ${D}/boot
> install -m 0644 ${KERNEL_OUTPUT} ${D}/${KERNEL_IMAGEDEST}/${KERNEL_IMAGETYPE}-${KERNEL_VERSION}
> + ln -sf ${D}/${KERNEL_IMAGEDEST}/${KERNEL_IMAGETYPE}-${KERNEL_VERSION} ${D}/${KERNEL_IMAGEDEST}/${KERNEL_IMAGETYPE}
> install -m 0644 System.map ${D}/boot/System.map-${KERNEL_VERSION}
> install -m 0644 .config ${D}/boot/config-${KERNEL_VERSION}
> install -m 0644 vmlinux ${D}/boot/vmlinux-${KERNEL_VERSION}
>
More information about the Openembedded-core
mailing list