diff options
author | Paul Eggleton <paul.eggleton@linux.intel.com> | 2016-01-07 00:15:53 +1300 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-01-11 15:41:46 +0000 |
commit | 532f42985f9dfb600b6a501436bddff746388640 (patch) | |
tree | cb91e31c20c86296c586de8737d86efc14207ee1 /scripts | |
parent | ec9016821d5c2a120dcb7e5d4b8cde02c2b45b51 (diff) | |
download | poky-532f42985f9dfb600b6a501436bddff746388640.tar.gz |
devtool: refactor code for getting local recipe file
We're doing this in a couple of places, let's just find the recipe file
if it exists within the workspace (which it will if it's been added
through "devtool add") when we read in the workspace.
(From OE-Core rev: 81cf5580993c99050e3f4d6d891bc67534721487)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'scripts')
-rwxr-xr-x | scripts/devtool | 12 | ||||
-rw-r--r-- | scripts/lib/devtool/standard.py | 19 |
2 files changed, 15 insertions, 16 deletions
diff --git a/scripts/devtool b/scripts/devtool index bda05e1c2f..2d57da0bc1 100755 --- a/scripts/devtool +++ b/scripts/devtool | |||
@@ -112,8 +112,18 @@ def read_workspace(): | |||
112 | res = externalsrc_re.match(line.rstrip()) | 112 | res = externalsrc_re.match(line.rstrip()) |
113 | if res: | 113 | if res: |
114 | pn = res.group(2) or os.path.splitext(os.path.basename(fn))[0].split('_')[0] | 114 | pn = res.group(2) or os.path.splitext(os.path.basename(fn))[0].split('_')[0] |
115 | # Find the recipe file within the workspace, if any | ||
116 | bbfile = os.path.basename(fn).replace('.bbappend', '.bb').replace('%', '*') | ||
117 | recipefile = glob.glob(os.path.join(config.workspace_path, | ||
118 | 'recipes', | ||
119 | pn, | ||
120 | bbfile)) | ||
121 | if recipefile: | ||
122 | recipefile = recipefile[0] | ||
115 | workspace[pn] = {'srctree': res.group(3), | 123 | workspace[pn] = {'srctree': res.group(3), |
116 | 'bbappend': fn} | 124 | 'bbappend': fn, |
125 | 'recipefile': recipefile} | ||
126 | logger.debug('Found recipe %s' % workspace[pn]) | ||
117 | 127 | ||
118 | def create_workspace(args, config, basepath, workspace): | 128 | def create_workspace(args, config, basepath, workspace): |
119 | if args.layerpath: | 129 | if args.layerpath: |
diff --git a/scripts/lib/devtool/standard.py b/scripts/lib/devtool/standard.py index 7ef0ab8c64..e26ce5a6fb 100644 --- a/scripts/lib/devtool/standard.py +++ b/scripts/lib/devtool/standard.py | |||
@@ -1171,13 +1171,9 @@ def status(args, config, basepath, workspace): | |||
1171 | """Entry point for the devtool 'status' subcommand""" | 1171 | """Entry point for the devtool 'status' subcommand""" |
1172 | if workspace: | 1172 | if workspace: |
1173 | for recipe, value in workspace.iteritems(): | 1173 | for recipe, value in workspace.iteritems(): |
1174 | bbfile = os.path.basename(value['bbappend']).replace('.bbappend', '.bb').replace('%', '*') | 1174 | recipefile = value['recipefile'] |
1175 | recipefile = glob.glob(os.path.join(config.workspace_path, | ||
1176 | 'recipes', | ||
1177 | recipe, | ||
1178 | bbfile)) | ||
1179 | if recipefile: | 1175 | if recipefile: |
1180 | recipestr = ' (%s)' % recipefile[0] | 1176 | recipestr = ' (%s)' % recipefile |
1181 | else: | 1177 | else: |
1182 | recipestr = '' | 1178 | recipestr = '' |
1183 | print("%s: %s%s" % (recipe, value['srctree'], recipestr)) | 1179 | print("%s: %s%s" % (recipe, value['srctree'], recipestr)) |
@@ -1261,15 +1257,8 @@ def edit_recipe(args, config, basepath, workspace): | |||
1261 | tinfoil.shutdown() | 1257 | tinfoil.shutdown() |
1262 | else: | 1258 | else: |
1263 | check_workspace_recipe(workspace, args.recipename) | 1259 | check_workspace_recipe(workspace, args.recipename) |
1264 | bbappend = workspace[args.recipename]['bbappend'] | 1260 | recipefile = workspace[args.recipename]['recipefile'] |
1265 | bbfile = os.path.basename(bbappend).replace('.bbappend', '.bb').replace('%', '*') | 1261 | if not recipefile: |
1266 | recipefile = glob.glob(os.path.join(config.workspace_path, | ||
1267 | 'recipes', | ||
1268 | args.recipename, | ||
1269 | bbfile)) | ||
1270 | if recipefile: | ||
1271 | recipefile = recipefile[0] | ||
1272 | else: | ||
1273 | raise DevtoolError("Recipe file for %s is not under the workspace" % | 1262 | raise DevtoolError("Recipe file for %s is not under the workspace" % |
1274 | args.recipename) | 1263 | args.recipename) |
1275 | 1264 | ||