Commit Graph

1546 Commits

Author SHA1 Message Date
Ben Marsh
f5ded91b41 UBT: Add support for throwing exceptions with structured logging events.
#preflight none
#fyi Joe.Kirchoff

[CL 22205263 by Ben Marsh in ue5-main branch]
2022-09-27 10:11:19 -04:00
nuno leiria
42049243ac Implemented ThinLTO cache and pruning arguments in UBT
#preflight 632c24691003050806482034
#rb Joe.Kirchoff, Wojciech.Krywult, Brian.White

[CL 22204860 by nuno leiria in ue5-main branch]
2022-09-27 09:48:46 -04:00
chris varnsverry
28126bc559 - Add missing EOSAuthHandlerActivity and intent-filter(s), required for login to work on Android
#jira OI-4946
[REVIEW] [at]Rob.Cannaday [at]Roman.Dzieciol [at]Sam.Zamani
#preflight 63299a7ef45b523a63f36ffa

[CL 22090859 by chris varnsverry in ue5-main branch]
2022-09-20 08:10:51 -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
ddde68229a UnrealBuildTool: Also check for .git file as that denotes a git worktree, when getting the source file working set
#jira UE-163648
#rnx
#rb trivial
#preflight 63224a07e93a80888cc68507

[CL 22019750 by joe kirchoff in ue5-main branch]
2022-09-14 18:56:57 -04:00
tim smith
a13076902b Added warnings when C++ UHT is used. These warnings include the reasons why C++ UHT is being used. The warning is currently disabled but informational messages will still be generated.
#rb
#preflight 6322088da514fd1e37319c62

[CL 22015813 by tim smith in ue5-main branch]
2022-09-14 16:44:09 -04:00
bryan sefcik
f402b6abb5 Fixed an issue where people using writable workspaces would compile everything without using unity files because of the change to merge .gen.cpp files with module .cpp files in unity files.
#jira
#preflight 631f967180642a7fa7851034

[CL 21985018 by bryan sefcik in ue5-main branch]
2022-09-13 12:23:39 -04:00
josh adams
e41490b912 - Added a system to remap .ini section and key names. This will convert names on load, so saving out the section will use new names, and should not cause issues (we do not force update because the files are usually checked in, so we warn in logs and in the editor on start to tell folks to update).
- Deprecation warnings will show up in C# log, C++ log and in editor as a load warning
- Next changelist will use the system to make some replacements
#rb david.hibbits
#jira UE-130960
#preflight 631f3c4194758d0bf225bd95

[CL 21974033 by josh adams in ue5-main branch]
2022-09-12 18:15:29 -04:00
joe kirchoff
9d5e715748 UnrealBuildTool: Option to consider logical cores when running local builds
#jira UE-163438
#rnx
#rb none
#preflight 631baf2a304480f8f8bceac6

[CL 21930861 by joe kirchoff in ue5-main branch]
2022-09-09 19:16:18 -04:00
Per Larsson
08f4fb53ae Crypto - only write Crypto.json if the settings has been changed for better iterative cooks
#rb PJ.Kack
#jira UE-156002
#9265
#preflight 6310a98ee352708d4462f2a9

[CL 21738827 by Per Larsson in ue5-main branch]
2022-09-01 08:55:48 -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
Joe Kirchoff
636d17c398 UnrealBuildTool: Option to remove '_of_x' from cpp unity filenames
#rnx
#rb trivial
#preflight 63055e53ae13a5a09802f76f

[CL 21525184 by Joe Kirchoff in ue5-main branch]
2022-08-23 19:26:22 -04:00
dmytro vovk
37b8ab825c Deprecated bCompileForSize UBT Target option and replaced with OptimizationMode enumto fine tune a balance between speed and\or code size
#jira none
#rb Joe.Kirchoff
#preflight 62ff99b0200ff87e07f75a69

[CL 21511266 by dmytro vovk in ue5-main branch]
2022-08-23 12:44:36 -04:00
gary yuan
7e85f4f2ac #jira: none
Fix if conditional logic in TryGetValue for Enum TryParse

#rb Tim.Kennedy
#preflight: 62feeb09d85afae4d4508ddf
[FYI] ben.marsh

[CL 21499938 by gary yuan in ue5-main branch]
2022-08-22 21:22:31 -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
marc audy
9dc0fb13b0 Make CreateTargetRulesInstance able to return null in the case a rules assembly does not exist
This fixes issues with platform extensions when using -TargetType
#rb Joe.Kirchoff, Josh.Adams

#ROBOMERGE-AUTHOR: marc.audy
#ROBOMERGE-SOURCE: CL 21408188 via CL 21408217
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v975-21357124)

[CL 21411933 by marc audy in ue5-main branch]
2022-08-16 15:31:02 -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
UnrealBot
73409369c0 Branch snapshot for CL 21319338
[CL 21319338 in ue5-main branch]
2022-08-10 16:03:37 +00: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
jorgenpt
86e78f4299 PR #9021: Improve support for PreBuildSteps generating files (Contributed by jorgenpt)
#rb trivial
#preflight 62d5b5bf950c572d242a6c8d

[CL 21152219 by jorgenpt in ue5-main branch]
2022-07-18 16:23:54 -04:00
Wojciech Krywult
dc47ecf009 Modular builds: UBT: Added an option to generate .loadorder manifest file that includes a list of all dynamic modules in the order in which they are meant to be loaded (based on their dependencies).
It's needed on some platforms that don't handle DLLs dependencies out of the box. Generation of this file is integrated into the build metadata generation but is only triggered for platforms that explicitly indicate that it's needed (UEBuildPlatform.RequiresLoadOrderManifest()).

#rb Joe.Kirchoff
#preflight 62d57764f156340c79b98306

[CL 21149087 by Wojciech Krywult in ue5-main branch]
2022-07-18 11:31:22 -04:00
Tim Smith
5200aeebdb Fixed issue with UAT/UBT script module rebuild tracking. If MSBuild doesn't update the target DLL due to there being no real changes, then the simple check against target time stamps being out of order would fail. Changed to save the reference time stamp and then compare them to test to see if they don't match.
Minor refactor to how valid and invalid build records are tracked.

#rb josh.adams
#preflight 62d15d263b057e7274876325

[CL 21108749 by Tim Smith in ue5-main branch]
2022-07-15 08:42:45 -04:00
Joe Kirchoff
e7bed3a793 UnrealBuildTool: Report in the log when a dependency file is missing instead of printing an invalid timestamp
#rnx
#rb trivial
#preflight 62bb99da30036d0db9438dc8

[CL 20867012 by Joe Kirchoff in ue5-main branch]
2022-06-28 20:22:32 -04:00