[OE-core] [PATCH] kernel.bbclass: Fix empty modules directory QA issue
Robert Yang
liezhi.yang at windriver.com
Mon Jan 13 08:45:26 UTC 2014
On 01/13/2014 04:33 PM, Nathan Rossi wrote:
> If a kernel is built without any external modules (aka no CONFIG_*=m),
> then during a modules_install of the kernel an empty directory is
> created at /lib/modules/${KERNEL_VERIONS}/kernel. This is behaviour of
> the kernel infrastructure, the directory would normally be populated
> with the modules that were built.
>
> However because of the expectations of kernel-modules-split, no packages
> are created when there are no modules and an empty directory lingers.
> This raises QA issues as warning or errors (depending on the distro).
>
> The following patch changes the kernel_do_install task to check if the
> directory is empty and if so removes it.
>
> Signed-off-by: Nathan Rossi <nathan.rossi at xilinx.com>
> ---
> meta/classes/kernel.bbclass | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass
> index 5fef446..6b4e992 100644
> --- a/meta/classes/kernel.bbclass
> +++ b/meta/classes/kernel.bbclass
> @@ -183,6 +183,10 @@ kernel_do_install() {
> oe_runmake DEPMOD=echo INSTALL_MOD_PATH="${D}" modules_install
> rm "${D}/lib/modules/${KERNEL_VERSION}/build"
> rm "${D}/lib/modules/${KERNEL_VERSION}/source"
> + # If the kernel/ directory is empty remove it to prevent QA issues
How about:
rmdir --ignore-fail-on-non-empty ${D}/lib/modules/${KERNEL_VERSION}/kernel
// Robert
> + if [ ! "$(ls -A "${D}/lib/modules/${KERNEL_VERSION}/kernel")" ]; then
> + rm -r "${D}/lib/modules/${KERNEL_VERSION}/kernel"
> + fi
> else
> bbnote "no modules to install"
> fi
>
More information about the Openembedded-core
mailing list