1
0
mirror of https://git.yoctoproject.org/poky synced 2026-04-20 11:28:58 +00:00

recipetool: create: support creation of additional files by plugins

Allow plugins to create additional files to go alongside the recipe. The
plugins don't know what the output filename is going to be, so they need
to put the files in a temporary location and add them to an "extrafiles"
dict within extravalues where the destination filename is the key and
the temporary path is the value.

devtool add was also extended to ensure these files get moved in and
preserved upon reset if they've been edited by the user.

(From OE-Core rev: 334b9451111b7e3efbb43b3a4eecebcab8ec6f0e)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Paul Eggleton
2016-03-09 17:48:54 +13:00
committed by Richard Purdie
parent 2279eb2a4c
commit 309b2e6c57
2 changed files with 16 additions and 1 deletions

View File

@@ -189,6 +189,9 @@ def add(args, config, basepath, workspace):
raise DevtoolError('Couldn\'t find source tree created by recipetool')
bb.utils.mkdirhier(recipedir)
shutil.move(recipes[0], recipefile)
# Move any additional files created by recipetool
for fn in os.listdir(tempdir):
shutil.move(os.path.join(tempdir, fn), recipedir)
else:
raise DevtoolError('Command \'%s\' did not create any recipe file:\n%s' % (e.command, e.stdout))
attic_recipe = os.path.join(config.workspace_path, 'attic', recipename, os.path.basename(recipefile))
@@ -199,7 +202,8 @@ def add(args, config, basepath, workspace):
shutil.rmtree(tmpsrcdir)
shutil.rmtree(tempdir)
_add_md5(config, recipename, recipefile)
for fn in os.listdir(recipedir):
_add_md5(config, recipename, os.path.join(recipedir, fn))
if args.fetch and not args.no_git:
setup_git_repo(srctree, args.version, 'devtool')