diff options
author | Jaewon Lee <jaewon.lee@xilinx.com> | 2019-09-17 17:37:33 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2019-09-19 15:27:02 +0100 |
commit | 88db9e41c1fe9678b3a9002457de28e3007b328a (patch) | |
tree | 4f34efda432958776670c4c9a709fb6bf86af270 /meta/lib | |
parent | b418ececee2c22f334cc31f70aff71ba9571b431 (diff) | |
download | poky-88db9e41c1fe9678b3a9002457de28e3007b328a.tar.gz |
populate_sdk_ext: Introduce mechanism to keep nativesdk* sstate in esdk
When doing a devtool build-sdk from within an esdk all nativesdk
components would be rebuilt. This patch introduces SDK_INCLUDE_NATIVESDK
flag to toggle the inclusion of nativesdk packages when creating the
esdk sstate
Currently locked-sigs.inc is generated during do_sdk_depends which
doesn't pull in nativesdk packages. Generating another locked-sigs.inc
in do_populate_sdk_ext and pruning it to only nativesdk* packages by
using a modified version of the already existing function
prune_locked_sigs and merging it with the current locked-sigs.inc
Also adding SDK_INCLUDE_NATIVESDK tasklistfn to the logic surrounding
setting tasklist file to not prune esdk sstate during creation
[YOCTO #13261]
(From OE-Core rev: d046afd12e1c209b29dca6ba402b9aa14680c5ce)
Signed-off-by: Jaewon Lee <jaewon.lee@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/lib')
-rw-r--r-- | meta/lib/oe/copy_buildsystem.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/meta/lib/oe/copy_buildsystem.py b/meta/lib/oe/copy_buildsystem.py index cb663b21c6..31a84f5b06 100644 --- a/meta/lib/oe/copy_buildsystem.py +++ b/meta/lib/oe/copy_buildsystem.py | |||
@@ -177,7 +177,7 @@ def generate_locked_sigs(sigfile, d): | |||
177 | tasks = ['%s:%s' % (v[2], v[1]) for v in depd.values()] | 177 | tasks = ['%s:%s' % (v[2], v[1]) for v in depd.values()] |
178 | bb.parse.siggen.dump_lockedsigs(sigfile, tasks) | 178 | bb.parse.siggen.dump_lockedsigs(sigfile, tasks) |
179 | 179 | ||
180 | def prune_lockedsigs(excluded_tasks, excluded_targets, lockedsigs, pruned_output): | 180 | def prune_lockedsigs(excluded_tasks, excluded_targets, lockedsigs, onlynative, pruned_output): |
181 | with open(lockedsigs, 'r') as infile: | 181 | with open(lockedsigs, 'r') as infile: |
182 | bb.utils.mkdirhier(os.path.dirname(pruned_output)) | 182 | bb.utils.mkdirhier(os.path.dirname(pruned_output)) |
183 | with open(pruned_output, 'w') as f: | 183 | with open(pruned_output, 'w') as f: |
@@ -187,7 +187,11 @@ def prune_lockedsigs(excluded_tasks, excluded_targets, lockedsigs, pruned_output | |||
187 | if line.endswith('\\\n'): | 187 | if line.endswith('\\\n'): |
188 | splitval = line.strip().split(':') | 188 | splitval = line.strip().split(':') |
189 | if not splitval[1] in excluded_tasks and not splitval[0] in excluded_targets: | 189 | if not splitval[1] in excluded_tasks and not splitval[0] in excluded_targets: |
190 | f.write(line) | 190 | if onlynative: |
191 | if 'nativesdk' in splitval[0]: | ||
192 | f.write(line) | ||
193 | else: | ||
194 | f.write(line) | ||
191 | else: | 195 | else: |
192 | f.write(line) | 196 | f.write(line) |
193 | invalue = False | 197 | invalue = False |