diff options
author | Paul Eggleton <paul.eggleton@linux.intel.com> | 2016-12-13 20:09:41 +1300 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-12-14 12:30:50 +0000 |
commit | 85de43fccda7718876ffefd64457c40a2fdc38fd (patch) | |
tree | 0a4103ffb6f2edef22dd258aa72f2c8601313bc9 /scripts/lib/devtool/upgrade.py | |
parent | 86b55e6026840b3042745a3c4d2f857bf4808d18 (diff) | |
download | poky-85de43fccda7718876ffefd64457c40a2fdc38fd.tar.gz |
devtool: fix extraction of source to work in memres mode
Extracting the source for a recipe (as used by devtool's extract, modify
and upgrade subcommands) requires us to run do_fetch, do_unpack,
do_patch and any tasks that the recipe has inserted inbetween, and do so
with a modified datastore primarily so that we can redirect WORKDIR and
STAMPS_DIR in order to have the files written out to a place of our
choosing and avoid stamping the tasks as having executed in a real build
context respectively. However, this all gets much more difficult when in
memres mode since we can't call internal functions such as
bb.build.exec_func() directly - instead we need to execute the tasks on
the server. To do this we use the buildFile command which already exists
for the purpose of supporting bitbake -b, and setVariable commands to
set up the appropriate datastore.
(I did look at passing the modified datastore to the buildFile command
instead of using setVar() on the main datastore, however its use of
databuilder makes that very difficult, and we'd also need a different
method of getting the changes in the datastore over to the worker as
well.)
(From OE-Core rev: eb63b5339014fc72ba4829714e0a96a98e135ee2)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'scripts/lib/devtool/upgrade.py')
-rw-r--r-- | scripts/lib/devtool/upgrade.py | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/scripts/lib/devtool/upgrade.py b/scripts/lib/devtool/upgrade.py index 52f9ab1a01..d89e9a23ac 100644 --- a/scripts/lib/devtool/upgrade.py +++ b/scripts/lib/devtool/upgrade.py | |||
@@ -363,7 +363,7 @@ def upgrade(args, config, basepath, workspace): | |||
363 | 363 | ||
364 | rf = None | 364 | rf = None |
365 | try: | 365 | try: |
366 | rev1 = standard._extract_source(srctree, False, 'devtool-orig', False, rd) | 366 | rev1 = standard._extract_source(srctree, False, 'devtool-orig', False, rd, tinfoil) |
367 | rev2, md5, sha256 = _extract_new_source(args.version, srctree, args.no_patch, | 367 | rev2, md5, sha256 = _extract_new_source(args.version, srctree, args.no_patch, |
368 | args.srcrev, args.branch, args.keep_temp, | 368 | args.srcrev, args.branch, args.keep_temp, |
369 | tinfoil, rd) | 369 | tinfoil, rd) |