summaryrefslogtreecommitdiffstats
path: root/lib/bb/parse/__init__.py
diff options
context:
space:
mode:
authorChris Larson <clarson@mvista.com>2009-07-21 16:22:30 -0700
committerRichard Purdie <rpurdie@linux.intel.com>2010-02-12 22:47:37 +0000
commitfda0707d772e0964a0185d4ec4d016522f6972f3 (patch)
tree7c701a76e327cdcf1e13685636451887baacdfab /lib/bb/parse/__init__.py
parent0a2bb3dd790e3e40867195f14f4e174f98f8a47c (diff)
downloadbitbake-contrib-fda0707d772e0964a0185d4ec4d016522f6972f3.tar.gz
[parse] Move vars_from_file from bb.parse.BBHandler into bb.parse.
Signed-off-by: Chris Larson <clarson@mvista.com>
Diffstat (limited to 'lib/bb/parse/__init__.py')
-rw-r--r--lib/bb/parse/__init__.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/lib/bb/parse/__init__.py b/lib/bb/parse/__init__.py
index fe5d489b7..b1308b3b0 100644
--- a/lib/bb/parse/__init__.py
+++ b/lib/bb/parse/__init__.py
@@ -103,5 +103,25 @@ def resolve_file(fn, d):
bb.msg.debug(2, bb.msg.domain.Parsing, "LOAD %s" % abs_fn)
return (f, abs_fn)
+# Used by OpenEmbedded metadata
+__pkgsplit_cache__={}
+def vars_from_file(mypkg, d):
+ if not mypkg:
+ return (None, None, None)
+ if mypkg in __pkgsplit_cache__:
+ return __pkgsplit_cache__[mypkg]
+
+ myfile = os.path.splitext(os.path.basename(mypkg))
+ parts = myfile[0].split('_')
+ __pkgsplit_cache__[mypkg] = parts
+ if len(parts) > 3:
+ raise ParseError("Unable to generate default variables from the filename: %s (too many underscores)" % mypkg)
+ exp = 3 - len(parts)
+ tmplist = []
+ while exp != 0:
+ exp -= 1
+ tmplist.append(None)
+ parts.extend(tmplist)
+ return parts
from bb.parse.parse_py import __version__, ConfHandler, BBHandler