Commit Graph

104 Commits

Author SHA1 Message Date
chris constantinescu
1278a26f76 Low level tests further refactoring and test resource deployment
#preflight 626955ed0d4ac78d716eacf0
#rnx

[CL 19941830 by chris constantinescu in ue5-main branch]
2022-04-27 12:36:35 -04:00
charles lefebvre
e9c1b7e4d4 Add an option to discard circular dependency validation for non engine modules
#rb jonathan.adamczewski
#rnx
#preflight 6261e03bfe26b98ad84e1b0e

#ROBOMERGE-AUTHOR: charles.lefebvre
#ROBOMERGE-SOURCE: CL 19858990 via CL 19863809 via CL 19863885
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v940-19807014)

[CL 19871119 by charles lefebvre in ue5-main branch]
2022-04-22 15:57:39 -04:00
chris constantinescu
28111d40fc Redundancy cleanup in UBT Low Level Tests:
- test-specific targets and modules are constructed by RulesAssembly which removes a lot of spaghetti code
- no more excluding the Tests folder by default which is guaranteed to mislead users #fyi Jon.Nabozny
- test compilation in Tests is controlled through WITH_LOW_LEVEL_TESTS
- preparation code for switching tests between Catch2 / TestAutomation Fmwk

Nightly LLT PF 6260431391376845adeb4c40

#rnx
#preflight 62602d50dd47b4ad2173c30b

[CL 19834665 by chris constantinescu in ue5-main branch]
2022-04-20 14:24:59 -04:00
jonathan adamczewski
d4f03243e3 Remove various obsolete (deprecated) items in C# code
#jira none
#trivial
#rnx
#preflight 625a32bbde3638cefa4106cb

[CL 19786027 by jonathan adamczewski in ue5-main branch]
2022-04-18 11:27:53 -04:00
christopher waters
22de0b360d Adding a "deprecation" path for engine includes to allow types to be moved without breaking licensee module builds.
- Non-engine modules/targets will have to specify the "version" of includes via IncludeOrderVersion in TargetRules or ModuleRules.
- This setting will control the value of UE_ENABLE_INCLUDE_ORDER_DEPRECATED_IN_XXX where XXX is the version of the engine.
- When moving types out of a header, users will need to include the new location of the type in the header it was removed from but only if UE_ENABLE_INCLUDE_ORDER_DEPRECATED_IN_XXX is set.
- If a target does not change its IncludeOrderVersion to the latest version, UBT will print out a message telling users how to upgrade.
- This change introduces a new set of SharedPCH permutations to make sure modules with older versions get the PCH with UE_ENABLE_INCLUDE_ORDER_DEPRECATED_IN_XXX set correctly.

#jira none
#rb jonathan.adamczewski, joe.kirchoff
#preflight 623e1d3d196f3ae80b4c37ee

[CL 19518359 by christopher waters in ue5-main branch]
2022-03-25 16:16:30 -04:00
markus breyer
f2f4745eb2 Removed obsolete module rules property AdditionalCodeGenDirectories
#rb jonathan.adamczewski
#rnx
#preflight 62390b870820efd0948fbc5e

#ROBOMERGE-AUTHOR: markus.breyer
#ROBOMERGE-SOURCE: CL 19461822 via CL 19465279 via CL 19465809 via CL 19475541 via CL 19475821
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v935-19464907)

[CL 19476440 by markus breyer in ue5-main branch]
2022-03-23 01:25:15 -04:00
markus breyer
83a1800927 Introduced new property "VersePath" in plugin descriptor and module rules
#rb jonathan.adamczewski, tim.tillotson
#rnx
#preflight 6216ef19104496cff8ae5564

#ROBOMERGE-AUTHOR: markus.breyer
#ROBOMERGE-SOURCE: CL 19224088 via CL 19227926 via CL 19237742 via CL 19237888 via CL 19238470
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19239355 by markus breyer in ue5-main branch]
2022-03-03 01:26:50 -05:00
chris constantinescu
c8cb8f0b04 Module-level setup/teardown with the help of source file build order overrides.
- 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]
2022-02-22 13:52:35 -05:00
joe kirchoff
1910fbc417 vcpkg: Update libs to v142 now that we enforce a newer msvc version
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]
2022-01-24 11:50:55 -05:00
chris constantinescu
55e80d2462 Test Mode: boolean flag on ModuleRules class that allows including Tests folder into non-test builds.
#rnx
#preflight 61eb1ea5731e3b40889eaece

