From 800528eaa421d451b596545125cb218e08989151 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Wed, 6 Jan 2016 22:57:40 +0000 Subject: image: Move pre/post process commands to bbclass As the next step in splitting up do_image, move the pre and post processing commands to separate tasks. This also creates the do_image_complete task which acts as the end marker task for image generation. Signed-off-by: Richard Purdie --- meta/classes/image.bbclass | 25 +++++++++++++++++++++++-- meta/lib/oe/image.py | 9 --------- 2 files changed, 23 insertions(+), 11 deletions(-) diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass index 5aca9c48d6..ffad5d28d2 100644 --- a/meta/classes/image.bbclass +++ b/meta/classes/image.bbclass @@ -251,14 +251,35 @@ addtask rootfs before do_build fakeroot python do_image () { from oe.image import create_image + from oe.image import Image + from oe.utils import execute_pre_post_process - # generate final images - create_image(d) + i = Image(d) + + pre_process_cmds = d.getVar("IMAGE_PREPROCESS_COMMAND", True) + + execute_pre_post_process(d, pre_process_cmds) + + i._remove_old_symlinks() + + i.create() } do_image[dirs] = "${TOPDIR}" do_image[umask] = "022" addtask do_image after do_rootfs before do_build +fakeroot python do_image_complete () { + from oe.utils import execute_pre_post_process + + post_process_cmds = d.getVar("IMAGE_POSTPROCESS_COMMAND", True) + + execute_pre_post_process(d, post_process_cmds) +} +do_image_complete[dirs] = "${TOPDIR}" +do_image_complete[umask] = "022" +addtask do_image_complete after do_image before do_build + + MULTILIBRE_ALLOW_REP =. "${base_bindir}|${base_sbindir}|${bindir}|${sbindir}|${libexecdir}|${sysconfdir}|${nonarch_base_libdir}/udev|/lib/modules/[^/]*/modules.*|" MULTILIB_CHECK_FILE = "${WORKDIR}/multilib_check.py" MULTILIB_TEMP_ROOTFS = "${WORKDIR}/multilib" diff --git a/meta/lib/oe/image.py b/meta/lib/oe/image.py index 52ac1e752c..b2b002b190 100644 --- a/meta/lib/oe/image.py +++ b/meta/lib/oe/image.py @@ -351,12 +351,6 @@ class Image(ImageDepGraph): def create(self): bb.note("###### Generate images #######") - pre_process_cmds = self.d.getVar("IMAGE_PREPROCESS_COMMAND", True) - post_process_cmds = self.d.getVar("IMAGE_POSTPROCESS_COMMAND", True) - - execute_pre_post_process(self.d, pre_process_cmds) - - self._remove_old_symlinks() image_cmd_groups = self._get_imagecmds() @@ -406,9 +400,6 @@ class Image(ImageDepGraph): bb.note("Creating symlinks for %s image ..." % image_type) self._create_symlinks(subimages) - execute_pre_post_process(self.d, post_process_cmds) - - def create_image(d): Image(d).create() -- cgit 1.2.3-korg