Add BuildOnlyPlatforms_MonolithicOnly to the RulesCompiler, to specify platforms that we want to compile but not cook
Add concept of "Dependent platform" to UAT, where the cooked data comes from a source platform, and is duplicated at stage time
Updated brutal submit to handle the same changes already being submitted during a build.
Brutal submit now considers it as success when it attempts to reconcile with latest in P4 and finds no files are different in its workspace.
Fix formatting on automation.cs files to avoid future integration issues, unify as tabs-as-tabs instead of spaces
#codereview kellan.carr
[CL 2261070 by Ben Zeigler in Main branch]
Now there are two commands UnrealSync and UnrealSyncList. UnrealSync syncs the workspace to given label using artist sync (i.e. according to ArtistSyncRules.xml) or all files. Additionally you can chose to sync in p4 preview mode. Instead of providing label name explicitly you can provide only a game name, then latested promoted game label will be chosen. If you skip game name also then latestest shared promoted label will be chosen.
UnrealSyncList in general lists all branch labels for the current workspace. The labels can be filtered by game (e.g. FortniteGame) or type (all, promotable or promoted). In promotable and promoted types if you skip game parameter then shared promotable is assumed. All labels are printed chronologically (from most recent). In all query type game parameter is ignored.
[CL 2074134 by Jaroslaw Palczynski in Main branch]