Commit Graph

73 Commits

Author SHA1 Message Date
Ben Marsh
b2f70012a7 Don't allow UBT to try and compile engine modules when the engine is already running.
#rb none
#jira UE-88824

[CL 11637884 by Ben Marsh in 4.25 branch]
2020-02-26 13:32:38 -05:00
Ben Marsh
e237192c93 Ignore check for active Live Coding session if the -NoHotReloadFromIDE argument is present. Allows creating a new C++ project while Live Coding is active.
#rb none
#jira UE-82398

[CL 11630897 by Ben Marsh in 4.25 branch]
2020-02-26 09:49:08 -05:00
Ben Marsh
21d99caf97 Output a warning if the root path is longer than 50 characters.
#rb none
#jira UE-88446
#fyi Martin.Sevigny

[CL 11625250 by Ben Marsh in 4.25 branch]
2020-02-25 21:05:31 -05:00
Ben Marsh
f0d3dbda4a UBT: Output a warning if any intermediate path is > 200 characters under the UE root directory.
#rb none
#jira UE-88446
#fyi Martin.Sevigny

[CL 11624846 by Ben Marsh in 4.25 branch]
2020-02-25 20:48:25 -05:00
Ben Marsh
4220f6eceb UBT: Fix log file being written to Engine directory, even in installed builds.
#rb none
#jira UE-87654

[CL 11592464 by Ben Marsh in 4.25 branch]
2020-02-24 19:02:42 -05:00
Ben Marsh
64e23d62de UBT: Output toolchain info when doing XGE export.
#rb none
#rnx

[CL 11341939 by Ben Marsh in Main branch]
2020-02-11 12:56:09 -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
Mitchell Wilson
f0a83e9112 Copying //UE4/Dev-Documentation to Samples-Main (//UE4/Samples-Main)
#rb none
#rnx

[CL 9551884 by Mitchell Wilson in Main branch]
2019-10-11 16:59:16 -04:00
Ben Marsh
aa45fb1bf3 UBT: Make the -Quiet option per-target, and use it to suppress toolchain and adaptive non-unity info for secondary build targets.
#rb none
#rnx

[CL 8638712 by Ben Marsh in Dev-Build branch]
2019-09-11 11:52:41 -04:00
Ben Marsh
adb63622ca Tweak upgrade messages for UBT settings version.
#rb none
#rnx

[CL 8571756 by Ben Marsh in Dev-Build branch]
2019-09-09 08:51:15 -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
ben marsh
46ebd2be08 Live Coding: Allow building foreign plugins while Live Coding is active.
#rb none
#jira UE-78421

#ROBOMERGE-SOURCE: CL 7820681 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v389-7813075)

[CL 7820694 by ben marsh in Main branch]
2019-08-06 16:18:26 -04:00
ben marsh
ef3c866b47 LiveCoding: Prevent object files being overwritten during a live coding compile. Object files are now built with a .lc suffix, leaving the original files intact. This ensures it can gather COFF data from the correct executables on relaunch, and means that any existing changes will be patched in as soon as the first Live Coding compile is initiated. Should fix several issues.
#rb none
#jira UE-76940, UE-76993, UE-76943

#ROBOMERGE-SOURCE: CL 7321451 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v371-7306989)

[CL 7321452 by ben marsh in Main branch]
2019-07-16 08:51:35 -04:00
ben marsh
3cc5d9c8a2 Few CIS fixes.
#rb none
#rnx
#jira

#ROBOMERGE-SOURCE: CL 7321421 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v371-7306989)

[CL 7321423 by ben marsh in Main branch]
2019-07-16 08:47:25 -04:00
jeff fisher
ba53539174 UE-76509 Packaging for Hololens doesn't work in an Installed build
-fixes hololens arm64 packaging error about mspdbcore.dll, this affected non-installed builds as well
-several other jiras are linked from that one that will still remain for packaging from installed builds
-(actually implemented by joe, reviewed and tested by me)
#rb joe.conley
#jira UE-76509

#ROBOMERGE-SOURCE: CL 7265359 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v369-7254125)

