diff options
| author | Joshua Watt <JPEWhacker@gmail.com> | 2020-06-05 22:15:29 -0500 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2020-06-10 12:30:01 +0100 |
| commit | b9fdb6a4261754459a01f9689010a38922fe0c8a (patch) | |
| tree | f06ef9f8d1ad7ffa27f64e501228f4d312bdbc94 /bitbake/lib/bb/runqueue.py | |
| parent | f08d269c484417f3284c683ed690584642d33915 (diff) | |
| download | poky-b9fdb6a4261754459a01f9689010a38922fe0c8a.tar.gz | |
bitbake: bitbake: cooker: Split file collections per multiconfig
Splits the cooker to track a collection per multiconfig instead of a
single collection for all multiconfigs. Practically speaking, this
allows each multiconfigs to each have different BBMASKs that apply to it
instead of each one using the mask specified in the base configuration.
(Bitbake rev: dd6d8eca2027f8d9be8a734a493227b440075e49)
Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/runqueue.py')
| -rw-r--r-- | bitbake/lib/bb/runqueue.py | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py index 16f076f3b1..3d54c2b88a 100644 --- a/bitbake/lib/bb/runqueue.py +++ b/bitbake/lib/bb/runqueue.py | |||
| @@ -1557,7 +1557,8 @@ class RunQueue: | |||
| 1557 | 1557 | ||
| 1558 | def rq_dump_sigfn(self, fn, options): | 1558 | def rq_dump_sigfn(self, fn, options): |
| 1559 | bb_cache = bb.cache.NoCache(self.cooker.databuilder) | 1559 | bb_cache = bb.cache.NoCache(self.cooker.databuilder) |
| 1560 | the_data = bb_cache.loadDataFull(fn, self.cooker.collection.get_file_appends(fn)) | 1560 | mc = bb.runqueue.mc_from_tid(fn) |
| 1561 | the_data = bb_cache.loadDataFull(fn, self.cooker.collections[mc].get_file_appends(fn)) | ||
| 1561 | siggen = bb.parse.siggen | 1562 | siggen = bb.parse.siggen |
| 1562 | dataCaches = self.rqdata.dataCaches | 1563 | dataCaches = self.rqdata.dataCaches |
| 1563 | siggen.dump_sigfn(fn, dataCaches, options) | 1564 | siggen.dump_sigfn(fn, dataCaches, options) |
| @@ -2042,10 +2043,10 @@ class RunQueueExecute: | |||
| 2042 | if 'fakeroot' in taskdep and taskname in taskdep['fakeroot'] and not self.cooker.configuration.dry_run: | 2043 | if 'fakeroot' in taskdep and taskname in taskdep['fakeroot'] and not self.cooker.configuration.dry_run: |
| 2043 | if not mc in self.rq.fakeworker: | 2044 | if not mc in self.rq.fakeworker: |
| 2044 | self.rq.start_fakeworker(self, mc) | 2045 | self.rq.start_fakeworker(self, mc) |
| 2045 | self.rq.fakeworker[mc].process.stdin.write(b"<runtask>" + pickle.dumps((taskfn, task, taskname, taskhash, unihash, True, self.cooker.collection.get_file_appends(taskfn), taskdepdata, False)) + b"</runtask>") | 2046 | self.rq.fakeworker[mc].process.stdin.write(b"<runtask>" + pickle.dumps((taskfn, task, taskname, taskhash, unihash, True, self.cooker.collections[mc].get_file_appends(taskfn), taskdepdata, False)) + b"</runtask>") |
| 2046 | self.rq.fakeworker[mc].process.stdin.flush() | 2047 | self.rq.fakeworker[mc].process.stdin.flush() |
| 2047 | else: | 2048 | else: |
| 2048 | self.rq.worker[mc].process.stdin.write(b"<runtask>" + pickle.dumps((taskfn, task, taskname, taskhash, unihash, True, self.cooker.collection.get_file_appends(taskfn), taskdepdata, False)) + b"</runtask>") | 2049 | self.rq.worker[mc].process.stdin.write(b"<runtask>" + pickle.dumps((taskfn, task, taskname, taskhash, unihash, True, self.cooker.collections[mc].get_file_appends(taskfn), taskdepdata, False)) + b"</runtask>") |
| 2049 | self.rq.worker[mc].process.stdin.flush() | 2050 | self.rq.worker[mc].process.stdin.flush() |
| 2050 | 2051 | ||
| 2051 | self.build_stamps[task] = bb.build.stampfile(taskname, self.rqdata.dataCaches[mc], taskfn, noextra=True) | 2052 | self.build_stamps[task] = bb.build.stampfile(taskname, self.rqdata.dataCaches[mc], taskfn, noextra=True) |
| @@ -2129,10 +2130,10 @@ class RunQueueExecute: | |||
| 2129 | self.rq.state = runQueueFailed | 2130 | self.rq.state = runQueueFailed |
| 2130 | self.stats.taskFailed() | 2131 | self.stats.taskFailed() |
| 2131 | return True | 2132 | return True |
| 2132 | self.rq.fakeworker[mc].process.stdin.write(b"<runtask>" + pickle.dumps((taskfn, task, taskname, taskhash, unihash, False, self.cooker.collection.get_file_appends(taskfn), taskdepdata, self.rqdata.setscene_enforce)) + b"</runtask>") | 2133 | self.rq.fakeworker[mc].process.stdin.write(b"<runtask>" + pickle.dumps((taskfn, task, taskname, taskhash, unihash, False, self.cooker.collections[mc].get_file_appends(taskfn), taskdepdata, self.rqdata.setscene_enforce)) + b"</runtask>") |
| 2133 | self.rq.fakeworker[mc].process.stdin.flush() | 2134 | self.rq.fakeworker[mc].process.stdin.flush() |
| 2134 | else: | 2135 | else: |
| 2135 | self.rq.worker[mc].process.stdin.write(b"<runtask>" + pickle.dumps((taskfn, task, taskname, taskhash, unihash, False, self.cooker.collection.get_file_appends(taskfn), taskdepdata, self.rqdata.setscene_enforce)) + b"</runtask>") | 2136 | self.rq.worker[mc].process.stdin.write(b"<runtask>" + pickle.dumps((taskfn, task, taskname, taskhash, unihash, False, self.cooker.collections[mc].get_file_appends(taskfn), taskdepdata, self.rqdata.setscene_enforce)) + b"</runtask>") |
| 2136 | self.rq.worker[mc].process.stdin.flush() | 2137 | self.rq.worker[mc].process.stdin.flush() |
| 2137 | 2138 | ||
| 2138 | self.build_stamps[task] = bb.build.stampfile(taskname, self.rqdata.dataCaches[mc], taskfn, noextra=True) | 2139 | self.build_stamps[task] = bb.build.stampfile(taskname, self.rqdata.dataCaches[mc], taskfn, noextra=True) |
