summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/cache.py
diff options
context:
space:
mode:
authorChris Larson <chris_larson@mentor.com>2010-03-19 17:22:19 -0700
committerRichard Purdie <rpurdie@linux.intel.com>2010-03-25 17:25:45 +0000
commitc24424327409544807a781bba4e6f9a8e178dcce (patch)
tree5df97b6f8665f6cdf9a9698c05e2a98f58bd5975 /bitbake/lib/bb/cache.py
parentcefeeb1aa30a9d8744a6ff9c51811ebc8d18c735 (diff)
downloadpoky-c24424327409544807a781bba4e6f9a8e178dcce.tar.gz
Implement BBVERSIONS
This implements a feature similar to BBCLASSEXTEND, but for generating multiple versions of a given recipe. For example: BBVERSIONS = "1.0 2.0 git". In addition to the above, one can utilize [a-b] style patterns, and can have a :<basever> postfix, which allows you to essentially name the range of versions. Both the current version and the basever end up in OVERRIDES, and the basever gets placed into the BPV variable. The default BPV, if none is specified, is the original PV of the recipe, before bbversions processing. In this way, you can do things like: BBVERSIONS = "1.0.[0-6]:1.0.0+ 1.0.[7-9]:1.0.7+" SRC_URI_append_1.0.7+ = "file://some_extra_patch.patch;patch=1" Or you can create a recipe per range, and name the recipe file as such: nano_1.0.7+.bb. (Bitbake rev: 4ee9a56e16f1eb3c1649eaa3127b09ab0e93d1ec) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
Diffstat (limited to 'bitbake/lib/bb/cache.py')
-rw-r--r--bitbake/lib/bb/cache.py10
1 files changed, 5 insertions, 5 deletions
diff --git a/bitbake/lib/bb/cache.py b/bitbake/lib/bb/cache.py
index 43091daa26..9a962ecc74 100644
--- a/bitbake/lib/bb/cache.py
+++ b/bitbake/lib/bb/cache.py
@@ -143,8 +143,8 @@ class Cache:
143 if dep not in self.depends_cache[fn]["__depends"]: 143 if dep not in self.depends_cache[fn]["__depends"]:
144 self.depends_cache[fn]["__depends"].append(dep) 144 self.depends_cache[fn]["__depends"].append(dep)
145 145
146 # Make sure BBCLASSEXTEND always makes the cache too 146 # Make sure the variants always make it into the cache too
147 self.getVar('BBCLASSEXTEND', virtualfn, True) 147 self.getVar('__VARIANTS', virtualfn, True)
148 148
149 self.depends_cache[virtualfn]["CACHETIMESTAMP"] = bb.parse.cached_mtime(fn) 149 self.depends_cache[virtualfn]["CACHETIMESTAMP"] = bb.parse.cached_mtime(fn)
150 150
@@ -199,7 +199,7 @@ class Cache:
199 self.cacheValidUpdate(fn) 199 self.cacheValidUpdate(fn)
200 200
201 if self.cacheValid(fn): 201 if self.cacheValid(fn):
202 multi = self.getVar('BBCLASSEXTEND', fn, True) 202 multi = self.getVar('__VARIANTS', fn, True)
203 for cls in (multi or "").split() + [""]: 203 for cls in (multi or "").split() + [""]:
204 virtualfn = self.realfn2virtual(fn, cls) 204 virtualfn = self.realfn2virtual(fn, cls)
205 if self.depends_cache[virtualfn]["__SKIPPED"]: 205 if self.depends_cache[virtualfn]["__SKIPPED"]:
@@ -292,7 +292,7 @@ class Cache:
292 self.clean[fn] = "" 292 self.clean[fn] = ""
293 293
294 # Mark extended class data as clean too 294 # Mark extended class data as clean too
295 multi = self.getVar('BBCLASSEXTEND', fn, True) 295 multi = self.getVar('__VARIANTS', fn, True)
296 for cls in (multi or "").split(): 296 for cls in (multi or "").split():
297 virtualfn = self.realfn2virtual(fn, cls) 297 virtualfn = self.realfn2virtual(fn, cls)
298 self.clean[virtualfn] = "" 298 self.clean[virtualfn] = ""
@@ -443,7 +443,7 @@ class Cache:
443 443
444 # Touch this to make sure its in the cache 444 # Touch this to make sure its in the cache
445 self.getVar('__BB_DONT_CACHE', file_name, True) 445 self.getVar('__BB_DONT_CACHE', file_name, True)
446 self.getVar('BBCLASSEXTEND', file_name, True) 446 self.getVar('__VARIANTS', file_name, True)
447 447
448 def load_bbfile( self, bbfile , config): 448 def load_bbfile( self, bbfile , config):
449 """ 449 """