diff options
author | Chris Larson <chris_larson@mentor.com> | 2010-03-19 17:22:19 -0700 |
---|---|---|
committer | Richard Purdie <rpurdie@linux.intel.com> | 2010-03-25 17:25:45 +0000 |
commit | c24424327409544807a781bba4e6f9a8e178dcce (patch) | |
tree | 5df97b6f8665f6cdf9a9698c05e2a98f58bd5975 /bitbake/lib/bb/cache.py | |
parent | cefeeb1aa30a9d8744a6ff9c51811ebc8d18c735 (diff) | |
download | poky-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.py | 10 |
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 | """ |