// Copyright Epic Games, Inc. All Rights Reserved. using System.IO; using UnrealBuildTool; public class PortAudio : ModuleRules { public PortAudio(ReadOnlyTargetRules Target) : base(Target) { string RootDir = ModuleDirectory; PublicIncludePaths.Add(RootDir); PublicIncludePaths.Add(Path.Combine(RootDir, "common")); if (Target.IsInPlatformGroup(UnrealPlatformGroup.Linux)) { RootDir = Path.Combine(RootDir, "Linux"); PrivateDefinitions.Add("PLATFORM_LINUX=1"); PrivateDefinitions.Add("LINUX=1"); } else if (Target.Platform == UnrealTargetPlatform.Mac) { RootDir = Path.Combine(RootDir, "Mac"); PublicFrameworks.AddRange(new string[] { "CoreAudio" }); PrivateDefinitions.Add("PLATFORM_MAC=1"); PrivateDefinitions.Add("MAC=1"); } else if (Target.Platform == UnrealTargetPlatform.Win64) { RootDir = Path.Combine(RootDir, "Win64"); PublicIncludePaths.Add(Path.Combine(RootDir, "os", "win")); PublicIncludePaths.Add(Path.Combine(RootDir, "host")); PrivateDefinitions.Add("PLATFORM_MICROSOFT=1"); PrivateDefinitions.Add("PLATFORM_WINDOWS=1"); PrivateDefinitions.Add("_WIN64"); PrivateDefinitions.Add("WINDOWS=1"); PrivateDefinitions.Add("PA_USE_ASIO"); PrivateDefinitions.Add("PA_USE_DS"); PrivateDefinitions.Add("PA_USE_WASAPI"); PrivateDefinitions.Add("PA_USE_WDMKS"); PrivateDefinitions.Add("PA_USE_WMME"); } PublicIncludePaths.Add(Path.Combine(RootDir, "hostapi")); PublicIncludePaths.Add(Path.Combine(RootDir, "include")); PublicDefinitions.Add("SGI=0"); PublicDefinitions.Add("BEOS=0"); PrivateDefinitions.Add("_CRT_SECURE_NO_WARNINGS"); PrivateDependencyModuleNames.AddRange(new [] { "Core", "SignalProcessing" }); bEnableUndefinedIdentifierWarnings = false; bEnableExceptions = true; } }