Commit Graph

164 Commits

Author SHA1 Message Date
joe kirchoff
4bd342fb6c UnrealBuildTool: BuildSetting.V3 (currently disabled) which disallows adding module parent directory to include path list
#rnx
#rb bryan.sefcik
#preflight 634df3105f008d633fd571d2

[CL 22798627 by joe kirchoff in ue5-main branch]
2022-10-26 19:13:07 -04:00
joe kirchoff
20c19d6503 [Backout] - CL22754728
[FYI] Joe.Kirchoff
Original CL Desc
-----------------------------------------------------------------
UnrealHeaderTool: BuildSetting.V3 (currently disabled) which disallows adding module parent directory to include path list

#rnx
#rb bryan.sefcik
#preflight 634df3105f008d633fd571d2

[CL 22795918 by joe kirchoff in ue5-main branch]
2022-10-26 18:18:06 -04:00
joe kirchoff
6e28fec987 UnrealHeaderTool: BuildSetting.V3 (currently disabled) which disallows adding module parent directory to include path list
#rnx
#rb bryan.sefcik
#preflight 634df3105f008d633fd571d2

[CL 22793005 by joe kirchoff in ue5-main branch]
2022-10-26 17:30:50 -04:00
henrik karlsson
19a8eac8c1 [UBT]
* Fixed bug where name collision happened if both VNI and UHT files were created for same file

Fixes VerseExample UBT exception

#rb none
#preflight none

[CL 22783396 by henrik karlsson in ue5-main branch]
2022-10-26 13:07:08 -04:00
bryan sefcik
a86a03522d Added a bool setting to allow us to turn off the forcing of PCH files for gen.cpp files when PCH is disabled. This improves NoPCH/DisableUnity compile times.
#jira
#preflight 63518daf3d41a4455a3de844

[CL 22677159 by bryan sefcik in ue5-main branch]
2022-10-20 20:09:31 -04:00
henrik karlsson
a72cec4bbc [UnrealBuildTool]
* Added support for forcing module to use inlined .gen.cpp files

#rb joe.kirchoff
#preflight skipped

[CL 22673962 by henrik karlsson in ue5-main branch]
2022-10-20 17:53:32 -04:00
bryan sefcik
3c6a04fdf6 Fixed an issue where SNDBS would fail to compile files on agents because the inlined gen.cpp files were not setup as prerequisites.
#rb joe.kirchoff

[CL 22464949 by bryan sefcik in ue5-main branch]
2022-10-11 16:49:17 -04:00
Robert Millar
a677dbc70e Allow disabling all static analysis on a module.
#rb joe.kirchoff
#jira none
#preflight https://horde.devtools.epicgames.com/job/6340540e174b13865728ca7c

[CL 22403984 by Robert Millar in ue5-main branch]
2022-10-07 13:30:19 -04:00
bryan sefcik
2a23602913 Fixed an issue the BF was seeing with compiling non-unity builds that use the inline gen.cpp macro.
#preflight 6330d4e3d747fe52c8739b78

[CL 22177396 by bryan sefcik in ue5-main branch]
2022-09-25 19:36:22 -04:00
joe kirchoff
03ac9fef1e UnrealBuildTool: Fix another instance where all writable source files would incorrectly add many files to the adaptive working set
#jira UE-163272
#rnx
#rb trivial
#preflight 632defa4d51603c548982fbe

[CL 22165269 by joe kirchoff in ue5-main branch]
2022-09-23 20:44:32 -04:00
bryan sefcik
dc368e588b Added the ability to override the NumIncludedBytesPerUnityCPP from the module rules. This is needed by some modules to better tune the size of the unity files.
Before:
1 Unity file
Total CPU Time: 162.90625 s
Total time in Parallel executor: 61.62 seconds

After:
6 Unity files
Total CPU Time: 169.15625 s
Total time in Parallel executor: 16.64 seconds

#jira
[FYI] nick.darnell, joe.kirchoff
#preflight 632889795f55ba280ec1ef84

[CL 22087017 by bryan sefcik in ue5-main branch]
2022-09-19 21:57:04 -04:00
bryan sefcik
e5edfdd06d Added support to inline the gen.cpp files into the module cpp files.
This change does a few things:
* Improves compile times because the gen.cpp is inlined so less header parsing is required.
* Allows us to forward declare more types in the headers where we were not able to because the gen.cpp files did not have all the required headers included. The gen.cpp files required the header that generated it to include all the types because of the constructor and desructor in the gen.cpp need to know the full type.

#jira
#preflight 6323b43f8131e92d65aed1d9

[CL 22064061 by bryan sefcik in ue5-main branch]
2022-09-16 20:28:51 -04:00
Joe Kirchoff
2f253dda67 UnrealBuildTool: Support -SingleFile compile for .mm and .rc files
#rnx
#rb trivial
#preflight 63127c7eda1671f997d729d8