[CL 7265361 by jeff fisher in Main branch]
2019-07-10 14:33:32 -04:00
ben marsh
1a3d361e6b LiveCoding: Allow patching executables after they have been staged to a different directory, so it runs correctly with packaged games.
#rb none
#rnx
#jira UE-76703

#ROBOMERGE-SOURCE: CL 7233663 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v367-6836689)

[CL 7233665 by ben marsh in Main branch]
2019-07-08 16:46:04 -04:00
ben marsh
802e86e6e0 Fix single-file compile when UHT needs to be executed. Was removing binaries from the target before determining the full set of modules for UHT to run.
#rb none
#jira
#rnx

#ROBOMERGE-SOURCE: CL 7061437 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v367-6836689)

[CL 7061438 by ben marsh in Main branch]
2019-06-18 00:58:40 -04:00
ben marsh
814a1088bd Live Coding: Fix support for lazy loading modules. Now passes UBT a list of modules that can be updated, and UBT fails the build and writes out a list of others that would be modified. Live Coding console then loads those modules and retries.
#rb none
#jira UE-74679

#ROBOMERGE-SOURCE: CL 6960867 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v366-6836689)

[CL 6966783 by ben marsh in Main branch]
2019-06-12 23:22:20 -04:00
ben marsh
4e1e602670 Live Coding: Prevent compiling from the IDE while a Live Coding session is active. Engine runtime creates a global mutex with the executable path in the a name and leaks the handle, then UBT checks for it existing before allowing a build to start.
#rb none
#jira UE-74438

#ROBOMERGE-SOURCE: CL 6957113 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v366-6836689)

[CL 6966779 by ben marsh in Main branch]
2019-06-12 23:22:12 -04:00
Jeff Fisher
bcc5bcf128 Copying //UE4/Dev-VR to Main (//UE4/Main)
-Copy up for 4.23
#rb none

[CL 6911980 by Jeff Fisher in Main branch]
2019-06-10 12:22:13 -04:00
Ben Marsh
bda1da67be Fix issue creating a new plugin after a hot reload has taken place.
#rb none
#jira UE-75391

[CL 6834564 by Ben Marsh in Main branch]
2019-06-04 09:29:49 -04:00
Ben Marsh
0cc6e3dca6 Copying //UE4/Dev-Build to Dev-Main (//UE4/Dev-Main)
#rb none
#rnx

[CL 6631504 by Ben Marsh in Main branch]
2019-05-24 11:51:54 -04:00
ben marsh
c3e532b195 Live Coding: Fix crashes when patching adaptive non-unity files in game modules containing static global variables.
Live++ reads object files at startup for game modules, and assigns unique ids to each compiland (used to disambiguate static variables). When compiling the patch, these compilands are modified to reference a unique id for the unity blob, causing the variables to be reconstructed.

Solution is to generate a JSON file to each output directory containing object files containing the mapping, and to use that to assign compiland ids at startup.

#rb none
#jira UE-74036

#ROBOMERGE-SOURCE: CL 6455253 in //UE4/Release-4.22/...
#ROBOMERGE-BOT: RELEASE (Release-4.22 -> Main)

[CL 6455273 by ben marsh in Main branch]
2019-05-14 18:12:06 -04:00
ben marsh
a289f6681e LiveCoding: Merging fixes to resolve issues with global symbols being reconstructed when loading patch DLLs. Was causing asserts when log channels were re-registered etc...
#jira
#rb none

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: ben.marsh
#ROBOMERGE-SOURCE: CL 5993252 via CL 5993257 via CL 5995286

[CL 5995562 by ben marsh in Main branch]
2019-04-18 17:51:25 -04:00
cosmin sulea
8ec4ea34f8 //UE4/Release-4.22 - Compile UE4Game TVOS / IOS - warning: invalid character '*' in Bundle Identifier at column 0. This string must be a uniform type identifier (UTI) that contains only alphanumeric (A-Z,a-z,0-9), hyphen (-), and period (.) characters
#jira UE-72094
#rb Jack.Porter
#lockdown Cristina.Riveron

#ROBOMERGE-SOURCE: CL 5826389 in //UE4/Release-4.22/...
#ROBOMERGE-BOT: RELEASE (Release-4.22 -> Main)

[CL 5826391 by cosmin sulea in Main branch]
2019-04-11 06:08:23 -04:00