Commit Graph

42 Commits

Author SHA1 Message Date
Ben Marsh
dfe44a2b5c Remove unused variables causing warnings on Mono.
#jira
#rb none
#rnx

[CL 12223682 by Ben Marsh in 4.25 branch]
2020-03-16 17:07:01 -04:00
Ben Marsh
973a7f3e01 Fix installed files being deleted when cleaning a target from an installed engine build.
#rb none
#jira UE-90547, UE-89724

[CL 12170007 by Ben Marsh in 4.25 branch]
2020-03-13 23:44:01 -04:00
Josh Adams
aa9705149b Copying Private-LoadTimes-4.24 stream to Main. Biggest changes are in Materials/Shader memory freezing.
#rb none

[CL 11282608 by Josh Adams in Main branch]
2020-02-06 13:13:41 -05:00
ben marsh
d6efcb2ab8 Fix building of script plugins for the marketplace. Was not running the plugin with a project file that has the plugin enabled.
#rb none
#jira

#ROBOMERGE-SOURCE: CL 11159288 in //UE4/Release-4.24/...
#ROBOMERGE-BOT: RELEASE (Release-4.24 -> Main) (v640-11091645)

[CL 11159310 by ben marsh in Main branch]
2020-01-29 10:01:04 -05:00
graeme thornton
5059d3cb48 Make UAT use a config setting to decide which editor target is the default for use within automation scripts
Have UBT set the source target name as a define during compilation. For unique environments, embed that macro globally, but in shared environments just embed it into game modules.
Have the primary game module bind that define to a core delegate so engine systems can query it
Make LiveCodingModule pass the UBT target name to the UBT so that it doesn't have to guess which target to build
For agnostic executables (UE4Game, UE4Editor)  running content only projects, the delegate won't be bound, so revert back to type based recompile requests in live coding
Handle DTE string for VS2019 in the source code accessor module

#rb ben.marsh


#ROBOMERGE-SOURCE: CL 11103653 via CL 11103654 via CL 11103656
#ROBOMERGE-BOT: (v640-11091645)

[CL 11103658 by graeme thornton in Main branch]
2020-01-24 03:22:33 -05:00
graeme thornton
c8d155afc8 RulesAssembly.GetTargetNameByType() will only consider primary targets
#ROBOMERGE-SOURCE: CL 10991531 via CL 10991532 via CL 10991534
#ROBOMERGE-BOT: (v633-10983880)

[CL 10991536 by graeme thornton in Main branch]
2020-01-15 03:55:30 -05:00
Ryan Durand
9ef3748747 Updating copyrights for Engine Programs.
#rnx
#rb none
#jira none

#ROBOMERGE-OWNER: ryan.durand
#ROBOMERGE-AUTHOR: ryan.durand
#ROBOMERGE-SOURCE: CL 10869242 in //Fortnite/Release-12.00/... via CL 10869536
#ROBOMERGE-BOT: FORTNITE (Main -> Dev-EngineMerge) (v613-10869866)

[CL 10870955 by Ryan Durand in Main branch]
2019-12-26 23:01:54 -05:00
Nick Shin
3526d16d5e merge/copyup to parent stream - HTML5 platform extension
#jira UEMOB-482  HTML5 platform as a plug in
#rb josh.adams
#rn

[CL 9306021 by Nick Shin in Dev-Build branch]
2019-09-30 15:13:56 -04:00
ben marsh
c1ce0c7b01 UBT: Add native support for parsing command line arguments inside Target.cs files, via the [CommandLine] attribute on fields.
#jira


#ROBOMERGE-SOURCE: CL 9137624 via CL 9137662
#ROBOMERGE-BOT: (v443-9013191)

[CL 9137678 by ben marsh in Main branch]
2019-09-26 09:49:06 -04:00
Ben Marsh
ec2464a292 UBT: Add a mechanism for versioning which build settings UBT should use by default.
Any build targets have a DefaultBuildSettings property. For engine targets, this defaults to BuildSettingsVersion.Latest. For project targets, this defaults to BuildSettingsVersion.Release_4_23. For new projects, this will default to the engine version they are created from.

If a target is not using the latest default build settings, they will receive a message describing the settings that have changed, like this:

    [Upgrade]
    [Upgrade] Using UE 4.23 compatible build settings. The latest version of UE4 sets the following values by default, which may require code changes:
    [Upgrade]     bLegacyPublicIncludePaths = false                 => Omits subfolders from public include paths to reduce compiler command line length.
    [Upgrade]     PCHUsage = PCHUsageMode.UseExplicitOrSharedPCHs   => Set in build.cs files to enables IWYU-style PCH model. See https://docs.unrealengine.com/en-US/Programming/BuildTools/UnrealBuildTool/IWYU/index.html.
    [Upgrade] Suppress this message by setting 'DefaultBuildSettings = BuildSettingsVersion.Release_4_24;' in UnrealPak.Target.cs, and explicitly overriding desired settings.
    [Upgrade]

Intent is to reduce friction for users initially upgrading to new engine versions, while notifying them of more optimal build settings being available, and letting them choose when (or if) to use them.

#rb none

[CL 8556769 by Ben Marsh in Dev-Build branch]
2019-09-06 15:59:52 -04:00
jeff newquist
10e1c55cc4 Add subclass ModuleRules file references to ExternalDependencies to properly generate new makefiles when they are changed.
#rb ben.marsh

