diff options
author | Saul Wold <sgw@linux.intel.com> | 2011-04-21 11:44:45 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-05-03 12:10:53 +0100 |
commit | 28e7041a9c110be2ac5dea1eb1f55ca8f056111e (patch) | |
tree | a4c4b2b6025a31bc548ca0345524888df3e77dc2 | |
parent | 3279737cdf164962b0121bd850634cb05a616f15 (diff) | |
download | poky-28e7041a9c110be2ac5dea1eb1f55ca8f056111e.tar.gz |
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 <sgw@linux.intel.com>
-rw-r--r-- | bitbake/lib/bb/cache.py | 6 | ||||
-rw-r--r-- | bitbake/lib/bb/cooker.py | 8 |
2 files changed, 14 insertions, 0 deletions
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): | |||
566 | self.packages = defaultdict(list) | 566 | self.packages = defaultdict(list) |
567 | self.packages_dynamic = defaultdict(list) | 567 | self.packages_dynamic = defaultdict(list) |
568 | self.possible_world = [] | 568 | self.possible_world = [] |
569 | self.universe_target = [] | ||
569 | self.pkg_pn = defaultdict(list) | 570 | self.pkg_pn = defaultdict(list) |
570 | self.pkg_fn = {} | 571 | self.pkg_fn = {} |
571 | self.pkg_pepvpr = {} | 572 | self.pkg_pepvpr = {} |
@@ -644,6 +645,11 @@ class CacheData(object): | |||
644 | if not info.broken and not info.not_world: | 645 | if not info.broken and not info.not_world: |
645 | self.possible_world.append(fn) | 646 | self.possible_world.append(fn) |
646 | 647 | ||
648 | # create a collection of all targets for sanity checking | ||
649 | # tasks, such as upstream versions, license, and tools for | ||
650 | # task and image creation. | ||
651 | self.universe_target.append(info.pn) | ||
652 | |||
647 | self.hashfn[fn] = info.hashfilename | 653 | self.hashfn[fn] = info.hashfilename |
648 | for task, taskhash in info.basetaskhashes.iteritems(): | 654 | for task, taskhash in info.basetaskhashes.iteritems(): |
649 | identifier = '%s.%s' % (fn, task) | 655 | 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: | |||
124 | 124 | ||
125 | if 'world' in self.configuration.pkgs_to_build: | 125 | if 'world' in self.configuration.pkgs_to_build: |
126 | buildlog.error("'world' is not a valid target for --environment.") | 126 | buildlog.error("'world' is not a valid target for --environment.") |
127 | if 'universe' in self.configuration.pkgs_to_build: | ||
128 | buildlog.error("'universe' is not a valid target for --environment.") | ||
127 | elif len(self.configuration.pkgs_to_build) > 1: | 129 | elif len(self.configuration.pkgs_to_build) > 1: |
128 | buildlog.error("Only one target can be used with the --environment option.") | 130 | buildlog.error("Only one target can be used with the --environment option.") |
129 | elif self.configuration.buildfile and len(self.configuration.pkgs_to_build) > 0: | 131 | elif self.configuration.buildfile and len(self.configuration.pkgs_to_build) > 0: |
@@ -889,6 +891,12 @@ class BBCooker: | |||
889 | for t in self.status.world_target: | 891 | for t in self.status.world_target: |
890 | pkgs_to_build.append(t) | 892 | pkgs_to_build.append(t) |
891 | 893 | ||
894 | if 'universe' in pkgs_to_build: | ||
895 | parselog.debug(1, "collating packages for \"universe\"") | ||
896 | pkgs_to_build.remove('universe') | ||
897 | for t in self.status.universe_target: | ||
898 | pkgs_to_build.append(t) | ||
899 | |||
892 | return pkgs_to_build | 900 | return pkgs_to_build |
893 | 901 | ||
894 | def get_bbfiles( self, path = os.getcwd() ): | 902 | def get_bbfiles( self, path = os.getcwd() ): |