AronaSlate/Source/PortAudio/PortAudio.Build.cs
2024-01-25 11:21:15 +08:00

64 lines
1.8 KiB
C#

// 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;
}
}