Commit Graph

235 Commits

Author SHA1 Message Date
joe kirchoff
c5fd3412c1 UnrealBuildTool: Always add CppStandard to PCH variant name, to prevent creating duplicate PCH when the engine's cpp standard is mismatched with a project
#rnx

[CL 25826166 by joe kirchoff in ue5-main branch]
2023-06-06 15:59:09 -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
robert millar
6bdae7d69e Additional crash reporting information.
- Whether the binaries were created with debug info.
- Engine 'compatible' version from build info.
- CIS job URL that created the binaries.
- Currently executing CIS job URL.

#rb johan.berg

[CL 25796770 by robert millar in ue5-main branch]
2023-06-05 13:22:14 -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
bryan sefcik
e40d241cde Updated the shared pch logic to not follow the private module dependencies/includes when getting all the possible modules referenced in the pch header.
#jira
#preflight 647bc13b67505cf55c9db0c0

[CL 25783023 by bryan sefcik in ue5-main branch]
2023-06-03 19:34:57 -04:00
bryan sefcik
5fcc1c97a3 Updated the shared pch logic to traverse the dependency tree to find the best shared pch for each module. The logic before would only look at the direct dependencies which if changed could result in possibly worse compile times because a less optimal pch could be picked.
Note: There however are occasions where the old logic can give better shared pchs because it doesn't check whether there is a circular dependency. The new logic does check for circular dependencies so it can sometimes return a safer but less optimal shared PCH. If we find the old logic gives a better shared pch then we go ahead and use it. This will be removed after some of the circular dependencies are resolved.

#rb joe.kirchoff
#preflight 6477e3b87f02573726be946c

[CL 25720154 by bryan sefcik in ue5-main branch]
2023-05-31 23:29:01 -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
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
brandon schaefer
918a67f6d9 Support enabling AutoRTFM instrumentation on a Module level in UBT
#rb Neil.Henning, Joe.Kirchoff
#preflight 646655bd743f7c995bc7a7ff

[CL 25532181 by brandon schaefer in ue5-main branch]
2023-05-18 15:44:35 -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
eric knapik
27ddbbdbde #jira: UE-177511
Make UEFN a modular build
Move UEFNEngine.ini under the UEFN plugin so it correctly is loaded

[REVIEW] [at]Chris.Varnsverry, [at]Henrik.Karlsson, [at]Josh.Adams
#preflight 644aeb72b208f61af8395b09
#preflight 644b517b9c50ddcc0b171ca8

[CL 25309650 by eric knapik in ue5-main branch]
2023-05-02 18:25:37 -04:00
Joe Kirchoff
5cc66e0c21 UnrealBuildTool: Correct naming on PCH variants for CppStandard
#rnx
#rb trivial
#preflight 644c1d8609453df5485eda50

[CL 25238379 by Joe Kirchoff in ue5-main branch]
2023-04-28 15:46:18 -04:00
Joe Kirchoff
6f42800561 UnrealBuildTool: Change some LogDebug to LogTrace for very verbose messages
#rnx
#rb trivial
#preflight 64498a3f1150e908d0af862f

[CL 25206696 by Joe Kirchoff in ue5-main branch]
2023-04-26 16:45:59 -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
bryan sefcik
baa4c8aada Updated UBT to throw warnings or errors(based a build config xml property) if there are PCH performance issues detected in the buildgraph.
#rb joe.kirchoff
#fyi marc.audy
#preflight 644172b9935b5081b07edd6c

[CL 25132236 by bryan sefcik in ue5-main branch]
2023-04-20 14:17:10 -04:00
Joe Kirchoff
40fe5af915 UnrealBuildTool: Use a force include file for preprocessor defines in .c files when compiling
#rb trivial
#preflight 644078cfb91c130758cbcf9f

[CL 25120195 by Joe Kirchoff in ue5-main branch]
2023-04-19 19:45:30 -04:00
Joe Kirchoff
bcedb28640 UnrealBuildTool: MSVC deterministic mode pch variant
#rnx
#rb trivial
#preflight 643f391a211b661dc483c71f

[CL 25099894 by Joe Kirchoff in ue5-main branch]
2023-04-18 22:23:21 -04:00
Tim Smith
5a4c8c3cee Fixed issue where the check for first header include was not being reported as an actual warning/error.
#rb ryan.hummer
#preflight 6436c029b67b6017ea5b9ff9

[CL 25007285 by Tim Smith in ue5-main branch]
2023-04-12 10:51:39 -04:00
Jeff Fisher
25ff24a7b1 UE-181824 Move HeadMountedDisplay files to XRBase plugin to reduce UE overhead.
-Moving much of engine/source/runtime/headmounteddisplay to a plugin mainly to reduce minimum UE executable size and memory use.  But this is also nice for organization.  The ideal would be to move everything except interfaces used by core engine. VREditor pulling in UMotionControllerComponent is the main blocker at this time.  That dependency is expected to go away eventually at which point we can do the rest of this transfer.
-Added dependencies to XRBase plugin or module as necessary, refactored to avoid some dependencies, removed a few unnecessary dependencies.
-Stripped vestigial VR references from a few project templates.  Mostly just unused HeadMountedDisplay module refs, but a tiny bit of code from TP_Puzzle.
-Fixed dependency cycle ignores related to MaterialShaderQualitySettings PIEPreviewDeviceProfileSelector and UnrealEd.  For reasons I do not understand the HeadMountedDisplay dependency on AugmentedReality was preventing the detection of those, long existent, cycles.
#jira UE-181824
#review
#rb Robert.Srinivasiah
#preflight 642f3cbf4c3ccbbdf1990a1f  6434291c28551807175e1142

[CL 24984065 by Jeff Fisher in ue5-main branch]
2023-04-10 17:12:32 -04:00
saam barati
33186743fe Fix areas where I used spaces instead of tabs in 24959203
#rb none
#preflight none

[CL 24984001 by saam barati in ue5-main branch]
2023-04-10 17:09:31 -04:00