Commit Graph

30 Commits

Author SHA1 Message Date
jonathan adamczewski
233b7719a5 <saved by Perforce>
#ROBOMERGE-SOURCE: CL 16642197 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v833-16641396)

[CL 16642206 by jonathan adamczewski in ue5-release-engine-test branch]
2021-06-11 11:37:42 -04:00
jonathan adamczewski
c07bc3e451 BuildUtilities:
Ensure UnrealBuild.RootDirectory casing is consistent.

#jira none

#ROBOMERGE-SOURCE: CL 16611964 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v828-16531559)

[CL 16611970 by jonathan adamczewski in ue5-release-engine-test branch]
2021-06-09 16:34:59 -04:00
jonathan adamczewski
52fb70eda1 UnrealBuildTool:
Move StartupTraceListener.cs to BuildUtilities

#jira none

#ROBOMERGE-SOURCE: CL 16608546 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v828-16531559)

[CL 16608556 by jonathan adamczewski in ue5-release-engine-test branch]
2021-06-09 13:40:10 -04:00
jonathan adamczewski
dd2161f482 UnrealBuildTool:
Move NativeProjects partially into BuildUtilities - class split to avoid pulling in a larger chain of dependencies.

#jira none

#ROBOMERGE-SOURCE: CL 16608480 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v828-16531559)

[CL 16608488 by jonathan adamczewski in ue5-release-engine-test branch]
2021-06-09 13:32:54 -04:00
jonathan adamczewski
d58996b916 UnrealBuildTool: move some path constants into BuildUtilities
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

#ROBOMERGE-SOURCE: CL 16607440 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v828-16531559)

[CL 16607455 by jonathan adamczewski in ue5-release-engine-test branch]
2021-06-09 12:55:13 -04:00
jonathan adamczewski
0dc1d65494 Move DirectoryLookupCache.cs to BuildUtilities
#jira none

#ROBOMERGE-SOURCE: CL 16596484 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v828-16531559)

[CL 16596492 by jonathan adamczewski in ue5-release-engine-test branch]
2021-06-08 19:12:31 -04:00
jonathan adamczewski
a865a21fb0 Move FileItem and DirectoryItem into BuildUtilities
#jira none

#ROBOMERGE-SOURCE: CL 16596289 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v828-16531559)

[CL 16596323 by jonathan adamczewski in ue5-release-engine-test branch]
2021-06-08 19:06:03 -04:00
jonathan adamczewski
3d5833e02f Add a common C# method for detecting the current host platform to EpicGames.Core, and move many a test to use that code.
#jira none
#rb joe.kirchoff

#ROBOMERGE-SOURCE: CL 16593582 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v828-16531559)

[CL 16593589 by jonathan adamczewski in ue5-release-engine-test branch]
2021-06-08 17:01:47 -04:00
Luke Thatcher
4a694b920b Move AutoSDK script version to Version.txt file inside the AutoSDK directory itself
- Previously, any changes made to AutoSDKs had to be submitted along with a bump in the version string returned by GetRequiredScriptVersionString(). Since this string is in UBT, the string has to be bumped in every branch where we need the AutoSDK changes to get applied.
 - Now, the script version string is stored in Version.txt, meaning there's only one place the version needs to be bumped to force all UBT instances in all branches to reapply an SDK.
 - Made GetRequiredScriptVersionString() private and removed platform implementations.

#rb Josh.Adams,Rolando.Caloca
#preflight 60804447a698b300013e5787

[CL 16076490 by Luke Thatcher in ue5-main branch]
2021-04-21 13:14:12 -04:00
josh adams
db463b031d - Fixed Android AutoSDK version from not showing up as valid in Turnkey
#rb trivial
[FYI] patrick.kelly

#ROBOMERGE-SOURCE: CL 15374628 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v771-15082668)

[CL 15374631 by josh adams in ue5-main branch]
2021-02-10 02:48:20 -04:00
josh adams
13682c6497 - Renamed FileRetriever class to ITurnkeyContext
- 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]
2021-02-08 17:07:27 -04:00
Josh Adams
f1b16e7ee5 Turnkey for device management and SDK apis for platforms coming online soon:
- 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]
2021-01-26 05:30:58 -04:00
Josh Adams
ae46bd441e - Adding idea of "quick switching" installed SDKs if the platform can detect multiple installed SDKs
#rb turnkeyonly

