Commit Graph

83 Commits

Author SHA1 Message Date
ben marsh
9170b5f44a Enable shadow variable warnings as errors by default for projects that are using the latest UBT build settings. Allow setting the warning/error level on a per-module and per-target basis.
The engine will always be built with it as an error.

#rb none
[FYI] Marc.Audy
#jira none

#ROBOMERGE-SOURCE: CL 9839163 in //UE4/Release-4.24/...
#ROBOMERGE-BOT: RELEASE (Release-4.24 -> Main) (v546-9757112)

[CL 9839167 by ben marsh in Main branch]
2019-10-25 10:39:37 -04:00
Ben Marsh
b56ebcae04 UBT: Fix single-file compile option modifying response files for files other than the one being built. Causes more files to be rebuilt in the next regular build than necessary.
#rb none
#fyi Johan.Torp

[CL 8572161 by Ben Marsh in Dev-Build branch]
2019-09-09 10:16:08 -04:00
Ben Marsh
f7f2eee7db Missing file.
#rb none
#rnx

[CL 8121650 by Ben Marsh in Dev-Build branch]
2019-08-19 21:10:34 -04:00
Ben Marsh
6d9b8e8ebb UBT: Change bLegacyPublicIncludePaths to a property that derives the correct value depending on other available settings.
#rb none
#rnx

[CL 8038052 by Ben Marsh in Dev-Build branch]
2019-08-14 12:55:13 -04:00
arne schober
93d411766e FnMerge - Upgrade ISPC version and add missing TPS File.
#RB none
[FYI] Jeff.Rous

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: arne.schober
#ROBOMERGE-SOURCE: CL 7112116 via CL 7112121
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v367-6836689)

[CL 7137571 by arne schober in Dev-Build branch]
2019-06-21 04:10:03 -04:00
Joakim Lindqvist
c838e09d2f Added ability to override Unity and Optimization per module in BuildConfiguration. This should eliminate most needs to disable unity builds in Build.cs (as disabling it for local iteration times was the primary argument for it).
Thus we renamed bFasterWithoutUnity to bUseUnity (note the inversion of the statement) which is what you should use if a module does not support building in Unity mode.

#jira UE-73054
#rb ben.marsh

[CL 7099374 by Joakim Lindqvist in Dev-Build branch]
2019-06-20 03:53:43 -04:00
Ben Marsh
cfe09c649f Merging //UE4/Dev-Main to Dev-Build (//UE4/Dev-Build)
#rb none
#rnx

[CL 6922670 by Ben Marsh in Dev-Build branch]
2019-06-10 19:47:29 -04:00
ben marsh
2a14464a21 UBT: Fix issues with UBT not detecting new files with reflection markup. Was previously not correctly sub-directories, nor checking for new UHT types being added to a module that was not previously being scanned.
#rb none
#jira UE-74579

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: ben.marsh
#ROBOMERGE-SOURCE: CL 6863680 in //UE4/Main/...
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v366-6836689)

[CL 6917137 by ben marsh in Dev-Build branch]
2019-06-10 16:16:15 -04:00
chris gagnon
72ba51c5bd Copying //UE4/Dev-Editor to Dev-Main (//UE4/Dev-Main) for 4.23 From CL 6837861
#rb none


#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: chris.gagnon
#ROBOMERGE-SOURCE: CL 6838042 in //UE4/Main/...
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v366-6836689)

[CL 6874679 by chris gagnon in Dev-Build branch]
2019-06-07 05:27:42 -04:00
Ben Marsh
ba077509fe 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

[CL 6453851 by Ben Marsh in Dev-Build branch]
2019-05-14 17:48:05 -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
35f6a9a330 UBT: Ensure that we always write definitions to a force-included header file rather than including them on the command line. Definitions specified on the command line have different restrictions (use of quotes, etc...).
#rb none
#rnx

