From patchwork Fri Mar 30 12:01:18 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [bitbake-devel, 6/7] Hob: Remove duplication for certain bitbake variables Date: Fri, 30 Mar 2012 12:01:18 -0000 From: Dongxiao Xu X-Patchwork-Id: 24937 Message-Id: <7b834219e675cbe02194aa1bbb76a3165ae82356.1333108781.git.dongxiao.xu@intel.com> To: bitbake-devel@lists.openembedded.org Sometimes, certain variables have duplicated values inside, for example, IMAGE_FSTYPES = "tar.bz2 ext3 tar.bz2 ext3" We need to remove the redundancy for those values. Signed-off-by: Dongxiao Xu --- lib/bb/ui/crumbs/hobeventhandler.py | 19 +++++++++++++------ 1 files changed, 13 insertions(+), 6 deletions(-) diff --git a/lib/bb/ui/crumbs/hobeventhandler.py b/lib/bb/ui/crumbs/hobeventhandler.py index 3d5df9e..74081dc 100644 --- a/lib/bb/ui/crumbs/hobeventhandler.py +++ b/lib/bb/ui/crumbs/hobeventhandler.py @@ -382,6 +382,13 @@ class HobHandler(gobject.GObject): def reset_build(self): self.build.reset() + def _remove_redundant(self, string): + ret = [] + for i in string.split(): + if i not in ret: + ret.append(i) + return " ".join(ret) + def get_parameters(self): # retrieve the parameters from bitbake params = {} @@ -445,19 +452,19 @@ class HobHandler(gobject.GObject): image_overhead_factor = float(image_overhead_factor) params['image_overhead_factor'] = image_overhead_factor - params["incompat_license"] = self.server.runCommand(["getVariable", "INCOMPATIBLE_LICENSE"]) or "" + params["incompat_license"] = self._remove_redundant(self.server.runCommand(["getVariable", "INCOMPATIBLE_LICENSE"]) or "") params["sdk_machine"] = self.server.runCommand(["getVariable", "SDKMACHINE"]) or self.server.runCommand(["getVariable", "SDK_ARCH"]) or "" - params["image_fstypes"] = self.server.runCommand(["getVariable", "IMAGE_FSTYPES"]) or "" + params["image_fstypes"] = self._remove_redundant(self.server.runCommand(["getVariable", "IMAGE_FSTYPES"]) or "") - params["image_types"] = self.server.runCommand(["getVariable", "IMAGE_TYPES"]) or "" + params["image_types"] = self._remove_redundant(self.server.runCommand(["getVariable", "IMAGE_TYPES"]) or "") params["conf_version"] = self.server.runCommand(["getVariable", "CONF_VERSION"]) or "" params["lconf_version"] = self.server.runCommand(["getVariable", "LCONF_VERSION"]) or "" - params["runnable_image_types"] = self.server.runCommand(["getVariable", "RUNNABLE_IMAGE_TYPES"]) or "" - params["runnable_machine_patterns"] = self.server.runCommand(["getVariable", "RUNNABLE_MACHINE_PATTERNS"]) or "" - params["deployable_image_types"] = self.server.runCommand(["getVariable", "DEPLOYABLE_IMAGE_TYPES"]) or "" + params["runnable_image_types"] = self._remove_redundant(self.server.runCommand(["getVariable", "RUNNABLE_IMAGE_TYPES"]) or "") + params["runnable_machine_patterns"] = self._remove_redundant(self.server.runCommand(["getVariable", "RUNNABLE_MACHINE_PATTERNS"]) or "") + params["deployable_image_types"] = self._remove_redundant(self.server.runCommand(["getVariable", "DEPLOYABLE_IMAGE_TYPES"]) or "") params["tmpdir"] = self.server.runCommand(["getVariable", "TMPDIR"]) or "" params["distro_version"] = self.server.runCommand(["getVariable", "DISTRO_VERSION"]) or "" params["target_os"] = self.server.runCommand(["getVariable", "TARGET_OS"]) or ""