Add a layer of caching to avoid running msbuild as much as possible.
#jira UE-109181
#rb ben.marsh
[CL 17102399 by jonathan adamczewski in ue5-main branch]
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]
- Some platforms don't make use of these files, so their generation is unnecessary.
#jira UE-103275
#rb Ben.Marsh
[CL 15771665 by Luke Thatcher in ue5-main branch]
Fix deployment error when there is a space in the project path
#rb Jack.Porter
#fyi josh.adams, nuno.leiria
#jira UE-103878
[CL 15451286 by axel riffard in ue5-main branch]
- Enhanced Turnkey error reporting to the editor (TurnkeyContext now has Log and ReportError)
- Improved the SDK display in the editor
- Various bug fixes
- Renamed GetAutoSDKDirectoryForMasterVersion() to GetAutoSDKDirectoryForMainVersion()
#rb brian.white
#ROBOMERGE-SOURCE: CL 15357339 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v771-15082668)
[CL 15360341 by josh adams in ue5-main branch]
- Updated versioning to pass to SetupAndroid scripts instead of the script hardcoding it
- Added idea of code-based "FileSource" objects that can be used to install an SDK without needing to copy an installer, it's all in the SDKInstall command
- Prereqs are not working yet for Mac/Linux (logic will need to be ported on those platforms to get it right)
#rb chris.babcock
[CL 15298669 by Josh Adams in ue5-main branch]
- Removed PostSplashScreen plugin that was only whitelisted for XboxOne (if we just remove the whitelist, it would build for all platforms, which we don't want)
#rb Marc.Audy (concept, not each file)
#fyi david.harvey
[CL 15265407 by Josh Adams in ue5-main branch]
- Retooled some turnkey device management (DeviceInfo now knows its platform, so we don't need to associate a platform externally)
- Changed Control command to use Gauntlet devices to do the PowerOn etc type stuff since there is already support for device control in Gauntlet. Now Turnkey is more of an interactive/scriptable frontend to Gauntlet
- Allow for a platform to do a manual Sdk installation, which doesn't depend on finding a Turnkey file source
- Allow for a platform SDK to return custom versions. This is solely used by platform-specific code
#rb brandon.schaefer
[CL 15201829 by Josh Adams in ue5-main branch]
- Some Turnkey utilities cleanup/refactor for getting platforms/devices from commandline, and generic method for getting options from commandline or user
- Allow multiple Turnkey executions on a single RunUAT commandline (RunUAT Turnkey -command=Control -operation=Reboot Turnkey -command=Control -operation=Disconnect)
#rb sebastian.nordgren
[CL 15144469 by Josh Adams in ue5-main branch]
Some behavior changes:
Output paths - Both tools are now output to a subdirectory of Binaries/Dotnet, I believe most hardcoded paths have been fixed up but there may be tools that will fail because of this.
UAT Plugin Building - As .NET Core does not support AppDomain unloading, how we build the plugins has changed quite a bit, these are now built before UAT is started rather then by UAT itself. If you just start UAT via RunUAT.bat/sh this should just continue to work.
#rb ben.marsh
[CL 14834347 by Joakim Lindqvist in ue5-main branch]
- General fixes for some platforms
- DDPI now remembers the SDK version information from Turnkey
- Updated Turnkey Launch menu to have SDK information, including device software versions,
- Moved the initial turnkey query earlier before AutoSDKs are setup so envvars are not blown away for the child process
- Added concept of "Prepare For Debugging", but not enabled on any platforms yet (what it means is per platform, and is somewhere between cooking and packaging)
- VerifySdk Turnkey command now puts its output into a (x=y, z=w) format for easier parsing in C++
- NullCopyProvider now copies large remote files, and remote directories, locally before using
[CL 14377385 by Josh Adams in ue5-main branch]
- Added SDK installation pre/post-ambles so the platform can give user more
information on what's happening, and what to do on a failure (or a success)
- Added some defaults for Studio settings in TurnkeyManifest.xml, to show how to set in a studio's .xml file
- Added/updated some Studio settings/names
- Added bCanConnect flag to DeviceInfo (in case a platform can list devices even if they are unable to flash/run/etc - in which case the fields may or may not be correct)
- Added $(AllPlatforms) and $(AutoSDKPlatforms) built-in variables
[CL 14219769 by Josh Adams in ue5-main branch]
- Moved installation from manifest.xml to Automtion platform functions
- SdkInfo has been removed, now it's just FIleSource, which can be used generically
- Redid Expansion stuff completely, so it's inline into the FileSource fields
- Added support for list expansions (so we can use a variable in the .xml instead of enumerating a CopyProvider, can speed things up)
- Allow full wildcard support in GoogleDrive provider
- Not all SDkInfos have been converted to FileSources
[CL 13965630 by Josh Adams in ue5-main branch]
- Added some Turnkey settings to IOSRuntimeSettings
- Added some of the IOSRuntimeSettings to be stripped out in the IniKeyBlacklist so that passwords aren't shipped
- Fixed smb: volume mounting in Turnkey
- Changed IOS prereq validation to be driven more by the bundleid, and then will hunt down a cert that matches the "best" provision that matches the bundleid. Then, uses the bundleid (with regex) to find a cert to install via Turnkey. Full wildcards can break it, so TeamID can be used to narrow down valid provisions
[CL 13886561 by Josh Adams in ue5-main branch]
- Added support for smb:// paths on Mac (mounts a volume and uses /Volumes, C# doesn't understand UNC paths)
- Updated path to .p12, and the signing identity from Apple Developer to Apple Development (as seen in latest certs)
- Added a new SdkInfo state (InvalidPrerequisites)
- Made IOS prerequisites not actually do any fixing if -UpdateIfNeeded is not specified
[CL 13864007 by Josh Adams in ue5-main branch]