UnrealBuild -> Unreal for EngineDirectory, RootDirectory, IsEngineInstalled, UnrealBuildToolPath
Remove CommandUtils EngineDirectory, RootDirectory, IsEngineInstalled - use equvalents from UnrealBuildBase.Unreal
#jira none
[CL 16648181 by jonathan adamczewski in ue5-main branch]
Add a StringComparison argument to CreateIntermediateTextFile() and require callers to make a decision about the case-sensitivity used when considering whether to re-write a file.
(This is intentionally explicit and verbose at the call-site - we should implement a better solution. This change makes it clear that there is work to be done to be able to simplify the interface and achieve reliable behavior.)
As a first pass, C++ files (headers, cpp files, pch files) will have a case-sensitive comparison (C++ code is, mostly, case sensitive), Linux script files have a case-sensitive comparison (case-sensitive filesystem), and all other files are compared disregarding case - to match pre-existing behavior, and with the desire to not borrow more surprises than necessary.
#jira none
[CL 16616339 by jonathan adamczewski in ue5-main branch]
RootDirectory, EngineDirectory, UnrealBuildToolPath are now found in BuildUtilities' UnrealBuild namesapce.
The way these are computed has changed. Previously, it was assumed that the application is UnrealBuildTool, and paths were constructed relative to that assembly.
Now, the assumption is that the process is located under a "Engine/Build/DotNET" sub-path and paths are constructed relative to that.
#jira none
[CL 16607440 by jonathan adamczewski in ue5-main branch]
#jira
#ROBOMERGE-SOURCE: CL 12689676 via CL 12689681 via CL 12689685
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v676-12543919)
[CL 12689695 by ben marsh in Main branch]
Defaults to just using general analysis (which UE4 builds cleanly with), but other options can be configured by setting TargetRules.WindowsPlatform.PVS.ModeFlags or by setting TargetRules.WindowsPlatform.PVS.UseApplicationSettings = true to read from the PVS config file.
Based on PR #6730.
#rb none
#jira UE-89664
#ROBOMERGE-SOURCE: CL 12496329 in //UE4/Release-4.25/... via CL 12496331 via CL 12496343
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v673-12478461)
[CL 12496355 by ben marsh in Main branch]
#jira none
#rb Ben.Marsh
[FYI] Andrew.Grant, Brandon.Schaefer
#ROBOMERGE-SOURCE: CL 12224860 in //UE4/Release-4.25/... via CL 12224862
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v663-12210973)
[CL 12224868 by michael sartain in Main branch]
#rb none
#jira
#ROBOMERGE-SOURCE: CL 12157003 in //UE4/Release-4.25/... via CL 12157005
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v659-12123632)
[CL 12157009 by ben marsh in Main branch]
#rb none
#rnx
#jira
#ROBOMERGE-SOURCE: CL 12056498 in //UE4/Release-4.25/... via CL 12056499
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v657-12064184)
[CL 12076288 by ben marsh in Main branch]
#rb none
#jira
#ROBOMERGE-SOURCE: CL 12038895 in //UE4/Release-4.25/... via CL 12038911
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v657-12064184)
[CL 12076066 by ben marsh in Main branch]