[CL 18697083 by chris constantinescu in ue5-main branch]
2022-01-21 16:53:29 -05:00
chris constantinescu
8c968941f9 UBT TestMode that allows building a test executable for an associated target.
- 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]
2022-01-19 15:00:37 -05:00
jonathan adamczewski
5b47c771a0 UnrealBuildTool: Remove various references to UE4.
#jira UE-111420
#trivial
#preflight none

#ROBOMERGE-AUTHOR: jonathan.adamczewski
#ROBOMERGE-SOURCE: CL 18565554 in //UE5/Release-5.0/... via CL 18565574 via CL 18565586
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Test -> Main) (v899-18417669)

[CL 18565609 by jonathan adamczewski in ue5-main branch]
2022-01-10 16:46:54 -05:00
jonathan adamczewski
c7aeb00f62 UnrealBuildTool: Remove various references to UE4.
#jira UE-111420
#trivial
#preflight none

#ROBOMERGE-AUTHOR: jonathan.adamczewski
#ROBOMERGE-SOURCE: CL 18565554 in //UE5/Release-5.0/... via CL 18565574
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18565586 by jonathan adamczewski in ue5-release-engine-test branch]
2022-01-10 16:46:00 -05:00
JeanMichel Dignard
ac2243c139 UnrealBuildTool: Added TargetRules.bCompileAgainstEditor to enable our low level tests programs to compile against and test editor code.
- 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]
2021-12-09 10:13:16 -05:00
jonathan adamczewski
7464f272f9 Remove (typed) references to NDA platforms
#rb josh.adams

#ROBOMERGE-AUTHOR: jonathan.adamczewski
#ROBOMERGE-SOURCE: CL 18265553 in //UE5/Release-5.0/... via CL 18265561
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18265564 by jonathan adamczewski in ue5-release-engine-test branch]
2021-11-22 19:54:34 -05:00
Marc Audy
0c3be2b6ad Merge Release-Engine-Staging to Test @ CL# 18240298
[CL 18241953 by Marc Audy in ue5-release-engine-test branch]
2021-11-18 14:37:34 -05:00
aurel cordonnier
fc542f6cfd Merge from Release-Engine-Staging @ 18081189 to Release-Engine-Test
This represents UE4/Main @18073326, Release-5.0 @18081140 and Dev-PerfTest @18045971

[CL 18081471 by aurel cordonnier in ue5-release-engine-test branch]
2021-11-07 23:43:01 -05:00
aurel cordonnier
a6e741e007 Merge from Release-Engine-Staging @ 17915896 to Release-Engine-Test
This represents UE4/Main @17911760, Release-5.0 @17915875 and Dev-PerfTest @17914035

[CL 17918595 by aurel cordonnier in ue5-release-engine-test branch]
2021-10-25 20:05:28 -04: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
joe kirchoff
b2a7656595 [Backout] - CL17558300
[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]
2021-09-21 18:23:20 -04:00
joe kirchoff
d5b2f56b90 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 17558300 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17558318 by joe kirchoff in ue5-release-engine-test branch]
2021-09-17 16:55:50 -04:00
ben marsh
25971ca93c UBT: Fix exception trying to serialize overrides for warning levels to XML config cache.
#ROBOMERGE-AUTHOR: ben.marsh
#ROBOMERGE-SOURCE: CL 17492941 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17492973 by ben marsh in ue5-release-engine-test branch]
2021-09-13 12:30:37 -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
joe kirchoff
6ea2ba2e56 vcpkg: Include paths should be added to PublicSystemIncludePaths, not PublicIncludePaths
#rb trivial
#rnx
#preflight 610090f35938f90001f15074

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

[CL 16977623 by joe kirchoff in ue5-release-engine-test branch]
2021-07-27 21:16:51 -04:00
joe kirchoff
b8b683acbe UnrealBuildTool: Distinguish Internal from Public API
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]
2021-07-27 19:39:41 -04:00