dotnet / source-build

A repository to track efforts to produce a source tarball of the .NET Core SDK and all its components
MIT License
266 stars 132 forks source link

Add an option to not clean inner build directory on re-build #3208

Open oleksandr-didyk opened 1 year ago

oleksandr-didyk commented 1 year ago

When debugging source-build for bigger projects (such as runtime) copying the entire working directory into the inner build on every re-build is quite expensive.

One such case when the content of the working directory does not change between re-builds is when the tooling is investigated, rather then the repo itself (i.e. cmake).

An option to skip creation of inner build directory could solve the issue.

MichaelSimons commented 1 year ago

[Triage] This may support incremental builds when set. The downside to this is that any source changes a dev wants to test would need to be made in the inner source. It would be a niche setting but there definitely seems like some scenarios that would greatly benefit from this.

Alternatively a possibly better UX would be an option to disable the use of an inner build/clone all together (e.g. https://github.com/dotnet/source-build/issues/3072). That however feels like a lot more work. Implementing this is likely a single condition so if it helps the dev workflow today, then it feels worthwhile.