Files
UnrealEngineUWP/Engine/Source/Programs/EpicWebHelper/EpicWebHelper.Target.cs
Chris Varnsverry 40b2f67315 - Fix compilation errors in EpicWebApp on OSX due to relatively old OSX min version, by disabling automation tests.
- Some dev automation tests in Core require "aligned new" which is unsupported in the older OSX version this target targets.

#jira UE-133052
#review-18004016 @Michael.Kirzinger @Sam.Zamani

[CL 18016090 by Chris Varnsverry in ue5-main branch]
2021-11-02 07:19:10 -04:00

64 lines
2.6 KiB
C#

// Copyright Epic Games, Inc. All Rights Reserved.
using System.Collections.Generic;
using System.IO;
using UnrealBuildTool;
[SupportedPlatforms("Win64", "Mac", "Linux")]
[SupportedConfigurations(UnrealTargetConfiguration.Debug, UnrealTargetConfiguration.Development, UnrealTargetConfiguration.Shipping)]
public class EpicWebHelperTarget : TargetRules
{
public EpicWebHelperTarget(TargetInfo Target) : base(Target)
{
Type = TargetType.Program;
LinkType = TargetLinkType.Monolithic;
LaunchModuleName = "EpicWebHelper";
// Change the undecorated exe name to be the shipping one on windows
UndecoratedConfiguration = UnrealTargetConfiguration.Shipping;
if (Target.Platform == UnrealTargetPlatform.Mac)
{
// CEF3 requires 4 copies of the helper app, each in theory has different system privileges granted by the codesigning tool
// We don't support that yet, so just sym-link the 3 variants to our main helper binary here
PostBuildSteps.Add(string.Format("echo Creating helper syminks"));
var HelperTypes = new List<string>() { "GPU", "Renderer", "Plugin"};
foreach( string HelperType in HelperTypes)
{
PostBuildSteps.Add(string.Format("cd $(EngineDir)/Binaries/$(TargetPlatform); if [ ! -h \"EpicWebHelper ({0}).app\" ]; then ln -s \"EpicWebHelper.app\" \"EpicWebHelper ({1}).app\"; fi", HelperType, HelperType));
}
}
// Turn off various third party features we don't need
// Currently we force Lean and Mean mode
bBuildDeveloperTools = false;
// Currently this app is not linking against the engine, so we'll compile out references from Core to the rest of the engine
bCompileAgainstEngine = false;
bCompileAgainstCoreUObject = false;
bBuildWithEditorOnlyData = true;
// Never use malloc profiling in CEFSubProcess.
bUseMallocProfiler = false;
// Force all shader formats to be built and included.
//bForceBuildShaderFormats = true;
// CEFSubProcess is a Windows app (uses WinMain())
bIsBuildingConsoleApplication = false;
// Disable logging, as the sub processes are spawned often and logging will just slow them down
GlobalDefinitions.Add("ALLOW_LOG_FILE=0");
// Epic Games Launcher needs to run on OS X 10.9, so CEFSubProcess needs this as well
bEnableOSX109Support = true;
// Disable automation tests to avoid compilation errors related to alignas, caused by setting bEnableOSX109Support to true above. Old OSX versions do not fully support this until C++17
bForceDisableAutomationTests = true;
// Already a manifest specified through resource file
WindowsPlatform.ManifestFile = null;
}
}