- optional alter of source file build order: towards beginning or end
- test build: correctly handle inclusion of special dependencies such as Engine, Editor, CoreUObject and ApplicationCore
- existing tests: add setup and teardown tests that initialize test modules. This causes setup and teardown to be local to module instead of global, which was not the correct way to run tests across multiple modules.
#preflight 62151e43dc0170cfb3649ee8
#rb Jermoe.Delattre
[CL 19076600 by chris constantinescu in ue5-main branch]
Use a single vcpkg.json that is copied whenever building
Remove v141 libs
Remove unused grpc libs
#rnx
#rb trivial
#jira UE-127356
#preflight 61eecfdfef289ffc6dec4d63
#ROBOMERGE-AUTHOR: joe.kirchoff
#ROBOMERGE-SOURCE: CL 18709844 in //UE5/Release-5.0/... via CL 18709887 via CL 18710018
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)
[CL 18710030 by joe kirchoff in ue5-main branch]
- Each module can now have a Tests folder at its root containing low level tests written with Catch2
- Used like this: UnrealBuildTool.exe -Mode=Test TargetName Platform Configuration
- It creates a test executable that's associated with the specified build Target and it includes all the tests for the Target AND all its dependencies as well
- When building without -Mode=Test it will omit the Tests folder contents from compilation: in theory we never allowed folders named Tests at the root of modules, but there might be isolated exceptions where we didn't validate folder names - in this case we will need to move that Tests folder one level up for example
- Code paths for test and non-test builds are entirely separated
#jira UE-135280
#rb Jerome.Delattre
#preflight 61e839d5276892ce10759205
[CL 18663474 by chris constantinescu in ue5-main branch]
- Drives the WITH_EDITOR preprocessor definition.
- Updated TargetRules.bBuildEditor to check the target type or bCompileAgainstEditor.
- Removed usages of TargetRules.bBuildEditor from UBT and replaced it with checks against the target type or the new bCompileAgainstEditor flag where necessary.
#rb Ben.Marsh
#preflight 61b21886764790bee6bce956
[CL 18419147 by JeanMichel Dignard in ue5-main branch]
This represents UE4/Main @18073326, Release-5.0 @18081140 and Dev-PerfTest @18045971
[CL 18081471 by aurel cordonnier in ue5-release-engine-test branch]
This represents UE4/Main @17911760, Release-5.0 @17915875 and Dev-PerfTest @17914035
[CL 17918595 by aurel cordonnier in ue5-release-engine-test branch]
This represents UE4/Main @17774255, Release-5.0 @17791557 and Dev-PerfTest @17789485
[CL 17794212 by aurel cordonnier in ue5-release-engine-test branch]
[FYI] Joe.Kirchoff
Original CL Desc
-----------------------------------------------------------------
vcpkg: Remove v141 as vs2017 is no longer supported and use v142 for external modules. Add configs for v143 for when vcpkg supports it.
#rb none
#rnx
#ROBOMERGE-AUTHOR: joe.kirchoff
#ROBOMERGE-SOURCE: CL 17589155 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v871-17566257)
[CL 17589191 by joe kirchoff in ue5-release-engine-test branch]
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]
Support "Internal" include directory that will only be added to a Referencing module if the referenced module has the same scope. Intent is to to "hide" APIs from external modules that do not need to include headers that are intended for internal module use only.
#jira UE-112188
#rb Ben.Marsh
#preflight 610085314cd79300016e7269
#ROBOMERGE-SOURCE: CL 16976401 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v838-16927207)
[CL 16976411 by joe kirchoff in ue5-release-engine-test branch]
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]