2019-06-20 09:27:45 +03:00
|
|
|
using System.IO;
|
|
|
|
using System.Xml;
|
|
|
|
|
|
|
|
using Xamarin;
|
2017-09-22 19:04:32 +03:00
|
|
|
|
|
|
|
namespace xharness
|
|
|
|
{
|
|
|
|
// iOS here means Xamarin.iOS, not iOS as opposed to tvOS/watchOS.
|
|
|
|
public class iOSTarget : Target
|
|
|
|
{
|
|
|
|
public iOSTestProject TestProject;
|
2018-11-14 21:26:30 +03:00
|
|
|
|
|
|
|
public MonoNativeInfo MonoNativeInfo => TestProject.MonoNativeInfo;
|
2019-06-20 09:27:45 +03:00
|
|
|
|
|
|
|
protected override void PostProcessExecutableProject ()
|
|
|
|
{
|
|
|
|
base.PostProcessExecutableProject ();
|
|
|
|
|
|
|
|
inputProject.FixArchitectures (SimulatorArchitectures, DeviceArchitectures);
|
|
|
|
inputProject.FixInfoPListInclude (Suffix);
|
|
|
|
inputProject.SetExtraLinkerDefs ("extra-linker-defs" + ExtraLinkerDefsSuffix + ".xml");
|
|
|
|
|
|
|
|
ProjectGuid = inputProject.GetProjectGuid ();
|
|
|
|
}
|
|
|
|
|
|
|
|
protected override void UpdateInfoPList ()
|
|
|
|
{
|
|
|
|
XmlDocument info_plist = new XmlDocument ();
|
|
|
|
var target_info_plist = Path.Combine (TargetDirectory, "Info" + Suffix + ".plist");
|
|
|
|
info_plist.LoadWithoutNetworkAccess (Path.Combine (TargetDirectory, "Info.plist"));
|
|
|
|
BundleIdentifier = info_plist.GetCFBundleIdentifier ();
|
|
|
|
info_plist.SetMinimumOSVersion (GetMinimumOSVersion (info_plist.GetMinimumOSVersion ()));
|
|
|
|
info_plist.SetUIDeviceFamily (UIDeviceFamily);
|
|
|
|
Harness.Save (info_plist, target_info_plist);
|
|
|
|
}
|
2017-09-22 19:04:32 +03:00
|
|
|
}
|
|
|
|
}
|
2019-06-20 09:27:45 +03:00
|
|
|
|