On Windows the code assumed that all source files come from the game's branch, which may not be true when importing parts of other branches. Modified the code to query the locally synced files using 'p4 have' which returns a list of correct local - depot mappings. Minor but related fixes on other platforms.
#rb David.Harvey
[CL 29784146 by wojciech krywult in ue5-main branch]
- Allows a target to change how it is packaged, staged and deployed - for example, when packaging for a specific game store
Hooked into Windows only at the moment, configured via:
[/Script/WindowsTargetPlatform.WindowsTargetSettings]
CustomDeployment=MyCustomDeploymentHandler
#jira UE-179187
#rnx
#rb Eric.McDaniel
[CL 27370777 by david harvey in ue5-main branch]
This message should really be a warning, but given we have no way of fixing it (it's a limitation of pdbstr.exe tool from Windows SDK) there's not much use of having it as it just prevents our build machines from being green.
#preflight 637cefac8b12eb83a7cb824c
#rb none
#rnx
[CL 23237341 by Wojciech Krywult in ue5-main branch]
PdbStr.exe tool that is used to add source information to .pdb can't handle large (> 4 BG) symbol files and there isn't much we can do about it. Some of our builds produce such symbols which leads to whole build tasks being failed (and symbols not being stored at all).
I tried to predice such cases by checking the size of .pdb before trying to invoke PdbStr.exe and it works in some cases, but apparently it's not precise enough because we have cases in our build farm which pass my check but fail later on when PdbStr.exe is started.
#preflight 63756b4832484253059d8856
#rb none
#rnx
[CL 23164999 by Wojciech Krywult in ue5-main branch]
Source code indexing allows Visual Studio to automatically fetch the right source code files from Perforce when debugging builds/crashdumps.
Previously, we had this functionality available only on Windows in the form of SrcSrv build task (build graph). This task takes generated pdbs and embeds information about the source code used into them. However, this functionality doesn't translate well into similar features on other platforms.
Resolved by extending SymStore task to handle source indexing in additional to uploading symbols to the symbol store. SrcSrv remains functional, but it still works only on Windows. For this reason, SymStore becomes the preferred solution as it's more general.
Fixed a few additional problems, both in the task itself and our game's build graph.
#preflight 63727a48ee4d25f90ace140b
#rb Robert.Millar
#jira UE-70463
[CL 23123619 by Wojciech Krywult in ue5-main branch]