From ed19ed0db163acf9556048d01466b074403a0336 Mon Sep 17 00:00:00 2001 From: Cristiana Voicu Date: Tue, 25 Feb 2014 15:30:10 +0200 Subject: bitbake: hob: create a base hob image used to create custom images In order to remove hob-image.bb from meta-hob, a hob-image.bb should be created somewhere in the build directory. I've saved it in build/recipes/images directory, and moved the templates to recipes/images/custom (here are those templates saved by the user). The image is created when hob starts. Also it appends to BBFILES the directory where it is created. Removed images directory from meta-hob. [YOCTO #5118] (Bitbake rev: 4587297b51b7ca71d314bdb2c06f2061e7d4aa7d) Signed-off-by: Cristiana Voicu Signed-off-by: Richard Purdie --- bitbake/lib/bb/ui/crumbs/builder.py | 3 ++- bitbake/lib/bb/ui/crumbs/hobeventhandler.py | 9 ++++++++- bitbake/lib/bb/ui/crumbs/imageconfigurationpage.py | 2 +- bitbake/lib/bb/ui/crumbs/imagedetailspage.py | 2 +- 4 files changed, 12 insertions(+), 4 deletions(-) (limited to 'bitbake/lib/bb') diff --git a/bitbake/lib/bb/ui/crumbs/builder.py b/bitbake/lib/bb/ui/crumbs/builder.py index 5ae1ddb52f..1c8469b27e 100755 --- a/bitbake/lib/bb/ui/crumbs/builder.py +++ b/bitbake/lib/bb/ui/crumbs/builder.py @@ -446,7 +446,8 @@ class Builder(gtk.Window): self.handler.connect("recipe-populated", self.handler_recipe_populated_cb) self.handler.connect("package-populated", self.handler_package_populated_cb) - self.handler.append_to_bbfiles("${TOPDIR}/recipes/images/*.bb") + self.handler.append_to_bbfiles("${TOPDIR}/recipes/images/custom/*.bb") + self.handler.generate_hob_base_image() self.initiate_new_build_async() signal.signal(signal.SIGINT, self.event_handle_SIGINT) diff --git a/bitbake/lib/bb/ui/crumbs/hobeventhandler.py b/bitbake/lib/bb/ui/crumbs/hobeventhandler.py index 128207092d..e848405bbb 100644 --- a/bitbake/lib/bb/ui/crumbs/hobeventhandler.py +++ b/bitbake/lib/bb/ui/crumbs/hobeventhandler.py @@ -436,9 +436,16 @@ class HobHandler(gobject.GObject): self.run_next_command(self.GENERATE_IMAGE) def generate_new_image(self, image, base_image, package_queue, description): - base_image = self.runCommand(["matchFile", self.base_image + ".bb"]) + if base_image: + base_image = self.runCommand(["matchFile", self.base_image + ".bb"]) self.runCommand(["generateNewImage", image, base_image, package_queue, False, description]) + def generate_hob_base_image(self): + image_dir = self.get_topdir() + "/recipes/images/" + self.ensure_dir(image_dir) + self.generate_new_image(image_dir+"hob-image.bb", None, [], "") + self.append_to_bbfiles(image_dir + "*.bb") + def ensure_dir(self, directory): self.runCommand(["ensureDir", directory]) diff --git a/bitbake/lib/bb/ui/crumbs/imageconfigurationpage.py b/bitbake/lib/bb/ui/crumbs/imageconfigurationpage.py index 6372592d23..c4fd3f746c 100644 --- a/bitbake/lib/bb/ui/crumbs/imageconfigurationpage.py +++ b/bitbake/lib/bb/ui/crumbs/imageconfigurationpage.py @@ -379,7 +379,7 @@ class ImageConfigurationPage (HobPage): selected_image = self.image_combo.get_active_text() if selected_image == self.__custom_image__: topdir = self.builder.get_topdir() - images_dir = topdir + "/recipes/images/" + images_dir = topdir + "/recipes/images/custom/" self.builder.ensure_dir(images_dir) dialog = RetrieveImageDialog(images_dir, "Select from my image recipes", diff --git a/bitbake/lib/bb/ui/crumbs/imagedetailspage.py b/bitbake/lib/bb/ui/crumbs/imagedetailspage.py index 271635fe11..352e9489fd 100755 --- a/bitbake/lib/bb/ui/crumbs/imagedetailspage.py +++ b/bitbake/lib/bb/ui/crumbs/imagedetailspage.py @@ -632,7 +632,7 @@ class ImageDetailsPage (HobPage): def save_button_clicked_cb(self, button): topdir = self.builder.get_topdir() - images_dir = topdir + "/recipes/images/" + images_dir = topdir + "/recipes/images/custom/" self.builder.ensure_dir(images_dir) self.name_field_template = self.builder.image_configuration_page.custom_image_selected -- cgit v1.2.3-54-g00ecf