Commit Graph

362 Commits

Author SHA1 Message Date
christopher waters
61c46609c0 EngineIncludeOrderVersion cleanup
- Deprecating EngineIncludeOrderVersion.Unreal5_0 and EngineIncludeOrderVersion.Unreal5_1.
- Adding way more comments on EngineIncludeOrderVersion including warnings about using EngineIncludeOrderVersion.Latest.

#jira none
#rb joe.kirchoff

[CL 26161171 by christopher waters in 5.3 branch]
2023-06-21 16:32:01 -04:00
calvin zheng
3f9b3b622b - Moved SDK versions (MainVersion and Min/Max SDK version) from C# strings to SDK.json files in the Platform's Config folder
- Allow for per-project override in a project's platform's config folder (this is merging with my other work on per-project SDKs and validation of multi-target builds)
- More versions will move over after this
#rb david.harvey


#[robomerge][bot5] -FNMain

#ushell-cherrypick of 26150552 by josh.adams

[CL 26152902 by calvin zheng in 5.3 branch]
2023-06-21 12:34:18 -04:00
joe kirchoff
9a4adcccc3 UnrealBuildTool: Only enable deterministic mode for Shipping by default, as it affects msvc compile time due to disabled codegen multithreading
#rb Bryan.Sefick

[CL 25997336 by joe kirchoff in ue5-main branch]
2023-06-14 17:42:16 -04:00
bryan sefcik
c1d8b7e0c7 Updated MSVC weight to be 1.0f
Before:
Total time in Parallel executor: 2602.17 seconds
Total execution time: 2642.38 seconds

After:
Total time in Parallel executor: 2259.58 seconds
Total execution time: 2296.80 seconds

#jira

[CL 25965005 by bryan sefcik in ue5-main branch]
2023-06-13 17:43:12 -04:00
christopher waters
c1db7ce35f Adding header specific compile options
- -IncludeHeaders will add individual header compiles to the build.
- -HeadersOnly when used with -IncludeHeaders will compile only the headers. This replaces -IWYUHeadersOnly.
- Ported file collision support over from ClangToolChain into VCToolChain

#rb henrik.karlsson

[CL 25899533 by christopher waters in ue5-main branch]
2023-06-09 14:23:34 -04:00
Lectem
44000d35f9 Adding per Target controls for ALLOW_PROFILEGPU_IN_TEST and ALLOW_PROFILEGPU_IN_SHIPPING.
#jira UE-187910
#rb mickael.gilabert, joe.kirchoff, ben.woodhouse, mihnea.balta

[CL 25883632 by Lectem in ue5-main branch]
2023-06-08 17:30:46 -04:00
joe kirchoff
581832117c Update BuildSettingVersion.Latest to V4
[CL 25881036 by joe kirchoff in ue5-main branch]
2023-06-08 16:11:38 -04:00
joe kirchoff
3cde89ad9a BuildSettingsVersion.V4: Default CppStandard to Cpp20. Latest is not being updated to V4 with this change and will happen at a later date
* Add new setting CppStandardEngine so this can be controlled separately for engine module
* CppStandard no longer requires RequiresUniqueBuildEnvironment as it does not affect engine modules

#rb christopher.waters

[CL 25821375 by joe kirchoff in ue5-main branch]
2023-06-06 13:38:28 -04:00
galeone
431c09150e [UBT] Add support for Code coverage on Linux
#rb Brandon.Schaefer, Jerome.Delattre, Joe.Kirchoff

[CL 25794147 by galeone in ue5-main branch]
2023-06-05 12:03:25 -04:00
joe kirchoff
acacd6a8de UnrealBuildTool: More automated code cleanup
* Use object type rather than var
* Remove double newlines
* Use pattern matching

#rnx
#preflight 647780095d23eca37d28a387

[CL 25706751 by joe kirchoff in ue5-main branch]
2023-05-31 13:37:21 -04:00
joe kirchoff
acf80ab609 [Backout] - CL25694851
[FYI] Joe.Kirchoff
Original CL Desc
-----------------------------------------------------------------
UnrealBuildTool: More automated code cleanup

#rnx

[CL 25695155 by joe kirchoff in ue5-main branch]
2023-05-30 19:55:37 -04:00
joe kirchoff
7ed1a39679 UnrealBuildTool: More automated code cleanup
#rnx

[CL 25694864 by joe kirchoff in ue5-main branch]
2023-05-30 19:36:05 -04:00
joe kirchoff
c04da27b3b UnrealBuildTool: More automated code cleanup
#rnx
#preflight 64767efb4b1ead7c7f428c7a

[CL 25693857 by joe kirchoff in ue5-main branch]
2023-05-30 18:59:32 -04:00
joe kirchoff
36d266e932 UnrealBuildTool: Automated code cleanup
#rnx
#preflight 6476799e947ff6973c225619

[CL 25693241 by joe kirchoff in ue5-main branch]
2023-05-30 18:38:07 -04:00
joe kirchoff
57a8fe409c UnrealBuildTool: Use expression body for simple properties and accessors
#rnx
#preflight 64766abcfe6a3b258a04cb50

