You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
Introduces a few changes that enables CrashReportClient to read project it's settings from project configuration. * Add compile time fallback of data router to CrashReportClientEditor. * Refactored how some global defines are set in CrashReportClient/CrashReportClientEditor target to allow different settings for development time vs retail time. * Added code that allows project configuration files to override any CRC setting. Previously it would only apply to some properties. * Refactored CrashReportCoreConfig. * Added compile time defines for company name. UX changes in other CL. * Limit core usage for CRC to 5 cores. Significantly reduces memory usage for machines with many cores. #rb Patrick.Laflamme #jira UE-114670 [CL 30879797 by johan berg in ue5-main branch]
58 lines
2.4 KiB
C#
58 lines
2.4 KiB
C#
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
using UnrealBuildTool;
|
|
|
|
[SupportedPlatforms("Win64", "Mac", "Linux")]
|
|
[SupportedConfigurations(UnrealTargetConfiguration.Debug, UnrealTargetConfiguration.Development, UnrealTargetConfiguration.Shipping)]
|
|
public sealed class CrashReportClientEditorTarget : CrashReportClientTarget
|
|
{
|
|
// Override the configuration values from CrashReportClient with these using another
|
|
// configuration block: [CrashReportClientEditorBuildSettings]
|
|
|
|
[ConfigFile(ConfigHierarchyType.Engine, "CrashReportClientEditorBuildSettings", "DataRouterFallback")]
|
|
public new string DataRouterFallback;
|
|
|
|
[ConfigFile(ConfigHierarchyType.Engine, "CrashReportClientEditorBuildSettings", "CompanyName")]
|
|
public new string CompanyName;
|
|
|
|
[ConfigFile(ConfigHierarchyType.Engine, "CrashReportClientEditorBuildSettings", "TelemetryUrl")]
|
|
public new string TelemetryUrl;
|
|
|
|
[ConfigFile(ConfigHierarchyType.Engine, "CrashReportClientEditorBuildSettings", "TelemetryKey_Dev")]
|
|
public new string TelemetryKey_Dev;
|
|
|
|
[ConfigFile(ConfigHierarchyType.Engine, "CrashReportClientEditorBuildSettings", "TelemetryKey_Release")]
|
|
public new string TelemetryKey_Release;
|
|
|
|
public CrashReportClientEditorTarget(TargetInfo Target) : base(Target, false /* bSetConfiguredDefinitions */)
|
|
{
|
|
LaunchModuleName = "CrashReportClientEditor";
|
|
|
|
// Disabled in 4.25.1 because it is suspected to cause unexpected crash.
|
|
bool bHostRecoverySvc = false;
|
|
|
|
bBuildWithEditorOnlyData = false;
|
|
bBuildDeveloperTools = true;
|
|
|
|
if (bHostRecoverySvc)
|
|
{
|
|
throw new BuildException("No longer supported.");
|
|
AdditionalPlugins.Add("UdpMessaging");
|
|
AdditionalPlugins.Add("ConcertSyncServer");
|
|
bCompileWithPluginSupport = true; // Enable Developer plugins (like Concert!)
|
|
|
|
if (Target.Configuration == UnrealTargetConfiguration.Shipping && LinkType == TargetLinkType.Monolithic)
|
|
{
|
|
// DisasterRecovery/Concert needs message bus to run. If not enabled, Recovery Service will self-disable as well. In Shipping
|
|
// message bus is turned off by default but for a monolithic build, it can be turned on just for this executable.
|
|
GlobalDefinitions.Add("PLATFORM_SUPPORTS_MESSAGEBUS=1");
|
|
}
|
|
}
|
|
|
|
// We can now set the configured definitions from CrashReportClientEditorBuildSettings section
|
|
GlobalDefinitions.AddRange(SetupConfiguredDefines(
|
|
DataRouterFallback, CompanyName, TelemetryUrl, TelemetryKey_Dev, TelemetryKey_Release));
|
|
}
|
|
|
|
}
|