using System.IO; using UnrealBuildTool; public class Mujoco : ModuleRules { public Mujoco(ReadOnlyTargetRules Target) : base(Target) { Type = ModuleType.External; PublicSystemIncludePaths.Add("$(ModuleDir)/include"); if (Target.Platform == UnrealTargetPlatform.Win64) { PublicAdditionalLibraries.Add(Path.Combine(ModuleDirectory, "lib", "mujoco.lib")); PublicDelayLoadDLLs.Add("mujoco.dll"); RuntimeDependencies.Add(Path.Combine("$(TargetOutputDir)", "mujoco.dll"), Path.Combine(ModuleDirectory, "bin", "mujoco.dll")); } else if (Target.Platform == UnrealTargetPlatform.Mac) { PublicDelayLoadDLLs.Add("mujoco.dylib"); PublicAdditionalLibraries.Add(Path.Combine(ModuleDirectory, "lib", "mujoco.dylib")); RuntimeDependencies.Add(Path.Combine("$(TargetOutputDir)", "mujoco.dylib"), Path.Combine(ModuleDirectory, "lib", "mujoco.dylib")); } else if (Target.Platform == UnrealTargetPlatform.Linux) { PublicAdditionalLibraries.Add(Path.Combine(ModuleDirectory, "lib", "libmujoco.so")); PublicDelayLoadDLLs.Add("libmujoco.so"); RuntimeDependencies.Add(Path.Combine("$(TargetOutputDir)", "libmujoco.so"), Path.Combine(ModuleDirectory, "lib", "libmujoco.so")); RuntimeDependencies.Add(Path.Combine("$(TargetOutputDir)", "libmujoco.so.3.2.7"), Path.Combine(ModuleDirectory, "lib", "libmujoco.so")); } } }