diff --git a/README.md b/README.md index 945bd3f9..335851b0 100644 --- a/README.md +++ b/README.md @@ -13,9 +13,9 @@ This repository relies on Git LFS for storing binary blobs (e.g. third-party lib | **4.24** | ⚠️ v1.0.x | ⚠️ v1.0.x | ❌ | ⚠️ v1.0.x | ❌ | ❌ | | **4.25** | ⚠️ v1.0.x | ⚠️ v1.0.x | ❌ | ⚠️ v1.0.x | ❌ | ❌ | | **4.26** | ⚠️ v1.0.x | ⚠️ v1.0.x | ❌ | ⚠️ v1.0.x | ❌ | ❌ | -| **4.27** | ✅ v1.4.x | ✅ v1.4.x | ✅ v1.4.x | ✅ v1.4.x | ❌ | ✅ v1.4.x (r21e) | -| **5.0** | ❌ | ✅ v1.4.x | ✅ v1.4.x | ✅ v1.4.x | ❌ | ✅ v1.4.x (r21e) | -| **5.1** | ❌ | ✅ v1.4.x | ✅ v1.4.x | ✅ v1.4.x | ❌ | ✅ v1.4.x (r25b) | +| **4.27** | ✅ v1.4.x | ✅ v1.4.x | ✅ v1.4.x | ✅ v1.4.x | ✅ v1.4.x | ✅ v1.4.x (r21e) | +| **5.0** | ❌ | ✅ v1.4.x | ✅ v1.4.x | ✅ v1.4.x | ✅ v1.4.x | ✅ v1.4.x (r21e) | +| **5.1** | ❌ | ✅ v1.4.x | ✅ v1.4.x | ✅ v1.4.x | ✅ v1.4.x | ✅ v1.4.x (r25b) | | **5.2** | ❌ | ✅ v1.4.x | ✅ v1.4.x | ✅ v1.4.x | ✅ v1.4.x | ✅ v1.4.x (r25b) | * Supported diff --git a/Source/SenseGloveConnectImpl/SenseGloveConnectImpl.Build.cs b/Source/SenseGloveConnectImpl/SenseGloveConnectImpl.Build.cs index 6975dc4c..e6f72a5e 100644 --- a/Source/SenseGloveConnectImpl/SenseGloveConnectImpl.Build.cs +++ b/Source/SenseGloveConnectImpl/SenseGloveConnectImpl.Build.cs @@ -157,22 +157,24 @@ public class SenseGloveConnectImpl : ModuleRules Debug.Assert(false, "Unsupported engine version or compiler!"); #endif + LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "x86-64")); + } + else if (Target.Platform == UnrealTargetPlatform.LinuxArm64) + { + LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "linux")); + LibraryName = string.Format("lib{0}.a", LibraryName); + #if UE_5_2_OR_LATER - if (Target.Architecture == UnrealArch.Arm64) - { - LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "aarch64")); - } - else if (Target.Architecture == UnrealArch.X64) - { - LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "x86-64")); - } - else - { - Debug.Assert(false, "Unsupported Linux architecture!"); - } + LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "v21")); +#elif UE_5_0_OR_LATER + LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "v20")); +#elif UE_4_27_OR_LATER + LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "v19")); #else - LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "x86-64")); + Debug.Assert(false, "Unsupported engine version or compiler!"); #endif + + LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "aarch64")); } else if (Target.Platform == UnrealTargetPlatform.Win64) { @@ -305,22 +307,24 @@ public class SenseGloveConnectImpl : ModuleRules Debug.Assert(false, "Unsupported engine version or compiler!"); #endif + LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "x86-64")); + } + else if (Target.Platform == UnrealTargetPlatform.LinuxArm64) + { + LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "linux")); + LibraryName = string.Format("lib{0}.a", LibraryName); + #if UE_5_2_OR_LATER - if (Target.Architecture == UnrealArch.Arm64) - { - LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "aarch64")); - } - else if (Target.Architecture == UnrealArch.X64) - { - LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "x86-64")); - } - else - { - Debug.Assert(false, "Unsupported Linux architecture!"); - } + LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "v21")); +#elif UE_5_0_OR_LATER + LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "v20")); +#elif UE_4_27_OR_LATER + LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "v19")); #else - LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "x86-64")); + Debug.Assert(false, "Unsupported engine version or compiler!"); #endif + + LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "aarch64")); } else if (Target.Platform == UnrealTargetPlatform.Win64) { diff --git a/Source/SenseGloveCoreImpl/SenseGloveCoreImpl.Build.cs b/Source/SenseGloveCoreImpl/SenseGloveCoreImpl.Build.cs index fec36325..0304e4d2 100644 --- a/Source/SenseGloveCoreImpl/SenseGloveCoreImpl.Build.cs +++ b/Source/SenseGloveCoreImpl/SenseGloveCoreImpl.Build.cs @@ -163,22 +163,24 @@ public class SenseGloveCoreImpl : ModuleRules Debug.Assert(false, "Unsupported engine version or compiler!"); #endif + LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "x86-64")); + } + else if (Target.Platform == UnrealTargetPlatform.LinuxArm64) + { + LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "linux")); + LibraryName = string.Format("lib{0}.a", LibraryName); + #if UE_5_2_OR_LATER - if (Target.Architecture == UnrealArch.Arm64) - { - LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "aarch64")); - } - else if (Target.Architecture == UnrealArch.X64) - { - LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "x86-64")); - } - else - { - Debug.Assert(false, "Unsupported Linux architecture!"); - } + LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "v21")); +#elif UE_5_0_OR_LATER + LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "v20")); +#elif UE_4_27_OR_LATER + LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "v19")); #else - LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "x86-64")); + Debug.Assert(false, "Unsupported engine version or compiler!"); #endif + + LibraryPath = Path.GetFullPath(Path.Combine(LibraryPath, "aarch64")); } else if (Target.Platform == UnrealTargetPlatform.Win64) {