[CL 15074259 by Josh Adams in ue5-main branch]
2021-01-13 18:45:41 -04:00
Jack Porter
75f53c8388 Fix up iOS remote build after move from Mono to dotnet
- build UBT/UAT on remote Mac
- exclude unnecessary UBT platform source from rsync upload
- modifications to UBT to allow it to compile with Linux and Lumin excluded
- manually convert CRLF for Mac shell scripts after rsync upload
#review
#rb Brandon.Schaefer
#fyi Ben.Marsh

[CL 15045791 by Jack Porter in ue5-main branch]
2021-01-11 21:17:03 -04:00
Marc Audy
bf80889353 UE5/Release-Engine-Staging to UE5/Main
This represents UE4/Main up to CL# 14958402

[CL 15028197 by Marc Audy in ue5-main branch]
2021-01-08 19:56:07 -04:00
Ben Marsh
6f927647b1 Changing C# code over to using EpicGames.Core over DotNETCommon.
#rb none
#rnx

[CL 14962096 by Ben Marsh in ue5-main branch]
2020-12-21 23:07:37 -04:00
Ben Marsh
69646e6e96 Convert fastJSON into a standalone thirdparty dependency. Allows converting the DotNETUtilities and BuildUtilities folders to NET Core 3.1.
#rb none
#rnx

[CL 14961920 by Ben Marsh in ue5-main branch]
2020-12-21 19:26:55 -04:00
Devin Doucette
5ca9fa38e0 Updated AutoSDK to allow unprivileged execution of the install/uninstall hooks when possible
#rb Josh.Adams

#ushell-cherrypick of 14843361 by Devin.Doucette

[CL 14843993 by Devin Doucette in ue5-main branch]
2020-12-03 11:37:32 -04:00
Joakim Lindqvist
e7039d3d35 UBT and UAT now use .NET Core instead of Framework and Mono. This means that we use the same runtime on Windows, Linux and Mac. Further benefits including newer C# features and a lot of intresting features for the future around AOT and Tiered compilation.
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]
2020-12-02 06:57:13 -04:00
Josh Adams
df33c7885f - Added file logging to GenerteProjectFiles (saved to Engine/Programs/UnrealBuildTool/Log_GPF.txt)
- Improved GPF's SDK error printouts, with no more red error text, and just a list of bad platform SDKs, and a link to the log file to get the detailed information if desired
#rb ben.marsh

[CL 14475783 by Josh Adams in ue5-main branch]
2020-10-12 18:14:03 -04:00
Josh Adams
788aad5cb0 - Updated UEBuildPlatform[SDK] to look in DDPI.ini and not bother setting up SDKs for platforms that aren't enabled (no need to print out errors for missing platform SDKs for platforms that aren't valid, like consoles on Mac)
- Streamlined the logs for bad SDK versions, especially when multiple platforms have bad SDKs
- Skip over non-enabled platforms in some Turnkey commands

[CL 14462457 by Josh Adams in ue5-main branch]
2020-10-09 13:20:15 -04:00
Joakim Lindqvist
4aa09904f2 UnrealBuildTool now supports running as a net core project.
Added a set of netcore csprojs to BuildUtilities and DotnetUtilities that build to a seperate output folder. This allows other tools to still target .net framework (like UAT for instance).
UBT is still by default targeted as .net framework.

Note that UBT built for net core has a different output directory Engine/Binaries/DotNet/UnrealBuildTool/UnrealBuildTool.exe - this is due to how a netcore project output looks with signficantly more files that are related to that application (that would be overwritten if using a shared directory).

To opt in to this set UE_USE_DOTNET=1 environment variable.
Please note that due to the changed output directory a lot of tooling will likely break at this point.

#rb ben.marsh

[CL 14419918 by Joakim Lindqvist in ue5-main branch]
2020-10-05 08:13:04 -04:00
christopher waters
f6ac73a50b Log to the console when we don't have a valid SDK. For now, only warn if the SDK is installed with the wrong version.
#rb Josh.Adams
#jira none

[CL 14388113 by christopher waters in ue5-main branch]
2020-09-24 13:00:46 -04:00
Josh Adams
d0daf0380c - Moved valid device software (flash) versions into UEBuildPlatformSDK subclasses to put alongside the SDK version, and made them min-max
- 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]
2020-09-23 11:47:14 -04:00
Josh Adams
24acd6cfeb - Fixed up AutoSDK on Mac in UE5
#fyi ryan.durand

[CL 14359881 by Josh Adams in ue5-main branch]
2020-09-21 17:53:19 -04:00