Commit Graph

770 Commits

Author SHA1 Message Date
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
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
5d35876169 Added support for UE_5_1_OR_LATER style define constants for UBT/UHT C# plugins.
#rb self
#rnx
#preflight 62cd5d7b21129e2bb824626f

[CL 21054775 by Tim Smith in ue5-main branch]
2022-07-12 07:48:21 -04:00
mike beach
456bfdb6a5 For UBT, mimicing changes made on the UE side in CL 20764079.
Adding support for managing multiple plugins, and specifying explicit versions to enable.

#rb joe.kirchoff
#preflight 62b3aedd7113a3a4a485adfc

#ROBOMERGE-OWNER: mike.beach
#ROBOMERGE-AUTHOR: mike.beach
#ROBOMERGE-SOURCE: CL 20801427 via CL 20801485 via CL 20801490
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v971-20777995)

[CL 20803672 by mike beach in ue5-main branch]
2022-06-23 18:08:26 -04:00
chris constantinescu
79078dc749 Low level tests adapter that can translate Catch2-defined test to a Functional Test
#preflight 629f74c6233ae0a8f8fb1f97
#rb Devin.Doucette

[CL 20540119 by chris constantinescu in ue5-main branch]
2022-06-07 12:37:53 -04:00
Joe Kirchoff
7112ec8a91 UnrealBuildTool: Ignore build outputs in manifest when doing a single file compile
#rnx
#rb trivial
#preflight 62914bd2064d4b79f85d729a

[CL 20400492 by Joe Kirchoff in ue5-main branch]
2022-05-27 18:26:12 -04:00
David Harvey
78f7b7e0fd deprecate UnrealPlatformGroup.HoloLens
#jira UE-149794
#rnx
#preflight 6290ba31d24a7fc585eed7ca
#rb pending

[CL 20392934 by David Harvey in ue5-main branch]
2022-05-27 10:10:16 -04:00
David Harvey
684d168454 Remove HoloLens platform references from UnrealBuildTool.
#jira UE-149794
#rnx
#rb Jeff.Fisher
#preflight 628f4064f622d972b5ca0202

[CL 20377314 by David Harvey in ue5-main branch]
2022-05-26 05:57:47 -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
Joe Kirchoff
c512a89ace Rename UnrealBuildTool.EngineSourceDirectory -> Unreal.EngineSourceDirectory
#rnx
#rb trivial
#preflight 628e9fdaf622d972b59ebe85

[CL 20372061 by Joe Kirchoff in ue5-main branch]
2022-05-25 17:54:39 -04:00
Ben Marsh
b1ca1ba693 UBT: Allow overriding the output path for executables.
This may not work with UE code, since the engine assumes the executable is in a certain location to figure out where other known folders are in relation to it, but is useful for programs that do not link against the engine.

#fyi Joe.Kirchoff
#preflight 6287867d8828ea88c84ee81d

[CL 20293094 by Ben Marsh in ue5-main branch]
2022-05-20 08:26:07 -04:00
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
Tim Smith
36421e5c91 Minor refactor to UBT plugins.
Added support for props file for UBT plugins.  Needed for packaging of plugins having a ubt plugin

#rnx
#rb trivial
#preflight 62694f6a7f6900cdefa9431c

[CL 19939499 by Tim Smith in ue5-main branch]
2022-04-27 10:30:21 -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
Tim Smith
ee9ae5c66a Adding UBT plugin support currently only used by UHT
#rb jonathan.adamczewski ben.marsh
#preflight 625ff59ace2ef75d47707e74

[CL 19828042 by Tim Smith in ue5-main branch]
2022-04-20 08:27:26 -04:00
jonathan adamczewski
38fae5272b UnrealBuildTool: Use module's ShortName for code generation directory to help avoid overly long paths
Before:
Intermediate/Build/Win64/UnrealEditor/Inc/MaterialShaderQualitySettings/

After:
Intermediate/Build/Win64/UnrealEditor/Inc/MSQS/

#jira none
#rb tim.smith
#rb markus.breyer
#rb joe.kirchoff
#rb ben.marsh
#rnx
#preflight 6244f495dc6183e3f5fc1bfe

