Anyone have a good resource for learning more about the unity build system? Specifically best practices, tradeoffs, and the like?
For me I think the priority would be determinism - I’d like to either always build in unity mode, or always in non-unity mode so there are no surprises when compiling in various build contexts. Unclear if this is a wise thing to do, since I don’t clearly understand what all the various build contexts are or what their needs and defaults WRT unity builds might be.
Currently, my project uses PCHUsageMode.UseExplicitOrSharedPCHs
(like all new projects?) in all of its modules, but I haven’t touched any of the unity-build-related options in my .target.cs files. So what’s going on in my builds? Is it that they’re IWYU-ready, but still running in (adaptive) unity mode since bUseAdaptiveUnityBuild
defaults to true?
Resources I’m aware of…
Thanks, I realize this is a lot!