From 28e7041a9c110be2ac5dea1eb1f55ca8f056111e Mon Sep 17 00:00:00 2001 From: Saul Wold Date: Thu, 21 Apr 2011 11:44:45 -0700 Subject: universe target: add a new target to collect all recipe targets This new universe target is not intended to be used for compiling or building everything, it use is for sanity checking and other tasks that need to find all targets. This does not exclude any broken or virtual targets. Signed-off-by: Saul Wold --- bitbake/lib/bb/cache.py | 6 ++++++ bitbake/lib/bb/cooker.py | 8 ++++++++ 2 files changed, 14 insertions(+) (limited to 'bitbake') diff --git a/bitbake/lib/bb/cache.py b/bitbake/lib/bb/cache.py index c56b4b4248..cdde3635ab 100644 --- a/bitbake/lib/bb/cache.py +++ b/bitbake/lib/bb/cache.py @@ -566,6 +566,7 @@ class CacheData(object): self.packages = defaultdict(list) self.packages_dynamic = defaultdict(list) self.possible_world = [] + self.universe_target = [] self.pkg_pn = defaultdict(list) self.pkg_fn = {} self.pkg_pepvpr = {} @@ -644,6 +645,11 @@ class CacheData(object): if not info.broken and not info.not_world: self.possible_world.append(fn) + # create a collection of all targets for sanity checking + # tasks, such as upstream versions, license, and tools for + # task and image creation. + self.universe_target.append(info.pn) + self.hashfn[fn] = info.hashfilename for task, taskhash in info.basetaskhashes.iteritems(): identifier = '%s.%s' % (fn, task) diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py index 97863e517a..3c7b60eb95 100644 --- a/bitbake/lib/bb/cooker.py +++ b/bitbake/lib/bb/cooker.py @@ -124,6 +124,8 @@ class BBCooker: if 'world' in self.configuration.pkgs_to_build: buildlog.error("'world' is not a valid target for --environment.") + if 'universe' in self.configuration.pkgs_to_build: + buildlog.error("'universe' is not a valid target for --environment.") elif len(self.configuration.pkgs_to_build) > 1: buildlog.error("Only one target can be used with the --environment option.") elif self.configuration.buildfile and len(self.configuration.pkgs_to_build) > 0: @@ -889,6 +891,12 @@ class BBCooker: for t in self.status.world_target: pkgs_to_build.append(t) + if 'universe' in pkgs_to_build: + parselog.debug(1, "collating packages for \"universe\"") + pkgs_to_build.remove('universe') + for t in self.status.universe_target: + pkgs_to_build.append(t) + return pkgs_to_build def get_bbfiles( self, path = os.getcwd() ): -- cgit v1.2.3-54-g00ecf