diff --git a/mk/xamarin.mk b/mk/xamarin.mk index 1e27cedd9bed..91332db4705e 100644 --- a/mk/xamarin.mk +++ b/mk/xamarin.mk @@ -1,5 +1,5 @@ ifdef ENABLE_XAMARIN -NEEDED_MACCORE_VERSION := 15f20dadb1d57f50c0dce68be9a138404c1dc9fa +NEEDED_MACCORE_VERSION := 05277dd2bc19bc6d291fcd0639e571b4d222eaef NEEDED_MACCORE_BRANCH := master MACCORE_DIRECTORY := maccore diff --git a/msbuild/Xamarin.iOS.Tasks.Core/Xamarin.iOS.Common.targets b/msbuild/Xamarin.iOS.Tasks.Core/Xamarin.iOS.Common.targets index af7badf8fce7..22230d3d1a8e 100644 --- a/msbuild/Xamarin.iOS.Tasks.Core/Xamarin.iOS.Common.targets +++ b/msbuild/Xamarin.iOS.Tasks.Core/Xamarin.iOS.Common.targets @@ -1613,6 +1613,9 @@ Copyright (C) 2013-2016 Xamarin. All rights reserved. <_IntermediateODRDir Condition="'$(_DistributionType)' == 'AdHoc' And '$(EmbedOnDemandResources)' == 'false'">$(DeviceSpecificIntermediateOutputPath)OnDemandResourcesPackage\OnDemandResources\ OnDemandResources + + false + true @@ -1650,7 +1653,7 @@ Copyright (C) 2013-2016 Xamarin. All rights reserved. + + + diff --git a/msbuild/tests/MyActionExtension/Info.plist b/msbuild/tests/MyActionExtension/Info.plist index 616a3faeb70e..ec4dfd0818d9 100644 --- a/msbuild/tests/MyActionExtension/Info.plist +++ b/msbuild/tests/MyActionExtension/Info.plist @@ -19,7 +19,7 @@ CFBundleSignature ???? CFBundleVersion - 1 + 1.0 NSExtension NSExtensionAttributes diff --git a/msbuild/tests/MyMasterDetailApp/Resources/Images.xcassets/AppIcons.appiconset/Contents.json b/msbuild/tests/MyMasterDetailApp/Resources/Images.xcassets/AppIcons.appiconset/Contents.json index 24f99745850a..013bc18d7d68 100644 --- a/msbuild/tests/MyMasterDetailApp/Resources/Images.xcassets/AppIcons.appiconset/Contents.json +++ b/msbuild/tests/MyMasterDetailApp/Resources/Images.xcassets/AppIcons.appiconset/Contents.json @@ -94,15 +94,10 @@ "size": "76x76", "scale": "2x", "idiom": "ipad" - }, - { - "size": "120x120", - "scale": "1x", - "idiom": "car" } ], "info": { "version": 1, "author": "xcode" } -} \ No newline at end of file +} diff --git a/msbuild/tests/MyMetalGame/Resources/Images.xcassets/AppIcons.appiconset/Contents.json b/msbuild/tests/MyMetalGame/Resources/Images.xcassets/AppIcons.appiconset/Contents.json index 24f99745850a..013bc18d7d68 100644 --- a/msbuild/tests/MyMetalGame/Resources/Images.xcassets/AppIcons.appiconset/Contents.json +++ b/msbuild/tests/MyMetalGame/Resources/Images.xcassets/AppIcons.appiconset/Contents.json @@ -94,15 +94,10 @@ "size": "76x76", "scale": "2x", "idiom": "ipad" - }, - { - "size": "120x120", - "scale": "1x", - "idiom": "car" } ], "info": { "version": 1, "author": "xcode" } -} \ No newline at end of file +} diff --git a/msbuild/tests/MyOpenGLApp/Resources/Images.xcassets/AppIcons.appiconset/Contents.json b/msbuild/tests/MyOpenGLApp/Resources/Images.xcassets/AppIcons.appiconset/Contents.json index 24f99745850a..013bc18d7d68 100644 --- a/msbuild/tests/MyOpenGLApp/Resources/Images.xcassets/AppIcons.appiconset/Contents.json +++ b/msbuild/tests/MyOpenGLApp/Resources/Images.xcassets/AppIcons.appiconset/Contents.json @@ -94,15 +94,10 @@ "size": "76x76", "scale": "2x", "idiom": "ipad" - }, - { - "size": "120x120", - "scale": "1x", - "idiom": "car" } ], "info": { "version": 1, "author": "xcode" } -} \ No newline at end of file +} diff --git a/msbuild/tests/MyTVApp/MyTVApp.csproj b/msbuild/tests/MyTVApp/MyTVApp.csproj index 81997f6543de..f74dbcf0dbc0 100644 --- a/msbuild/tests/MyTVApp/MyTVApp.csproj +++ b/msbuild/tests/MyTVApp/MyTVApp.csproj @@ -83,6 +83,13 @@ MySingleViewViewController.cs + + + true + {0F124570-8B79-4593-B618-A90E51F339DF} + MyTVServicesExtension + + diff --git a/msbuild/tests/MyTVServicesExtension/Entitlements.plist b/msbuild/tests/MyTVServicesExtension/Entitlements.plist new file mode 100644 index 000000000000..9ae599370b42 --- /dev/null +++ b/msbuild/tests/MyTVServicesExtension/Entitlements.plist @@ -0,0 +1,6 @@ + + + + + + diff --git a/msbuild/tests/MyTVServicesExtension/Info.plist b/msbuild/tests/MyTVServicesExtension/Info.plist new file mode 100644 index 000000000000..d74407fd543c --- /dev/null +++ b/msbuild/tests/MyTVServicesExtension/Info.plist @@ -0,0 +1,42 @@ + + + + + CFBundleDisplayName + MyTVServicesExtension + CFBundleName + MyTVServicesExtension + CFBundleIdentifier + com.xamarin.mytvapp.mytvservicesextension + CFBundleDevelopmentRegion + en + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + XPC! + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1.0 + MinimumOSVersion + 9.2 + NSExtension + + NSExtensionAttributes + + TVExtensionProtocols + + TVTopShelfProvider + + + NSExtensionPointIdentifier + com.apple.tv-services + NSExtensionPrincipalClass + ServiceProvider + + UIRequiredDeviceCapabilities + + arm64 + + + diff --git a/msbuild/tests/MyTVServicesExtension/MyTVServicesExtension.csproj b/msbuild/tests/MyTVServicesExtension/MyTVServicesExtension.csproj new file mode 100644 index 000000000000..fa2251f53fcf --- /dev/null +++ b/msbuild/tests/MyTVServicesExtension/MyTVServicesExtension.csproj @@ -0,0 +1,99 @@ + + + + Debug + iPhoneSimulator + {0F124570-8B79-4593-B618-A90E51F339DF} + {53F59511-8024-45F7-9A2A-2739F70C7A80};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + Library + MyTVServicesExtension + MyTVServicesExtension + Resources + + + true + full + false + bin\iPhoneSimulator\Debug + DEBUG; + prompt + 4 + false + iPhone Developer + true + true + true + true + true + None + x86_64 + false + + + true + bin\iPhone\Release + + prompt + 4 + false + iPhone Developer + true + true + true + true + true + Entitlements.plist + ARM64 + + + true + bin\iPhoneSimulator\Release + + prompt + 4 + false + iPhone Developer + true + true + None + x86_64 + + + true + full + false + bin\iPhone\Debug + DEBUG; + prompt + 4 + false + iPhone Developer + true + true + true + true + true + true + true + Entitlements.plist + 10001 + ARM64 + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/msbuild/tests/MyTVServicesExtension/ServiceProvider.cs b/msbuild/tests/MyTVServicesExtension/ServiceProvider.cs new file mode 100644 index 000000000000..6ec7eb5abab1 --- /dev/null +++ b/msbuild/tests/MyTVServicesExtension/ServiceProvider.cs @@ -0,0 +1,25 @@ +using System; +using Foundation; +using TVServices; + +namespace MyTVServicesExtension +{ + public class ServiceProvider : NSObject, ITVTopShelfProvider + { + protected ServiceProvider (IntPtr handle) : base (handle) + { + // Note: this .ctor should not contain any initialization logic. + } + + public TVContentItem [] TopShelfItems { + [Export ("topShelfItems")] + get; + } + + public TVTopShelfContentStyle TopShelfStyle { + [Export ("topShelfStyle")] + get; + } + } +} + diff --git a/msbuild/tests/MyTabbedApplication/Resources/Images.xcassets/AppIcons.appiconset/Contents.json b/msbuild/tests/MyTabbedApplication/Resources/Images.xcassets/AppIcons.appiconset/Contents.json index 24f99745850a..013bc18d7d68 100644 --- a/msbuild/tests/MyTabbedApplication/Resources/Images.xcassets/AppIcons.appiconset/Contents.json +++ b/msbuild/tests/MyTabbedApplication/Resources/Images.xcassets/AppIcons.appiconset/Contents.json @@ -94,15 +94,10 @@ "size": "76x76", "scale": "2x", "idiom": "ipad" - }, - { - "size": "120x120", - "scale": "1x", - "idiom": "car" } ], "info": { "version": 1, "author": "xcode" } -} \ No newline at end of file +} diff --git a/msbuild/tests/MyWatch2Container/Resources/Images.xcassets/AppIcons.appiconset/Contents.json b/msbuild/tests/MyWatch2Container/Resources/Images.xcassets/AppIcons.appiconset/Contents.json index 6a8e7fe22cc6..dbe9cffcec71 100644 --- a/msbuild/tests/MyWatch2Container/Resources/Images.xcassets/AppIcons.appiconset/Contents.json +++ b/msbuild/tests/MyWatch2Container/Resources/Images.xcassets/AppIcons.appiconset/Contents.json @@ -95,11 +95,6 @@ "size": "76x76", "scale": "2x" }, - { - "idiom": "car", - "size": "120x120", - "scale": "1x" - }, { "size": "24x24", "idiom": "watch", @@ -159,4 +154,4 @@ "version": 1, "author": "xcode" } -} \ No newline at end of file +} diff --git a/msbuild/tests/MyWatchApp/Resources/Images.xcassets/AppIcons.appiconset/Contents.json b/msbuild/tests/MyWatchApp/Resources/Images.xcassets/AppIcons.appiconset/Contents.json index 24f99745850a..013bc18d7d68 100644 --- a/msbuild/tests/MyWatchApp/Resources/Images.xcassets/AppIcons.appiconset/Contents.json +++ b/msbuild/tests/MyWatchApp/Resources/Images.xcassets/AppIcons.appiconset/Contents.json @@ -94,15 +94,10 @@ "size": "76x76", "scale": "2x", "idiom": "ipad" - }, - { - "size": "120x120", - "scale": "1x", - "idiom": "car" } ], "info": { "version": 1, "author": "xcode" } -} \ No newline at end of file +} diff --git a/msbuild/tests/MyWatchApp2/Resources/Images.xcassets/AppIcons.appiconset/Contents.json b/msbuild/tests/MyWatchApp2/Resources/Images.xcassets/AppIcons.appiconset/Contents.json index 85bac0d93fb4..ef34f288a521 100644 --- a/msbuild/tests/MyWatchApp2/Resources/Images.xcassets/AppIcons.appiconset/Contents.json +++ b/msbuild/tests/MyWatchApp2/Resources/Images.xcassets/AppIcons.appiconset/Contents.json @@ -95,11 +95,6 @@ "size" : "76x76", "scale" : "2x" }, - { - "idiom" : "car", - "size" : "120x120", - "scale" : "1x" - }, { "size" : "24x24", "idiom" : "watch", @@ -167,4 +162,4 @@ "version" : 1, "author" : "xcode" } -} \ No newline at end of file +} diff --git a/msbuild/tests/MyWebViewApp/Resources/Images.xcassets/AppIcons.appiconset/Contents.json b/msbuild/tests/MyWebViewApp/Resources/Images.xcassets/AppIcons.appiconset/Contents.json index 24f99745850a..013bc18d7d68 100644 --- a/msbuild/tests/MyWebViewApp/Resources/Images.xcassets/AppIcons.appiconset/Contents.json +++ b/msbuild/tests/MyWebViewApp/Resources/Images.xcassets/AppIcons.appiconset/Contents.json @@ -94,15 +94,10 @@ "size": "76x76", "scale": "2x", "idiom": "ipad" - }, - { - "size": "120x120", - "scale": "1x", - "idiom": "car" } ], "info": { "version": 1, "author": "xcode" } -} \ No newline at end of file +} diff --git a/msbuild/tests/MyiOSAppWithBinding/Resources/Images.xcassets/AppIcons.appiconset/Contents.json b/msbuild/tests/MyiOSAppWithBinding/Resources/Images.xcassets/AppIcons.appiconset/Contents.json index 6a8e7fe22cc6..dbe9cffcec71 100644 --- a/msbuild/tests/MyiOSAppWithBinding/Resources/Images.xcassets/AppIcons.appiconset/Contents.json +++ b/msbuild/tests/MyiOSAppWithBinding/Resources/Images.xcassets/AppIcons.appiconset/Contents.json @@ -95,11 +95,6 @@ "size": "76x76", "scale": "2x" }, - { - "idiom": "car", - "size": "120x120", - "scale": "1x" - }, { "size": "24x24", "idiom": "watch", @@ -159,4 +154,4 @@ "version": 1, "author": "xcode" } -} \ No newline at end of file +} diff --git a/msbuild/tests/Xamarin.iOS.Tasks.Tests/ProjectsTests/Extensions/ExtensionTestBase.cs b/msbuild/tests/Xamarin.iOS.Tasks.Tests/ProjectsTests/Extensions/ExtensionTestBase.cs index 06c8d3099c27..5c98b3109f94 100644 --- a/msbuild/tests/Xamarin.iOS.Tasks.Tests/ProjectsTests/Extensions/ExtensionTestBase.cs +++ b/msbuild/tests/Xamarin.iOS.Tasks.Tests/ProjectsTests/Extensions/ExtensionTestBase.cs @@ -5,15 +5,27 @@ namespace Xamarin.iOS.Tasks { public class ExtensionTestBase : TestBase { + public string BundlePath; public string Platform; public ExtensionTestBase (string platform) { Platform = platform; } - public void BuildExtension (string hostAppName, string extensionName, string platform, int expectedErrorCount = 0) + public ExtensionTestBase (string bundlePath, string platform) { - var mtouchPaths = SetupProjectPaths (hostAppName, "../", true, platform); + BundlePath = bundlePath; + Platform = platform; + } + + public void BuildExtension (string hostAppName, string extensionName, string platform, int expectedErrorCount = 0) + { + BuildExtension (hostAppName, extensionName, platform, platform, expectedErrorCount); + } + + public void BuildExtension (string hostAppName, string extensionName, string bundlePath, string platform, int expectedErrorCount = 0) + { + var mtouchPaths = SetupProjectPaths (hostAppName, "../", true, bundlePath); var proj = SetupProject (Engine, mtouchPaths ["project_csprojpath"]); @@ -22,7 +34,7 @@ public void BuildExtension (string hostAppName, string extensionName, string pla Engine.GlobalProperties.SetProperty ("Platform", platform); RunTarget (proj, "Clean"); - Assert.IsFalse (Directory.Exists (AppBundlePath), "{1}: App bundle exists after cleanup: {0} ", AppBundlePath, platform); + Assert.IsFalse (Directory.Exists (AppBundlePath), "{1}: App bundle exists after cleanup: {0} ", AppBundlePath, bundlePath); proj = SetupProject (Engine, mtouchPaths.ProjectCSProjPath); RunTarget (proj, "Build", expectedErrorCount); @@ -30,7 +42,7 @@ public void BuildExtension (string hostAppName, string extensionName, string pla if (expectedErrorCount > 0) return; - Assert.IsTrue (Directory.Exists (AppBundlePath), "{1} App Bundle does not exist: {0} ", AppBundlePath, platform); + Assert.IsTrue (Directory.Exists (AppBundlePath), "{1} App Bundle does not exist: {0} ", AppBundlePath, bundlePath); TestPList (AppBundlePath, new string[] {"CFBundleExecutable", "CFBundleVersion"}); @@ -41,13 +53,14 @@ public void BuildExtension (string hostAppName, string extensionName, string pla TestFilesExists (AppBundlePath, ExpectedAppFiles); TestFilesDoNotExist (AppBundlePath, UnexpectedAppFiles); - if (IsWatchOS) { - var coreFiles = platform == "iPhone" ? CoreAppFiles : CoreAppFiles.Union (new string [] { extensionName + ".dll", Path.GetFileNameWithoutExtension (extensionPath) }).ToArray (); + var coreFiles = platform == "iPhone" ? CoreAppFiles : CoreAppFiles.Union (new string [] { hostAppName + ".exe", hostAppName }).ToArray (); + if (IsTVOS) + TestFilesExists (platform == "iPhone" ? Path.Combine (AppBundlePath, ".monotouch-64") : AppBundlePath, coreFiles); + else if (IsWatchOS) { + coreFiles = platform == "iPhone" ? CoreAppFiles : CoreAppFiles.Union (new string [] { extensionName + ".dll", Path.GetFileNameWithoutExtension (extensionPath) }).ToArray (); TestFilesExists (platform == "iPhone" ? Path.Combine (extensionPath, ".monotouch-32") : extensionPath, coreFiles); - } else { - var coreFiles = platform == "iPhone" ? CoreAppFiles : CoreAppFiles.Union (new string [] { hostAppName + ".exe", hostAppName }).ToArray (); + } else TestFilesExists (platform == "iPhone" ? Path.Combine (AppBundlePath, ".monotouch-32") : AppBundlePath, coreFiles); - } } public void SetupPaths (string appName, string platform) diff --git a/msbuild/tests/Xamarin.iOS.Tasks.Tests/ProjectsTests/TVOS/MyTVApp.cs b/msbuild/tests/Xamarin.iOS.Tasks.Tests/ProjectsTests/TVOS/TVApp.cs similarity index 58% rename from msbuild/tests/Xamarin.iOS.Tasks.Tests/ProjectsTests/TVOS/MyTVApp.cs rename to msbuild/tests/Xamarin.iOS.Tasks.Tests/ProjectsTests/TVOS/TVApp.cs index 99e82dc8400b..b6af7c5f2908 100644 --- a/msbuild/tests/Xamarin.iOS.Tasks.Tests/ProjectsTests/TVOS/MyTVApp.cs +++ b/msbuild/tests/Xamarin.iOS.Tasks.Tests/ProjectsTests/TVOS/TVApp.cs @@ -4,16 +4,16 @@ namespace Xamarin.iOS.Tasks { [TestFixture("TV", "iPhone")] [TestFixture("TVSimulator", "iPhoneSimulator")] - public class MyTVAppTests : ProjectTest + public class TVAppTests : ExtensionTestBase { - public MyTVAppTests(string bundlePath, string platform) : base(bundlePath, platform) + public TVAppTests (string bundlePath, string platform) : base(bundlePath, platform) { } [Test] public void BasicTest() { - BuildProject("MyTVApp", BundlePath, Platform); + BuildExtension("MyTVApp", "MyTVServicesExtension", BundlePath, Platform); } public override string TargetFrameworkIdentifier { diff --git a/msbuild/tests/Xamarin.iOS.Tasks.Tests/Xamarin.iOS.Tasks.Tests.csproj b/msbuild/tests/Xamarin.iOS.Tasks.Tests/Xamarin.iOS.Tasks.Tests.csproj index 2138c8163aaa..8a9c88637f83 100644 --- a/msbuild/tests/Xamarin.iOS.Tasks.Tests/Xamarin.iOS.Tasks.Tests.csproj +++ b/msbuild/tests/Xamarin.iOS.Tasks.Tests/Xamarin.iOS.Tasks.Tests.csproj @@ -92,7 +92,7 @@ Configuration.cs - + diff --git a/src/Foundation/NSObject2.cs b/src/Foundation/NSObject2.cs index c1df9c2b5c24..f79d7f9507fd 100644 --- a/src/Foundation/NSObject2.cs +++ b/src/Foundation/NSObject2.cs @@ -786,11 +786,14 @@ class Observer : NSObject { Action cback; NSString key; - public Observer (NSObject obj, NSString key, Action cback) + public Observer (NSObject obj, NSString key, Action observer) { + if (observer == null) + throw new ArgumentNullException (nameof(observer)); + this.obj = new WeakReference (obj); this.key = key; - this.cback = cback; + this.cback = observer; IsDirectBinding = false; } diff --git a/system-dependencies.sh b/system-dependencies.sh index fa871368c37b..72ab5b6bb986 100755 --- a/system-dependencies.sh +++ b/system-dependencies.sh @@ -198,10 +198,16 @@ function check_specific_xcode () { local XCODE_DEVELOPER_ROOT=`grep XCODE$1_DEVELOPER_ROOT= Make.config | sed 's/.*=//'` local XCODE_VERSION=`grep XCODE$1_VERSION= Make.config | sed 's/.*=//'` local XCODE_ROOT=$(dirname `dirname $XCODE_DEVELOPER_ROOT`) + local ENABLE_XAMARIN=$(grep -s ^ENABLE_XAMARIN= Make.config.local configure.inc | sed 's/.*=//') if ! test -d $XCODE_DEVELOPER_ROOT; then if ! test -z $PROVISION_XCODE; then - install_specific_xcode $1 + if ! test -z $ENABLE_XAMARIN; then + install_specific_xcode $1 + else + fail "Automatic provisioning of Xcode is only supported for provisioning internal build bots." + fail "Please download and install Xcode $XCODE_VERSION here: https://developer.apple.com/downloads/index.action?name=Xcode" + fi else fail "You must install Xcode ($XCODE_VERSION) in $XCODE_ROOT. You can download Xcode $XCODE_VERSION here: https://developer.apple.com/downloads/index.action?name=Xcode" fi diff --git a/tests/HtmlTransform.xslt b/tests/HtmlTransform.xslt new file mode 100644 index 000000000000..94425a55eaf7 --- /dev/null +++ b/tests/HtmlTransform.xslt @@ -0,0 +1,100 @@ + + + + + + + + + + <b> + + </b><br><br> + + <b>NUnit Version:</b> + + &nbsp;&nbsp;&nbsp;<b>Date:</b> + + &nbsp;&nbsp;&nbsp;<b>Time:</b> + + <br><br> + + <b>Runtime Environment -</b><br> + &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<b>OS Version:</b> + + <br> + &nbsp;&nbsp;&nbsp;<b>CLR Version:</b> + + <br><br> + + <b>Tests run: + + + + , Errors: + + , Failures: + + + + , Inconclusive: + + + , Time: + + seconds<br> + &nbsp;&nbsp;&nbsp;Not run: + + , Invalid: + + , Ignored: + + , Skipped: + + </b><br><br> + + + , Failures: + + , Not run: + + , Time: + + seconds</b><br><br> + + + + + + + <h4>Failures:</h4> + <ol> + + </ol> + + + + <h4>Tests not run:</h4> + <ol> + + </ol> + + + + <hr> + + + + <pre> + <li> + + : + + + + + + </pre> + + + \ No newline at end of file diff --git a/tests/common/Configuration.cs b/tests/common/Configuration.cs index 36a4f8d2fb26..7546d1cb3756 100644 --- a/tests/common/Configuration.cs +++ b/tests/common/Configuration.cs @@ -45,23 +45,31 @@ public static string MonoTouchRootDirectory { } } - static string FindConfigFile (string name) + static IEnumerable FindConfigFiles (string name) { var dir = Environment.CurrentDirectory; while (dir != "/") { var file = Path.Combine (dir, name); if (File.Exists (file)) - return file; + yield return file; + file = Path.Combine (dir, "xamarin-macios", name); + if (File.Exists (file)) + yield return file; dir = Path.GetDirectoryName (dir); } - return null; } static void ParseConfigFiles () { - ParseConfigFile (FindConfigFile ("test.config")); - ParseConfigFile (FindConfigFile ("Make.config.local")); - ParseConfigFile (FindConfigFile ("Make.config")); + ParseConfigFiles (FindConfigFiles ("test.config")); + ParseConfigFiles (FindConfigFiles ("Make.config.local")); + ParseConfigFiles (FindConfigFiles ("Make.config")); + } + + static void ParseConfigFiles (IEnumerable files) + { + foreach (var file in files) + ParseConfigFile (file); } static void ParseConfigFile (string file) @@ -148,16 +156,16 @@ static Configuration () Console.WriteLine (" INCLUDE_WATCHOS={0}", include_watchos); } - public static string MaccorePath { + public static string RootPath { get { var dir = Environment.CurrentDirectory; - var path = Path.Combine (dir, "maccore"); + var path = Path.Combine (dir, "xamarin-macios"); while (!Directory.Exists (path) && path.Length > 3) { dir = Path.GetDirectoryName (dir); - path = Path.Combine (dir, "maccore"); + path = Path.Combine (dir, "xamarin-macios"); } if (!Directory.Exists (path)) - throw new Exception ("Could not find the maccore repo"); + throw new Exception ("Could not find the xamarin-macios repo"); return path; } } @@ -217,13 +225,13 @@ public static string SdkBinDir { public static string BinDirXI { get { - return Path.Combine (MaccorePath, "_ios-build", "Library", "Frameworks", "Xamarin.iOS.framework", "Versions", "Current", "bin"); + return Path.Combine (RootPath, "_ios-build", "Library", "Frameworks", "Xamarin.iOS.framework", "Versions", "Current", "bin"); } } public static string BinDirXM { get { - return Path.Combine (MaccorePath, "_mac-build", "Library", "Frameworks", "Xamarin.Mac.framework", "Versions", "Current", "bin"); + return Path.Combine (RootPath, "_mac-build", "Library", "Frameworks", "Xamarin.Mac.framework", "Versions", "Current", "bin"); } }