[CL 19576163 by jonathan adamczewski in ue5-main branch]
2022-03-31 14:39:37 -04:00
mickael gilabert
469a7e6fcb UBT: Add -CrashDiagnosticDirectory to set where to put crash report files (for platforms that support it)
[REVIEW] [at]jeff.newquist, [at]joe.kirchoff
#rnx

#ROBOMERGE-OWNER: mickael.gilabert
#ROBOMERGE-AUTHOR: mickael.gilabert
#ROBOMERGE-SOURCE: CL 19555896 via CL 19556567 via CL 19557148 via CL 19557163
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v937-19513599)

[CL 19561558 by mickael gilabert in ue5-main branch]
2022-03-30 14:42:23 -04:00
jonathan adamczewski
0a6164bbd3 nullability annotations, rethrow fixes, net6.0 warning suppression
#jira none
#trivial
#rnx
#preflight 62425155c61d8a458f230657

[CL 19536049 by jonathan adamczewski in ue5-main branch]
2022-03-28 20:50:06 -04:00
jonathan adamczewski
5c68d1d9ef Revert //UE5/Main/... changelist 19531725 - return to NET Core 3.1
#preflight 62422fd0470aff98e946bfce
#jira UE-119846

[CL 19534572 by jonathan adamczewski in ue5-main branch]
2022-03-28 18:25:19 -04:00
jonathan adamczewski
18ac15cbb1 Upgrade to .NET 6.0
#jira UE-119846
#preflight 6241fc06470aff98e943c035

[CL 19531725 by jonathan adamczewski in ue5-main branch]
2022-03-28 15:30:56 -04:00
David Harvey
5214adb5c9 Toolchains can modify the target receipt, for adding custom properties etc.
#jira UE-146417
#rb Eric.McDaniel
#rnx
#preflight 623c393b89625f0612d522fb

[CL 19492903 by David Harvey in ue5-main branch]
2022-03-24 05:32:04 -04:00
mickael gilabert
8fd8151c2e UnrealBuildTool: Add -PackagePath to set destination folder of input files used at link time (normally used to debug a linker crash for platforms that support it)
[REVIEW] [at]joe.kirchoff, [at]jeff.newquist, [at]ryan.hummer
#rnx

#ROBOMERGE-AUTHOR: mickael.gilabert
#ROBOMERGE-SOURCE: CL 19426025 via CL 19426051 via CL 19431658 via CL 19435910 via CL 19436496
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v930-19419903)

[CL 19437798 by mickael gilabert in ue5-main branch]
2022-03-18 13:22:54 -04:00
Ben Marsh
8bfdd6d555 UBT: Tweak how single-file compiles work.
- When a file list is specified, any headers identified via a scan are added to a separate list of files to be compiled. These are always considered optional; since we don't know for sure whether they're part of the target, they are excluded from checks that require a matching binary to be identified for them.
- The -IgnoreInvalidFiles argument doesn't seem to have been working as intended, since the BuildBinaries will already contain all binaries for the target despite claims made in a comment (so bBuildShouldContinue will default to, and remain set to, false).
- While we could fix the logic to filter the binaries built for single-file compiles, it seems simpler to keep the same codepath as regular builds.

#preflight none

[CL 19408219 by Ben Marsh in ue5-main branch]
2022-03-16 13:37:05 -04:00
jonathan adamczewski
9c4a4792f3 UnrealBuildTool: New option -IgnoreInvalidFiles
When files are specified via -File= -SingleFile= or -FileList=, any file not valid for the target will be ignored.
If no individual files are found for the target, nothing will be built.

#jira none
#preflight 622bdc70ba14a5c27413c4e7
#rnx

[CL 19363943 by jonathan adamczewski in ue5-main branch]
2022-03-11 18:54:51 -05:00
tom noonan
d9b5159d0c Changing UBT VNI warning to be a log rather than a warning
[REVIEW] [at]markus.breyer
#preflight 622662cc9d201d1ecdf29955

#ROBOMERGE-OWNER: marc.audy
#ROBOMERGE-AUTHOR: tom.noonan
#ROBOMERGE-SOURCE: CL 19291953 via CL 19302958 via CL 19304646 via CL 19304944 via CL 19305118
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v926-19321884)

[CL 19347126 by tom noonan in ue5-main branch]
2022-03-10 21:02:35 -05:00