public static void AddProjectDefines( XmlDocument project, MonoNativeFlavor flavor, string platform = null, string config = null) { switch (flavor) { case MonoNativeFlavor.Compat: if (platform != null) { project.AddAdditionalDefines("MONO_NATIVE_COMPAT", platform, config); } else { project.AddAdditionalDefines("MONO_NATIVE_COMPAT"); } break; case MonoNativeFlavor.Unified: if (platform != null) { project.AddAdditionalDefines("MONO_NATIVE_UNIFIED", platform, config); } else { project.AddAdditionalDefines("MONO_NATIVE_UNIFIED"); } break; default: throw new Exception($"Unknown MonoNativeFlavor: {flavor}"); } }
public MonoNativeInfo(DevicePlatform platform, MonoNativeFlavor flavor, string rootDirectory, Action <int, string> logAction = null) { DevicePlatform = platform; this.log = logAction; this.rootDirectory = rootDirectory ?? throw new ArgumentNullException(nameof(rootDirectory)); this.Flavor = flavor; }
public static void AddProjectDefines( XmlDocument project, MonoNativeFlavor flavor, MonoNativeLinkMode link, string platform, string config) { AddProjectDefines(project, flavor, platform, config); AddProjectDefines(project, link, platform, config); }
public MacMonoNativeInfo(Harness harness, MonoNativeFlavor flavor, MacFlavors macFlavor) : base(harness, flavor) { if (macFlavor == MacFlavors.All) { throw new ArgumentException("Each target must be a specific flavor"); } MacFlavor = macFlavor; }
public static string GetDynamicLibraryName(MonoNativeFlavor flavor) { switch (flavor) { case MonoNativeFlavor.Compat: return("libmono-native-compat.dylib"); case MonoNativeFlavor.Unified: return("libmono-native-unified.dylib"); default: Assert.Fail($"Invalid MonoNativeFlavor: {flavor}"); throw new NotImplementedException(); } }
public static string GetMinimumOSVersion(DevicePlatform platform, MonoNativeFlavor flavor) { switch (flavor) { case MonoNativeFlavor.Compat: switch (platform) { case DevicePlatform.iOS: return("8.0"); case DevicePlatform.tvOS: return("9.0"); case DevicePlatform.watchOS: return("2.0"); case DevicePlatform.macOS: return("10.9"); default: throw new Exception($"Unknown DevicePlatform: {platform}"); } case MonoNativeFlavor.Unified: switch (platform) { case DevicePlatform.iOS: return("10.0"); case DevicePlatform.tvOS: return("10.1"); // Can't use 10.0 due to http://openradar.appspot.com/radar?id=4966840983879680. case DevicePlatform.watchOS: return("4.0"); case DevicePlatform.macOS: return("10.12"); default: throw new Exception($"Unknown DevicePlatform: {platform}"); } default: throw new Exception($"Unknown MonoNativeFlavor: {flavor}"); } }
public static string GetPInvokeLibraryName(MonoNativeFlavor flavor, MonoNativeLinkMode link) { switch (link) { case MonoNativeLinkMode.Static: return(null); case MonoNativeLinkMode.Dynamic: return(GetDynamicLibraryName(flavor)); case MonoNativeLinkMode.Symlink: return("libmono-native.dylib"); default: Assert.Fail($"Invalid link mode: {MonoNativeConfig.LinkMode}"); throw new NotImplementedException(); } }
public MonoNativeInfo(Harness harness, MonoNativeFlavor flavor) { Harness = harness; Flavor = flavor; }
public MacMonoNativeInfo(Harness harness, MonoNativeFlavor flavor) : base(harness, flavor) { }
public MacMonoNativeInfo(MonoNativeFlavor flavor, string rootDirectory, Action <int, string> logAction) : base(flavor, rootDirectory, logAction) { }