Commit Graph

191 Commits

Author SHA1 Message Date
jonathan adamczewski
ae07efe679 UEBuildTarget: When explicitly building a plugin, retain the pre-18353193 behavior for build location
#jira UE-140974
#jira UE-137660
#preflight 6202b6be74604bc6b1873fc9
#rb tim.smith
#rb joe.kirchoff
#rnx

#ROBOMERGE-AUTHOR: jonathan.adamczewski
#ROBOMERGE-SOURCE: CL 18907431 in //UE5/Release-5.0/... via CL 18907601 via CL 18907857
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v915-18905420)

[CL 18907872 by jonathan adamczewski in ue5-main branch]
2022-02-08 14:47:40 -05:00
aurel cordonnier
a12d56ff31 Merge from Release-Engine-Staging @ 17791557 to Release-Engine-Test
This represents UE4/Main @17774255, Release-5.0 @17791557 and Dev-PerfTest @17789485

[CL 17794212 by aurel cordonnier in ue5-release-engine-test branch]
2021-10-12 21:21:22 -04:00
aurel cordonnier
69fe095547 Merge from Release-Engine-Staging @ 17636544 to Release-Engine-Test
This represents UE4/Main @17638339 and Dev-PerfTest @17636504

[CL 17638842 by aurel cordonnier in ue5-release-engine-test branch]
2021-09-27 19:54:25 -04:00
jonathan adamczewski
42ef103436 UnrealBuildTool:
Add new commandline option: -AlwaysRulesCompile, ensures that rules assemblies will be compiled during the run.

#jira none

#ROBOMERGE-SOURCE: CL 17428445 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v865-17346139)

[CL 17428452 by jonathan adamczewski in ue5-release-engine-test branch]
2021-09-03 19:27:06 -04:00
jonathan adamczewski
f270855eef AutomationTool: Compile script modules within the application
Add a layer of caching to avoid running msbuild as much as possible.

#jira UE-109181
#rb ben.marsh

#ROBOMERGE-SOURCE: CL 17102399 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v853-17066230)

[CL 17102408 by jonathan adamczewski in ue5-release-engine-test branch]
2021-08-09 10:39:35 -04:00
jonathan adamczewski
b7c1369681 RulesCompiler: Add a batched FindAllRulesFiles() override
Batched function allows greater overlap when scanning the filesystem.
AutomationTool startup time is reduced by ~150ms on my machine

#jira none
#rb ben.marsh

#ROBOMERGE-SOURCE: CL 17000954 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v838-16927207)

[CL 17000959 by jonathan adamczewski in ue5-release-engine-test branch]
2021-07-29 16:48:25 -04:00
jonathan adamczewski
64c210d294 AutomationTool, BuildUtilities:
UnrealBuild -> Unreal for EngineDirectory, RootDirectory, IsEngineInstalled, UnrealBuildToolPath
Remove CommandUtils EngineDirectory, RootDirectory, IsEngineInstalled - use equvalents from UnrealBuildBase.Unreal

#jira none

#ROBOMERGE-SOURCE: CL 16648181 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v833-16641396)

[CL 16648203 by jonathan adamczewski in ue5-release-engine-test branch]
2021-06-11 18:21:35 -04:00
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
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
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
ben marsh
786dfd5db3 UBT: Compile marketplace plugin rules into a separate assembly, and do not overwrite files under the engine folder.
#jira UE-109436
#rb none
#rnx

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

[CL 15571137 by ben marsh in ue5-main branch]
2021-03-02 13:44:57 -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
68f5abeb09 UBT: Convert UnrealBuildTool to use nullable references.
#rb none
#rnx

[CL 14960546 by Ben Marsh in ue5-main branch]
2020-12-20 18:47:42 -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
Joakim Lindqvist
394b90b098 UBT changes required for netcore projects.
* Added support for more complex Msbuild conditions (using static property methods) as we use this to do per platform checks in the csprojs.
* Tweaks to the parsing of csprojs as expecations are different for netcore (mostly for how configurations are defined)
* Lastly if -dotnetcore flag is present when generating projects, use the netcore project files instead.

