Unnecessary rebuilds. Are there any logs detailing why UBT rebuilt certain things?

I’ve pretty much had it seeing Visual Studio tell me that it’s “Performing N billion actions” on a regular basis. So many people have had these issues building the engine from source, for years now. There are very clearly some major issues with UBT’s process of determining what needs to be built.

Does anyone know if UBT logs any information about this process? Anyone have any leads for nailing down why it’s doing this?

Maybe Unity Build is the reason - UBT combines multiple .cpp files to one before build. It can be switched off in BluildConfiguration.xml set bUseUnityBuild to false.

Thanks for the suggestion Yata. What I’m seeing though is something being triggered on a more fundamental level, with the entire engine rebuilding from scratch, without me having touched a source file. From what I can tell, it often seems to relate to switching between two solutions - one for the engine itself, the other for a project associated with the engine. That’s about as much as I’ve found out of the cause though, it’s certainly not predictable when it happens…