Dont run configure commands more than once for incremental workspace builds
These are the steps that were identified in order for us to be able to skip configure-commands in case of workspaced builds. These steps also include slight refactoring of how workspaces work in general:
-
Make workspaces element-wide (at present we have per-source workspaces): !257 (closed) -
Update .workspaces.yml format to include version numbers and make it more extensible, similar to changes proposed in !191 (closed). Update: now complete, see !313 (merged) -
Add new element.prepare()
method (that defaults topass
).BuildElement
can override it by running configure-commands in this step. -
BuildStream should call element.prepare()
unless its a workspace build and prepare hasn't run before -
Early exit in cases where we don't support .workspaces.yml format, introduced in step 2.
Edited by Tristan Maat