[yocto] [PATCH][rrs] rrs_upstream_history.py: Use regexes in SPECIAL_PKGSUFFIX packages
Aníbal Limón
anibal.limon at linux.intel.com
Mon Aug 10 12:38:01 PDT 2015
When SPECIAL_PKGSUFFIX packages don't have regexes use it from package
without SPECIAL_PKGSUFFIX.
[YOCTO #8102]
For example: python-native use regex from python if don't have one.
Signed-off-by: Aníbal Limón <anibal.limon at linux.intel.com>
---
rrs/tools/rrs_upstream_history.py | 40 +++++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)
diff --git a/rrs/tools/rrs_upstream_history.py b/rrs/tools/rrs_upstream_history.py
index 521b733..aeac3d3 100755
--- a/rrs/tools/rrs_upstream_history.py
+++ b/rrs/tools/rrs_upstream_history.py
@@ -39,6 +39,43 @@ sys.path.insert(0, os.path.join(bitbakepath, 'lib'))
from layerindex.models import Recipe, LayerBranch
from rrs.models import RecipeUpstream, RecipeUpstreamHistory
+def set_regexes(d):
+ """
+ Utility function to set regexes to SPECIAL_PKGSUFFIX packages
+ that don't have set it.
+
+ For example: python-native use regex from python if don't have
+ one set it.
+ """
+
+ variables = ['REGEX', 'REGEX_URI', 'GITTAGREGEX']
+
+ if any(d.getVar(var, True) for var in variables):
+ return
+
+ suffixes = d.getVar('SPECIAL_PKGSUFFIX', True).split()
+ suffixes.append('nativesdk-')
+
+ localdata = bb.data.createCopy(d)
+
+ pn = localdata.getVar('PN', True)
+ for sfx in suffixes:
+ if pn.find(sfx) != -1:
+ pnstripped = pn.replace(sfx, '')
+ localdata.setVar('OVERRIDES', "pn-" + pnstripped + ":" +
+ d.getVar('OVERRIDES', True))
+ bb.data.update_data(localdata)
+
+ for var in variables:
+ new_value = localdata.getVar(var, True)
+ if new_value is None:
+ continue
+
+ d.setVar(var, new_value)
+ logger.debug("%s: %s new value %s" % (pn, var,
+ d.getVar(var, True)))
+ break
+
def get_upstream_info(thread_worker, arg):
from bb.utils import vercmp_string
from oe.recipeutils import get_recipe_upstream_version, \
@@ -122,6 +159,9 @@ if __name__=="__main__":
if not recipes:
continue
+ for recipe_data in recipes:
+ set_regexes(recipe_data)
+
history = RecipeUpstreamHistory(start_date = datetime.now())
from oe.utils import ThreadedPool
--
1.9.1
More information about the yocto
mailing list