[CL 8127110 by jeff newquist in Dev-Build branch]
2019-08-20 13:10:19 -04:00
Ben Marsh
2aff13a3b8 Add functionality to allow querying the available targets for a project from the editor, and use it to allow packaging client and server targets from the "Package Project" menu.
#rb none

[CL 7950582 by Ben Marsh in Dev-Build branch]
2019-08-12 11:21:45 -04:00
Ben Marsh
faaaa784be UBT: Remove the "default" value for the build environment. The property now returns the appropriate default value depending on the target being built.
#rb none

[CL 6276992 by Ben Marsh in Dev-Build branch]
2019-05-03 13:03:54 -04:00
Josh Adams
1e4b186150 - Big update to platforms: PlatformExtensions
- This allows for Confidential platforms to exist outside of the engine, and insert themselves in as needed
- Directory structure is, where .... mirrors the directory structure for Engine and projects
     - /Platforms/XXX/....
- Moving to more data driven approach for ShaderPlatforms and PlatformInfo, where they can be read from DataDrivenPlatformInfo.ini files that live in the platform config folders
- Removed platform mentions from UBT, by way of changing some enums to partial classes with static members (see UnrealTargetPlatform)
- Various other UBT/UAT modifications to allow for looking in other locations for files
- THIS IS NOT A COMPLETE AND FINAL SOLUTION. WE WILL CONTINUE WORK IN DEV-BUILD BEFORE ITS READY FOR PRIMETIME
#rb ben.marsh

[CL 6271418 by Josh Adams in Dev-Build branch]
2019-05-03 08:03:23 -04:00
Ben Marsh
4d27210c01 UBT: Remove global function for determining whether a file is under an engine directory. This is now done via a trait that is propagated through construction of individual modules.
#rb none
#rnx
#fyi Josh.Adams

[CL 6076546 by Ben Marsh in Dev-Build branch]
2019-04-24 08:31:23 -04:00
Ben Marsh
c5618e9898 Add an error for using a unique build environment with an installed build.
#rb none
#jira UE-71722

[CL 5459600 by Ben Marsh in Dev-Build branch]
2019-03-19 16:57:16 -04:00
Ben Marsh
3e14e12a73 Merging //UE4/Dev-Main to Dev-Build (//UE4/Dev-Build)
#rb none
#rnx

[CL 4737894 by Ben Marsh in Dev-Build branch]
2019-01-16 19:30:43 -05:00
Ben Marsh
e26dfd2100 Merging //UE4/Dev-Main to Dev-Build (//UE4/Dev-Build)
#rb none
#rnx

[CL 4716250 by Ben Marsh in Dev-Build branch]
2019-01-12 13:09:07 -05:00
Ben Marsh
61701a788c UBT: Optimize file operations to use cached file/directory info, and to discover plugins/rules files in parallel. Also add more stats for different parts of the build.
#rb none
#rnx

[CL 4671815 by Ben Marsh in Dev-Build branch]
2018-12-20 10:46:51 -05:00
Ben Marsh
530369c613 Merging //UE4/Dev-Main to Dev-Build (//UE4/Dev-Build)
#rb none
#rnx

[CL 4662695 by Ben Marsh in Dev-Build branch]
2018-12-14 14:49:12 -05:00
Ben Marsh
d142b482cf UBT: Removing a few unused/unnecessary properties and accessors, and moving the GetSupportedPlatforms() method from UEBuildTarget to TargetRules.
#rb none
#rnx

[CL 4643907 by Ben Marsh in Dev-Build branch]
2018-12-08 15:58:08 -05:00
Ben Marsh
a2d4bbe283 UBT: Remove unnecessary arguments array to UEBuildTarget.CreateTarget.
#rb none
#rnx

[CL 4643765 by Ben Marsh in Dev-Build branch]
2018-12-08 10:22:41 -05:00
Ben Marsh
40caf5c153 UBT: Move more functionality related to constructing targets into the rules assembly.
#rb none
#rnx

[CL 4643760 by Ben Marsh in Dev-Build branch]
2018-12-08 10:17:57 -05:00
Ben Marsh
57a841628e UBT: Add a global ReadOnlyBuildVersion instance, rather than having to manually create it and pass it around as an argument.
#rb none
#rnx

[CL 4603398 by Ben Marsh in Dev-Build branch]
2018-11-28 12:58:54 -05:00
Ben Marsh
38a7d3328b UBT: Deprecate bCompileLeanAndMeanUE. This setting is vague and non-descriptive, and causes several other settings to be overriden. It is forced on by the current target type and individual target platforms, preventing targets from modifying those values. Anything explicitly using bCompileLeanAndMeanUE now uses bBuildDeveloperTools instead, and the UE_BUILD_MINIMAL macro at runtime has been removed.
The values that it previously forced values to are now configured as follows:

* bBuildEditor is a read-only property that returns true if and only if the target type is Editor.
* bCompileSimplygon and bCompileSimplygonSSF now a property which will default to true for Windows editor, if Simplygon is available. It can also be explicitly enabled or disabled.
* bCompileSpeedTree is now a property which will default to true for editor targets, and can also be explicitly enabled or disabled.

#rb none

[CL 4596311 by Ben Marsh in Dev-Build branch]
2018-11-27 09:02:34 -05:00