[CL 21769171 by Joe Kirchoff in ue5-main branch]
2022-09-02 18:35:54 -04:00
Joe Kirchoff
9b55ef770f UnrealBuildTool: Determinisitic build configuration update to manage via TargetRules and ModuleRules
#rnx
#rb none
#preflight 63056e3a516bef57ffc5a099

[CL 21527850 by Joe Kirchoff in ue5-main branch]
2022-08-23 20:33:31 -04:00
Jeff Fisher
773631b6f9 UE-147894 Delete WMR
-Remove the deprecated WindowsMixedReality and AzureSpatialAnchorsForWMR plugins.
#jira UE-147894
#review-21507768
#rb Robert.Srinivasiah
#preflight 630554dc5a5d4e46243727f3

[CL 21523822 by Jeff Fisher in ue5-main branch]
2022-08-23 18:49:58 -04:00
bryan sefcik
9feb0e9764 Added a mode that prints out useful build graph info.
#jira
#rb tim.smith
#preflight 62ffc2b8fa1ac183e590874b

[CL 21460072 by bryan sefcik in ue5-main branch]
2022-08-19 13:11:54 -04:00
henrik karlsson
9b603cee85 [UnrealBuildTool]
* Added support for ".ubtignore" files that can be put in a folder to make ubt ignore the folder and its subfolder
* Fixed bug where project's plugin and source folder were visited multiple times (look in FileMetadataPreftch.cs)
* Changed so Lazy<File/DirectoryItem> is resolved directly on windows platform and only do the extra refresh on mac/linux (there seems to be some bugs on those platforms and we don't want to pay extra cost on windows)
* Added runtimeconfig.template.json and changed UnrealBuildTool to use server gc and a few more settings that improve performance
* Added so all file traversing paths is aware of .uplugin
* Added debug code to be able to write out which files that have been touched during UBT execution. This can serve as a way to identify places to add .ubtignore files

#rb Joe.Kirchoff
#preflight 62f685f8cf7afa018ba0a4a5

#ROBOMERGE-AUTHOR: henrik.karlsson
#ROBOMERGE-SOURCE: CL 21360427 via CL 21371108 via CL 21371121 via CL 21371139
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21371637 by henrik karlsson in ue5-main branch]
2022-08-13 02:43:13 -04:00
Joe Kirchoff
371c0b0624 UnrealBuildTool: Move static analysis checker options into ModuleRules rather than TargetRules
#rnx
#rb none
#preflight 62f6e75de67510be05db43f9

[CL 21368307 by Joe Kirchoff in ue5-main branch]
2022-08-12 20:06:00 -04:00
kaffeewolf
a3acfba5d6 PR #9449: Add support for specifying C Standard when compiling plain C files (Contributed by kaffeewolf)
#rb none
#preflight 62f2f8c33f500fb6dc059f18

[CL 21305284 by kaffeewolf in ue5-main branch]
2022-08-09 20:34:50 -04:00
bryan sefcik
d7de18b231 Added the ability to turn off merging of module and generated cpp files in the module.
#jira

#ROBOMERGE-AUTHOR: bryan.sefcik
#ROBOMERGE-SOURCE: CL 21157633 via CL 21159485 via CL 21164382
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21182322 by bryan sefcik in ue5-main branch]
2022-07-20 12:10:32 -04:00
Ben Marsh
2358410789 UBT: Fix ability to do single file compiles on a generated header.
#preflight none

[CL 21018550 by Ben Marsh in ue5-main branch]
2022-07-08 20:55:22 -04:00
will damon
0b522316a3 Remove AGXRHI and associated components from mainline.
- AGXRHI development is now occurring in a separate branch/stream.
- Relocate Engine/Source/Runtime/Apple/Common/Public/* -> Engine/Source/Runtime/Apple/MetalRHI/Public/*
- Update module dependencies, etc.

#rb will.damon
#jira none
#rnx
#preflight 62b610597c36e130975e1332

[CL 20817379 by will damon in ue5-main branch]
2022-06-24 17:44:05 -04:00
bryan sefcik
1b2a0a8c56 * Combined generated cpp files and module cpp files into the same unity files.
ShooterGame Editor with 8 processes:
Before:
3706 compile tasks
1517.98 seconds

After:
3372 compile tasks
1428.56 seconds

Game Editor with 64 processes:
Before:
6323 compile tasks
1090.78 seconds

After:
5666 compile tasks
1063.90 seconds
#preflight 62b4820d1371af05d9f26407

[CL 20796589 by bryan sefcik in ue5-main branch]
2022-06-23 12:22:28 -04:00
bryan sefcik
201f16b130 * Added debug pch info.
#preflight 62abf6a95c69124c409fd15c

[CL 20699299 by bryan sefcik in ue5-main branch]
2022-06-16 23:51:17 -04:00
Ben Marsh
cbb950c578 UBT: Use ILogger throughout UBT, rather than legacy EpicGames.Core.Log methods. All output going forwards should use structured logging rather than String.Format style logging.
#preflight 628e9dc6e746de4961f60032

[CL 20373777 by Ben Marsh in ue5-main branch]
2022-05-25 19:55:37 -04:00