[CL 25691579 by joe kirchoff in ue5-main branch]
2023-05-30 18:01:50 -04:00
rex hill
db72795a2b [UnrealBuildTool] Add option to throw exception when plugin in DisablePlugins list is enabled by another plugin's dependency
#preflight 6470d4ff5b1dc793b717b5ea
#rb joe.kirchoff, josh.adams

[CL 25650788 by rex hill in ue5-main branch]
2023-05-26 15:09:09 -04:00
marc audy
b85c7f6304 [Backout] - CL25633679
[FYI] jodon.karlik
Original CL Desc
-----------------------------------------------------------------
UBT: Recursively gather the PublicDependencies and link the entire chain so the writer of a module does not need to understand the linking requirements of every Plugin they use.

#jira UE-166371
#preflight 646fbee150786bb5ba9e2ed2

[CL 25646787 by marc audy in ue5-main branch]
2023-05-26 12:41:53 -04:00
jodon karlik
6c93e02c88 UBT: Recursively gather the PublicDependencies and link the entire chain so the writer of a module does not need to understand the linking requirements of every Plugin they use.
#jira UE-166371
#preflight 646fbee150786bb5ba9e2ed2

[CL 25646395 by jodon karlik in ue5-main branch]
2023-05-26 12:35:49 -04:00
tim smith
cdcd50de2d Fix issue with UBT where the UE_TARGET_NAME isn't the actual target name. This resulted in HotReload and Live Coding to no longer work when used with a non-unity build.
#rb joe.kirchoff
#preflight 646e3a986c2a2532b1e663d4

[CL 25608143 by tim smith in ue5-main branch]
2023-05-24 13:48:35 -04:00
saltanat janybekova
7f796ca789 Preconditions:
- Open QAGame in Unreal Editor
- From the File Menu bar, select File > New Level
- Create a new Basic Template level

Steps:
1) Within the viewport, select the Floor mesh

2) Within the Details Panel's Components section, select Add

3) Search for PCG

4)The PCG Component is exposed within an Actor's Component section within the viewport

#jira UEENGQA-84969
#rb jerome.delattre chris.constantinescu tim.gautier
#preflight 64630ec1cf4562e0962dfc48

[CL 25604396 by saltanat janybekova in ue5-main branch]
2023-05-24 11:32:57 -04:00
Joe Kirchoff
2907946ca1 Remove platform
#rnx
#jira UE-114382
#rb Josh.Adams
#rb Ryan.Hummer
#preflight 645eaf1eb71b8186aa02706b

[CL 25460968 by Joe Kirchoff in ue5-main branch]
2023-05-12 18:03:33 -04:00
joe kirchoff
1746b124d3 UnrealBuildTool: Add AdditionalData propety to TargetRules, allowing a user to pass arbitary objects from a Target to any ModuleRules without needing to recompile UnrealBuildTool (request via UDN)
#rnx
#rb trivial

[CL 25438625 by joe kirchoff in ue5-main branch]
2023-05-11 19:37:01 -04:00
brian white
87670c07a6 Restore functionality of the "-ini:" command line argument in UBT. Also restrict the scope of command line arguments parsed in ConfigCache::ReadHierarchy to prevent reading arguments from other "Target" command lines.
#jira none, seen on horde: https://horde.devtools.epicgames.com/job/6452e7bef007deab84c2680c?step=6cf6
#rb Josh.Adams
#preflight 645414f36c35ad81e6167d51

[CL 25388035 by brian white in ue5-main branch]
2023-05-09 10:56:54 -04:00
Joe Kirchoff
a14ccb7aae UnrealBuildTool: SetDefaultsForCookedEditor requires a unique build environment
#rnx
#jira UE-170947
#preflight 6449cbf71c2846595c3a0feb

[CL 25210303 by Joe Kirchoff in ue5-main branch]
2023-04-26 21:34:57 -04:00
Joe Kirchoff
328db31586 UnrealBuildTool: Always compile engine modules with C++20, unless the platform doesn't support it
* Add MaxCppStandard option to the target, so the CppStd can be limited if it would be set higher for any reason. HoloLens for example does not support c++20 because it uses the /ZW flag to enable WinRT and these are incompatible. I will look into making WinRT only be added if it is required for a Module at a later time
* Any module that sets bTreatAsEngineModule will be upgraded to c++20 unless it has already overridden it to c++17, unless MaxCppStandard is set.
* Some modules, mostly in plugins, are set in the ModuleRules to always build with c++17. This is generally because third party source is included that are incompatible with c++20 but there are a few cases that should be looked into later
* VS2019 needed a few extra fixes but also supports c++20. Reminder that support for the 2019 toolchain is going to be removed in 5.5

#jira UE-182121
#rb Francis.Hurteau
#preflight 6441adee434155a8f8688d45
#preflight 6441adfcf030f684d53981c5

[CL 25153700 by Joe Kirchoff in ue5-main branch]
2023-04-21 17:04:15 -04:00