On Fri, 2013-09-13 at 10:09 +0800, qi.c...@windriver.com wrote:
> From: Chen Qi <qi.c...@windriver.com>
> 
> In rootfs_uninstall_unneeded function, the update-rc.d package would
> be removed if no 'package-management' and no delayed postinsts.
> 
> However, in update-rc.d.bbclass, the update-rc.d package is only
> recommended. Thus, if NO_RECOMMENDATIONS is enabled or 'update-rc.d'
> is added to BAD_RECOMMENDATIONS, the update-rc.d package will not
> be installed at the first place. Tring to remove it will result in an
> error.
> 
> Also this function assumes that update-rc.d is only used by postinsts.
> This assumption isn't always true. Users may want to write their own
> init scripts and use the update-rc.d tool to manage them.
> 
> [YOCTO #5169]
> 
> Signed-off-by: Chen Qi <qi.c...@windriver.com>
> ---
>  meta/classes/image.bbclass |    4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)

This is not correct. The correct behaviour here is to uninstall these
packages *if* they are installed. Just removing it from the list is not
the real fix.

Cheers,

Richard

> diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
> index f1e62f14..f37cd90 100644
> --- a/meta/classes/image.bbclass
> +++ b/meta/classes/image.bbclass
> @@ -505,12 +505,12 @@ rootfs_uninstall_unneeded () {
>       if ${@base_contains("IMAGE_FEATURES", "package-management", "false", 
> "true", d)}; then
>               if [ -z "$(delayed_postinsts)" ]; then
>                       # All packages were successfully configured.
> -                     # update-rc.d, base-passwd, run-postinsts are no 
> further use, remove them now
> +                     # base-passwd, run-postinsts are no further use, remove 
> them now
>                       remove_run_postinsts=false
>                       if [ -e 
> ${IMAGE_ROOTFS}${sysconfdir}/init.d/run-postinsts ]; then
>                               remove_run_postinsts=true
>                       fi
> -                     rootfs_uninstall_packages update-rc.d base-passwd 
> ${ROOTFS_BOOTSTRAP_INSTALL}
> +                     rootfs_uninstall_packages base-passwd 
> ${ROOTFS_BOOTSTRAP_INSTALL}
>  
>                       # Need to remove rc.d files for run-postinsts by hand 
> since opkg won't
>                       # call postrm scripts in offline root mode.


_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to