[CL 5988836 by Ben Marsh in Dev-Build branch]
2019-04-18 13:54:15 -04:00
peter engstrom
2099c1c03d Use forward slashes in include paths.
#rb ben.marsh
#rnx

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: peter.engstrom
#ROBOMERGE-SOURCE: CL 5667718 via CL 5667743 via CL 5667748 via CL 5667751 via CL 5668993 via CL 5668997
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5670337 by peter engstrom in Dev-Build branch]
2019-04-01 13:02:25 -04:00
ben marsh
379b9bbefe Fix settings for enabling shadow variable and undefined identifier warnings not being treated as requiring a unique PCH. Also fix shared PCHs not enabling each by default. The compiler (at least on Windows) does not produce a warning/error on this mismatch, but does not respect the different settings passed via the command line.
#rb none
#jira

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: ben.marsh
#ROBOMERGE-SOURCE: CL 5295902 in //UE4/Release-4.22/... via CL 5308945
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5325327 by ben marsh in Dev-Build branch]
2019-03-06 18:15:50 -05:00
ben marsh
43a2ef9d75 UBT: Allow modules to disable PCHs entirely by setting PCHUsage = PCHUsageMode.NoPCHs.
#rb none
#jira

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: ben.marsh
#ROBOMERGE-SOURCE: CL 5240326 in //UE4/Release-4.22/... via CL 5240327
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5252084 by ben marsh in Dev-Build branch]
2019-02-28 17:50:29 -05:00
ben marsh
ca48f356c5 Add a better error message when trying to use a module that is not included in an installed build.
#rb none
#jira

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: ben.marsh
#ROBOMERGE-SOURCE: CL 5215521 in //UE4/Release-4.22/... via CL 5225284
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5243528 by ben marsh in Dev-Build branch]
2019-02-28 17:00:28 -05:00
ben marsh
c73ee01423 UBT: Add a new target setting (bAdaptiveUnityDisablesPCHForProject) which allows overriding the "bAdaptiveUnityDisablesPCH" setting for project-specific code.
[FYI] Bob.Tellez

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: ben.marsh
#ROBOMERGE-SOURCE: CL 5107683 via CL 5108227 via CL 5108254
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5129365 by ben marsh in Dev-Build branch]
2019-02-22 02:09:30 -05:00
Ben Marsh
dece8de2d2 Merging //UE4/Dev-Main to Dev-Build (//UE4/Dev-Build)
#rb none
#rnx

[CL 5095547 by Ben Marsh in Dev-Build branch]
2019-02-20 15:06:37 -05:00
Ben Marsh
c34dc5a8cf Merging //UE4/Dev-Main to Dev-Build (//UE4/Dev-Build)
#rb none
#rnx

[CL 4932473 by Ben Marsh in Dev-Build branch]
2019-02-07 10:01:58 -05:00
Ben Marsh
bbb8057a5e Merging //UE4/Dev-Main to Dev-Build (//UE4/Dev-Build)
#rb none
#rnx

[CL 4820573 by Ben Marsh in Dev-Build branch]
2019-01-26 14:33:56 -05:00
Ben Marsh
a3e87004d6 Merging //UE4/Dev-Main to Dev-Build (//UE4/Dev-Build)
#rb none
#rnx

[CL 4783611 by Ben Marsh in Dev-Build branch]
2019-01-23 10:59:53 -05:00
Ben Marsh
0f4780a3f5 Fixup headers and remove exception for OnlineSubsystemIOS including non-IWYU headers.
#rb none
#rnx

[CL 4759812 by Ben Marsh in Dev-Build branch]
2019-01-20 16:34:37 -05:00
Ben Marsh
2bb7ac82a4 Fixup and remove OnlineSubsystemLive from the list of engine modules that don't support IWYU.
#rb none
#rnx

[CL 4759068 by Ben Marsh in Dev-Build branch]
2019-01-19 15:04:05 -05:00
Ben Marsh
e8ef63a8fd UBT: Only reset cached info for generated code directories after running UHT. Resetting cached info for all files causes slowdown for dependency checking.
#rb none
#rnx

[CL 4683841 by Ben Marsh in Dev-Build branch]
2019-01-05 20:25:15 -05:00
Ben Marsh
b5b67b6bab UBT: Allow setting the C++ standard version for the compiler on a per-target or per-module basis. Currently only implemented for MSVC.
Example:

    CppStandard = CppStandardVersion.Cpp17;

Or:

    CppStandard = CppStandardVersion.Latest;

#rb none
#fyi Steve.Robb

[CL 4681321 by Ben Marsh in Dev-Build branch]
2019-01-04 10:13:55 -05:00