aboutsummaryrefslogtreecommitdiffstats
path: root/bitbake
diff options
context:
space:
mode:
authorDongxiao Xu <dongxiao.xu@intel.com>2012-04-01 20:14:18 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-04-05 14:00:26 +0100
commitc15d4a2ddef8b452b03209ccb207f767ae93af39 (patch)
tree9b93957f074dfea05ead5b5404d7c49f08053d7e /bitbake
parent7b560745f23d862cc3e48748b56bc8ce4ce84f72 (diff)
downloadopenembedded-core-contrib-c15d4a2ddef8b452b03209ccb207f767ae93af39.tar.gz
Hob: fix IMAGE_INSTALL setting while save template
If save every selected package into IMAGE_INSTALL field, and then build the saved bb file by bitbake command line, it will report errors since some packages could not be found since they are dynamically generated. With this commit, Hob will only save those packages into the IMAGE_INSTALL variable which are brought in by user. (Bitbake rev: 6c970d07422bb9a8fcf339315587cfc9b207a44e) Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake')
-rwxr-xr-xbitbake/lib/bb/ui/crumbs/builder.py4
-rw-r--r--bitbake/lib/bb/ui/crumbs/hoblistmodel.py17
-rwxr-xr-xbitbake/lib/bb/ui/crumbs/packageselectionpage.py1
3 files changed, 21 insertions, 1 deletions
diff --git a/bitbake/lib/bb/ui/crumbs/builder.py b/bitbake/lib/bb/ui/crumbs/builder.py
index 8427623b37..9c2dd167cb 100755
--- a/bitbake/lib/bb/ui/crumbs/builder.py
+++ b/bitbake/lib/bb/ui/crumbs/builder.py
@@ -68,6 +68,8 @@ class Configuration:
self.selected_recipes = []
self.selected_packages = []
+ self.user_selected_packages = []
+
# proxy settings
self.all_proxy = params["all_proxy"]
self.http_proxy = params["http_proxy"]
@@ -157,7 +159,7 @@ class Configuration:
self.selected_image = filename
template.setVar("__SELECTED_IMAGE__", self.selected_image)
template.setVar("DEPENDS", self.selected_recipes)
- template.setVar("IMAGE_INSTALL", self.selected_packages)
+ template.setVar("IMAGE_INSTALL", self.user_selected_packages)
# proxy
template.setVar("all_proxy", self.all_proxy)
template.setVar("http_proxy", self.http_proxy)
diff --git a/bitbake/lib/bb/ui/crumbs/hoblistmodel.py b/bitbake/lib/bb/ui/crumbs/hoblistmodel.py
index d4cae43892..52abf00eb0 100644
--- a/bitbake/lib/bb/ui/crumbs/hoblistmodel.py
+++ b/bitbake/lib/bb/ui/crumbs/hoblistmodel.py
@@ -342,6 +342,23 @@ class PackageListModel(gtk.TreeStore):
self.selection_change_notification()
return left
+ def get_user_selected_packages(self):
+ packagelist = []
+
+ it = self.get_iter_first()
+ while it:
+ child_it = self.iter_children(it)
+ while child_it:
+ if self.get_value(child_it, self.COL_INC):
+ binb = self.get_value(child_it, self.COL_BINB)
+ if not binb or binb == "User Selected":
+ name = self.get_value(child_it, self.COL_NAME)
+ packagelist.append(name)
+ child_it = self.iter_next(child_it)
+ it = self.iter_next(it)
+
+ return packagelist
+
def get_selected_packages(self):
packagelist = []
diff --git a/bitbake/lib/bb/ui/crumbs/packageselectionpage.py b/bitbake/lib/bb/ui/crumbs/packageselectionpage.py
index d855e58aea..9a847c0f83 100755
--- a/bitbake/lib/bb/ui/crumbs/packageselectionpage.py
+++ b/bitbake/lib/bb/ui/crumbs/packageselectionpage.py
@@ -160,6 +160,7 @@ class PackageSelectionPage (HobPage):
self._expand_all()
self.builder.configuration.selected_packages = self.package_model.get_selected_packages()
+ self.builder.configuration.user_selected_packages = self.package_model.get_user_selected_packages()
selected_packages_num = len(self.builder.configuration.selected_packages)
selected_packages_size = float(self.package_model.get_packages_size())
selected_packages_size_str = self._size_to_string(selected_packages_size)