Files
UnrealEngineUWP/Engine/Source/ThirdParty/DirectML/DirectML.Build.cs
christian regg 4672fb5094 [NNE] NNERuntimeORT upgrade ONNX Runtime to version 1.17.1 and its required dependency DirectML to version 1.13.1.
Problem:
For NPU support we require ONNX Runtime version >=1.17.1.

Solution:
Upgrade ONNX Runtime to version 1.17.1 and its dependencies.

Tests:
- Editor, Win64/Linux/Mac, Debug, all tests
- Game, Win64/Linux/Mac, Development, style-stransfer and all tests

#jira UE-207160
#rb florent.guinier, nico.ranieri

#tests see description above

[FYI] Jane.Haslam

[CL 36426899 by christian regg in 5.5 branch]
2024-09-19 07:38:11 -04:00

46 lines
1.4 KiB
C#

// Copyright Epic Games, Inc. All Rights Reserved.
using System;
using System.IO;
using UnrealBuildTool;
public class DirectML : ModuleRules
{
public DirectML(ReadOnlyTargetRules Target) : base(Target)
{
Type = ModuleType.External;
// Only Win64
if (Target.Platform != UnrealTargetPlatform.Win64)
{
return;
}
string PlatformDir = Target.Platform.ToString();
if (Target.Platform == UnrealTargetPlatform.Win64 && Target.Architecture == UnrealArch.Arm64)
{
PlatformDir = "WinArm64";
}
string BinDirPath = Path.GetFullPath(Path.Combine(ModuleDirectory, "bin", PlatformDir));
string LibFileName = "DirectML";
string LibSubDir = "DML";
string DllFileName = LibFileName + ".dll";
string DbgDllFileName = LibFileName + ".Debug.dll";
PublicSystemIncludePaths.Add(Path.Combine(ModuleDirectory, "include"));
PublicAdditionalLibraries.Add(Path.Combine(ModuleDirectory, "lib", PlatformDir, LibFileName + ".lib"));
RuntimeDependencies.Add(Path.Combine("$(TargetOutputDir)", LibSubDir, DllFileName), Path.Combine(BinDirPath, DllFileName));
PublicDelayLoadDLLs.Add(DllFileName);
PublicDefinitions.Add("DIRECTML_PATH=" + LibSubDir);
if (Target.Type == TargetType.Editor && Target.Configuration == UnrealTargetConfiguration.Debug)
{
RuntimeDependencies.Add(Path.Combine("$(TargetOutputDir)", LibSubDir, DbgDllFileName), Path.Combine(BinDirPath, DbgDllFileName));
PublicDelayLoadDLLs.Add(DbgDllFileName);
}
}
}