#rb ben.marsh

[CL 14572331 by Joakim Lindqvist in ue5-main branch]
2020-10-26 06:08:01 -04:00
Ben Marsh
52672b7bf5 Remove references to Enterprise from UBT.
#rb none

[CL 14354554 by Ben Marsh in ue5-main branch]
2020-09-20 15:18:41 -04:00
Marc Audy
a7c9001a94 Merging //UE5/Release-Engine-Staging to Main (//UE5/Main) @ 14075166
#rb
#rnx

[CL 14075271 by Marc Audy in ue5-main branch]
2020-08-11 01:36:57 -04:00
josh adams
90ff579ecc - UBT/C++ changes needed for new Restricted locations
- Does not have the changes for new .ini file locations
#rb ben.marsh

#ROBOMERGE-SOURCE: CL 12676628 via CL 12676630 via CL 12676633
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v675-12543919)

[CL 12676637 by josh adams in Main branch]
2020-04-08 15:07:46 -04:00
michael sartain
43ef13a97b Fix UnrealBuildTool unused variable warnings
#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]
2020-03-16 19:04:42 -04:00
ben marsh
80beb14b6d Fix installed files being deleted when cleaning a target from an installed engine build.
#rb none
#jira UE-90547, UE-89724

#ROBOMERGE-SOURCE: CL 12170007 in //UE4/Release-4.25/... via CL 12170010
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v661-12148976)

[CL 12170012 by ben marsh in Main branch]
2020-03-13 23:45:06 -04:00
ben marsh
592183f442 Prevent writing compiled assemblies to installed engine directory. Write them to the AppData folder instead.
#jira
#rb none

#ROBOMERGE-SOURCE: CL 11619452 in //UE4/Release-4.25/... via CL 11619471
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v655-11596533)

[CL 11619492 by ben marsh in Main branch]
2020-02-25 16:49:43 -05:00
Stefan Boberg
55a8b15f1f Copying //UE4/Dev-Core to Main (//UE4/Main)
#rb none

[CL 11258477 by Stefan Boberg in Main branch]
2020-02-05 14:26:36 -05:00
devin doucette
74fb5e239f Deterministic generation of .sln and .vcxproj files
Visual Studio solution files and project files are now generated deterministically by UnrealBuildTool to reduce solution and project reloads.

Three sources of non-determinism are addressed by this change:

1. VisualStudioSolutionFolder now uses a deterministic guid based on its folder path in the solution. Note that this relies on MasterProjectFolder.AddSubFolder avoiding sibling folders with duplicate names.
2. The Visualizers folder now uses a hard-coded Guid.
3. RulesCompiler.FindAllRulesFiles now sorts cached paths.

#rb Ben.Marsh

[CL 10983140 by devin doucette in Dev-Core branch]
2020-01-14 12:06:17 -05:00
ben marsh
03ae195b79 Updating copyrights for Engine Programs.
#rnx
#rb none
#jira none

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: ryan.durand
#ROBOMERGE-SOURCE: CL 10869242 in //Fortnite/Release-12.00/... via CL 10869536 via CL 10870955
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v624-10872983)

[CL 10876681 by ben marsh in Dev-Build branch]
2020-01-05 17:24:44 -05:00
Ryan Durand
9ef3748747 Updating copyrights for Engine Programs.
#rnx
#rb none
#jira none

#ROBOMERGE-OWNER: ryan.durand
#ROBOMERGE-AUTHOR: ryan.durand
#ROBOMERGE-SOURCE: CL 10869242 in //Fortnite/Release-12.00/... via CL 10869536
#ROBOMERGE-BOT: FORTNITE (Main -> Dev-EngineMerge) (v613-10869866)

[CL 10870955 by Ryan Durand in Main branch]
2019-12-26 23:01:54 -05:00