]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commitdiff
universe target: add a new target to collect all recipe targets
authorSaul Wold <sgw@linux.intel.com>
Thu, 21 Apr 2011 18:44:45 +0000 (11:44 -0700)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 7 Jun 2011 21:28:26 +0000 (22:28 +0100)
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.

(From Poky rev: 28e7041a9c110be2ac5dea1eb1f55ca8f056111e)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
lib/bb/cache.py
lib/bb/cooker.py

index bc4a8dfd98b56065e861d65c9bec4b054bb5d078..99697aa81e1c604e9777ef547b0270bdfe9c9f50 100644 (file)
@@ -572,6 +572,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 = {}
@@ -650,6 +651,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)
index 548d0a7b1d0b22e048f5d4e02b0fd3a714bef551..510c6479f71838825d3b81e9b13eca8248ae3d6e 100644 (file)
@@ -130,6 +130,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:
@@ -910,6 +912,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() ):