Merge branch 'main' into xcode13.0-quicklookui-b1

This commit is contained in:
Rachel Kang 2021-08-13 14:06:43 -04:00 коммит произвёл GitHub
Родитель ebec4f33dc bd7e5c20c1
Коммит d8a9f40e79
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
175 изменённых файлов: 1711 добавлений и 866 удалений

Просмотреть файл

@ -140,8 +140,8 @@ MACCATALYST_NUGET_VERSION_FULL=$(MACCATALYST_NUGET_VERSION_NO_METADATA)+$(NUGET_
# Xcode version should have both a major and a minor version (even if the minor version is 0)
XCODE_VERSION=13.0
XCODE_URL=https://dl.internalx.com/internal-files/xcodes/Xcode_13_beta_4.xip
XCODE_DEVELOPER_ROOT=/Applications/Xcode_13.0.0-beta4.app/Contents/Developer
XCODE_URL=https://dl.internalx.com/internal-files/xcodes/Xcode_13_beta_5.xip
XCODE_DEVELOPER_ROOT=/Applications/Xcode_13.0.0-beta5.app/Contents/Developer
XCODE_PRODUCT_BUILD_VERSION:=$(shell /usr/libexec/PlistBuddy -c 'Print :ProductBuildVersion' $(XCODE_DEVELOPER_ROOT)/../version.plist)
# Mono version embedded in XI/XM (NEEDED_MONO_VERSION/BRANCH) are specified in mk/mono.mk
@ -167,9 +167,9 @@ MIN_CMAKE_URL=https://cmake.org/files/v3.6/cmake-3.6.2-Darwin-x86_64.dmg
MIN_CMAKE_VERSION=2.8.8
# ObjectiveSharpie min/max versions
MIN_SHARPIE_VERSION=3.5.45
MIN_SHARPIE_VERSION=3.5.46
MAX_SHARPIE_VERSION=3.5.99
MIN_SHARPIE_URL=https://download.visualstudio.microsoft.com/download/pr/77766fbc-995f-410b-9546-4a1731051956/d3f34a07d9c3a2fcdda16bb3fe5b41e8/objectivesharpie-3.5.45.pkg
MIN_SHARPIE_URL=https://download.visualstudio.microsoft.com/download/pr/0e9ecce4-10b6-46a4-ae06-ad031b25eafc/761cd868c5c27f5b68765e1fa53fd873/objectivesharpie-3.5.46.pkg
# Minimum OSX versions for building XI/XM
MIN_OSX_BUILD_VERSION=11.0

Просмотреть файл

@ -143,6 +143,9 @@ $(DOTNET_NUPKG_DIR)/vs-workload.props: Workloads/vs-workload.template.props
$(DOTNET_NUPKG_DIR)/SignList.xml: Workloads/SignList.xml
$(Q) $(CP) $< $@
$(DOTNET_NUPKG_DIR)/SignList.targets: Workloads/SignList.targets
$(Q) $(CP) $< $@
TEMPLATED_FILES = \
$(foreach platform,$(DOTNET_PLATFORMS),Microsoft.$(platform).Sdk/targets/Microsoft.$(platform).Sdk.Versions.props) \
$(foreach platform,$(DOTNET_PLATFORMS),Microsoft.$(platform).Sdk/targets/Microsoft.$(platform).Sdk.SupportedTargetPlatforms.props) \
@ -213,7 +216,7 @@ pack-$(shell echo $(1) | tr A-Z a-z): $$(RUNTIME_PACKS_$(1)) $$(REF_PACKS_$(1))
endef
$(foreach platform,$(DOTNET_PLATFORMS_UPPERCASE),$(eval $(call PacksDefinitions,$(platform))))
TARGETS += $(RUNTIME_PACKS) $(REF_PACKS) $(SDK_PACKS) $(TEMPLATE_PACKS) $(WORKLOAD_PACKS) $(DOTNET_NUPKG_DIR)/vs-workload.props $(DOTNET_NUPKG_DIR)/SignList.xml
TARGETS += $(RUNTIME_PACKS) $(REF_PACKS) $(SDK_PACKS) $(TEMPLATE_PACKS) $(WORKLOAD_PACKS) $(DOTNET_NUPKG_DIR)/vs-workload.props $(DOTNET_NUPKG_DIR)/SignList.xml $(DOTNET_NUPKG_DIR)/SignList.targets
define InstallWorkload
# .NET comes with a workload for us, but we don't want that, we want our own. So delete the workload that comes with .NET.

Просмотреть файл

@ -0,0 +1,53 @@
<Project>
<!-- Extensions for signing nested .zip files for https://github.com/xamarin/yaml-templates/blob/e0f3cdce6210e05495188def8c695372b64ada1d/sign-artifacts/steps/v2-SignFiles.proj -->
<Target Name="_UnzipNestedZips"
BeforeTargets="_CalculateItemsToSign">
<PropertyGroup>
<_NestedZipExtractionDir>$(_WorkingDir)nested\</_NestedZipExtractionDir>
</PropertyGroup>
<ItemGroup>
<_NestedBrokerZip Include="$(_WorkingDir)**\Broker.zip" />
<_NestedBuildZip Include="$(_WorkingDir)**\Build.zip" />
<_NestediOSAppZip Include="$(_WorkingDir)**\Xamarin.PreBuilt.iOS.app.zip" />
</ItemGroup>
<RemoveDir Directories="$(_NestedZipExtractionDir)" />
<Unzip
SourceFiles="@(_NestedBrokerZip)"
DestinationFolder="@(_NestedBrokerZip -> '$(_NestedZipExtractionDir)%(Filename)')"
/>
<Delete Files="@(_NestedBrokerZip)" />
<Unzip
SourceFiles="@(_NestedBuildZip)"
DestinationFolder="@(_NestedBuildZip -> '$(_NestedZipExtractionDir)%(Filename)')"
/>
<Delete Files="@(_NestedBuildZip)" />
<Unzip
SourceFiles="@(_NestediOSAppZip)"
DestinationFolder="@(_NestediOSAppZip -> '$(_NestedZipExtractionDir)%(Filename)')"
/>
<Delete Files="@(_NestediOSAppZip)" />
</Target>
<Target Name="_ZipNestedZips"
DependsOnTargets="_UnzipNestedZips"
AfterTargets="SignFiles" >
<ZipDirectory
SourceDirectory="@(_NestedBrokerZip -> '$(_NestedZipExtractionDir)%(Filename)')"
DestinationFile="@(_NestedBrokerZip)"
/>
<ZipDirectory
SourceDirectory="@(_NestedBuildZip -> '$(_NestedZipExtractionDir)%(Filename)')"
DestinationFile="@(_NestedBuildZip)"
/>
<ZipDirectory
SourceDirectory="@(_NestediOSAppZip -> '$(_NestedZipExtractionDir)%(Filename)')"
DestinationFile="@(_NestediOSAppZip)"
/>
<RemoveDir Directories="$(_NestedZipExtractionDir)" />
</Target>
</Project>

Просмотреть файл

@ -3,11 +3,48 @@
<ItemGroup>
<Skip Include="Mono.Options.dll" />
<Skip Include="System.Reflection.MetadataLoadContext.dll" />
<!-- Microsoft.iOS.Windows.Sdk content -->
<Skip Include="tools\msbuild\iOS\Microsoft.Win32.Registry.dll" />
<Skip Include="tools\msbuild\iOS\System.Buffers.dll" />
<Skip Include="tools\msbuild\iOS\System.Memory.dll" />
<Skip Include="tools\msbuild\iOS\System.Numerics.Vectors.dll" />
<Skip Include="tools\msbuild\iOS\System.Runtime.CompilerServices.Unsafe.dll" />
<Skip Include="tools\msbuild\iOS\System.Security.AccessControl.dll" />
<Skip Include="tools\msbuild\iOS\System.Security.Cryptography.Pkcs.dll" />
<Skip Include="tools\msbuild\iOS\System.Security.Cryptography.ProtectedData.dll" />
<Skip Include="tools\msbuild\iOS\System.Security.Principal.Windows.dll" />
<Skip Include="tools\msbuild\iOS\ws2_32.dll" />
<!-- Broker.zip -->
<Skip Include="Broker\Newtonsoft.Json.dll" />
<Skip Include="Broker\System.Net.Mqtt.dll" />
<Skip Include="Broker\System.Net.Mqtt.Server.dll" />
<Skip Include="Broker\System.Reactive.dll" />
<Skip Include="Broker\System.Runtime.CompilerServices.Unsafe.dll" />
<Skip Include="Broker\System.Security.Cryptography.ProtectedData.dll" />
<Skip Include="Broker\System.Threading.Tasks.Extensions.dll" />
<Skip Include="Broker\System.ValueTuple.dll" />
<!-- Build.zip -->
<Skip Include="Build\Microsoft.Bcl.AsyncInterfaces.dll" />
<Skip Include="Build\System.Buffers.dll" />
<Skip Include="Build\System.Collections.Immutable.dll" />
<Skip Include="Build\System.Memory.dll" />
<Skip Include="Build\System.Numerics.Vectors.dll" />
<Skip Include="Build\System.Reflection.Metadata.dll" />
<Skip Include="Build\System.Resources.Extensions.dll" />
<Skip Include="Build\System.Runtime.CompilerServices.Unsafe.dll" />
<Skip Include="Build\System.Text.Encodings.Web.dll" />
<Skip Include="Build\System.Text.Json.dll" />
<Skip Include="Build\System.Threading.Tasks.Dataflow.dll" />
<Skip Include="Build\System.Threading.Tasks.Extensions.dll" />
</ItemGroup>
<!--ItemGroup>
<ThirdParty Include="" />
</ItemGroup-->
<ItemGroup>
<ThirdParty Include="BouncyCastle.Crypto.dll" />
<ThirdParty Include="imobiledevice-*\*.dll" />
<ThirdParty Include="imobiledevice-*\*.exe" />
<!-- Build.zip -->
<ThirdParty Include="Mono.Cecil*.dll" />
</ItemGroup>
<ItemGroup>
<FirstParty Include="bgen.dll" />
@ -21,5 +58,21 @@
<FirstParty Include="System.dll" />
<FirstParty Include="System.Numerics.dll" />
<FirstParty Include="System.Xml.dll" />
<!-- Microsoft.iOS.Windows.Sdk content -->
<FirstParty Include="iSign.Core.dll" />
<FirstParty Include="System.Diagnostics.Tracer.dll" />
<!-- Broker.zip -->
<FirstParty Include="Broker.exe" />
<FirstParty Include="Merq.dll" />
<!-- Build.zip -->
<FirstParty Include="Build.exe" />
<FirstParty Include="Microsoft.Build*.dll" />
<FirstParty Include="Microsoft.NET.StringTools.dll" />
<FirstParty Include="System.IO.Abstractions.dll" />
<!-- Xamarin.PreBuilt.iOS.app.zip -->
<FirstParty Include="Xamarin.PreBuilt.iOS.app\*.dll" />
</ItemGroup>
<Import Project="$(MSBuildThisFileDirectory)SignList.targets" />
</Project>

Просмотреть файл

@ -349,10 +349,10 @@
<!-- We only include any mono components when linking with mono statically. The components are already included in the dynamic versions of Mono (both the dylib and the framework) -->
<ItemGroup Condition="'$(_LibMonoLinkMode)' == 'static'">
<!-- Remove files mono told us not to link with -->
<_MonoLibrary Remove="@(_MonoRuntimeComponentDontLink -> '$(_MonoRuntimePackPath)/native/%(Identity)')" />
<_MonoLibrary Remove="@(_MonoRuntimeComponentDontLink -> '$(_MonoRuntimePackPath)native/%(Identity)')" />
<!-- Add files mono told us to link with -->
<_MonoLibrary Include="@(_MonoRuntimeComponentLink -> '$(_MonoRuntimePackPath)/native/%(Identity)')" />
<_MonoLibrary Include="@(_MonoRuntimeComponentLink -> '$(_MonoRuntimePackPath)native/%(Identity)')" />
</ItemGroup>
</Target>

Просмотреть файл

@ -1,4 +1,4 @@
NEEDED_MONO_VERSION := c633fe923832f0c3db3c4e6aa98e5592bf5a06e7
NEEDED_MONO_VERSION := 8b6809243db21a9ab3e2c21570958ab9c537ce29
NEEDED_MONO_BRANCH := 2020-02
MONO_DIRECTORY := mono

Просмотреть файл

@ -129,7 +129,7 @@ namespace Xamarin.MacDev.Tasks
if (!Compile (plist))
return false;
// Merge with any partial plists generated by the Asset Catalog compiler...
// Merge with any partial plists...
MergePartialPlistTemplates (plist);
CompiledAppManifest = new TaskItem (Path.Combine (AppManifestBundleDirectory, "Info.plist"));

Просмотреть файл

@ -201,6 +201,9 @@ namespace Xamarin.MacDev.Tasks
}
BundleResources = bundleResources.ToArray ();
if (PartialAppManifests != null)
partialPlists.AddRange (PartialAppManifests);
PartialAppManifests = partialPlists.ToArray ();
return !Log.HasLoggedErrors;

Просмотреть файл

@ -131,6 +131,7 @@ namespace Xamarin.MacDev.Tasks {
xml.Add (value);
break;
default:
Log.LogMessage (MessageImportance.Low, "Skipping unknown argument '{0}' with value '{1}'", name, value);
break;
}
}

Просмотреть файл

@ -36,11 +36,16 @@ namespace Xamarin.MacDev.Tasks
{
var document = XDocument.Load (this.File.ItemSpec);
this.Items = document.Root
var items = document.Root
.Elements (ItemGroupElementName)
.SelectMany (element => element.Elements ())
.Select (element => this.CreateItemFromElement (element))
.ToArray ();
.ToList ();
if (Items != null)
items.AddRange (Items);
Items = items.ToArray ();
return true;
}

Просмотреть файл

@ -286,7 +286,7 @@ Copyright (C) 2018 Microsoft. All rights reserved.
<Target Name="_CompileAppManifest"
DependsOnTargets="$(_CompileAppManifestDependsOn)"
Inputs="$(_AppManifest);@(_PartialAppManifest)"
Inputs="$(_AppManifest);@(PartialAppManifest)"
Outputs="$(_AppBundlePath)$(_AppBundleManifestRelativePath)Info.plist" >
<CompileAppManifest
SessionId="$(BuildSessionId)"
@ -307,7 +307,7 @@ Copyright (C) 2018 Microsoft. All rights reserved.
IsWatchExtension="$(IsWatchExtension)"
IsXPCService="$(IsXPCService)"
MinimumOSVersion="$(_MinimumOSVersion)"
PartialAppManifests="@(_PartialAppManifest)"
PartialAppManifests="@(PartialAppManifest)"
ResourceRules="$(_PreparedResourceRules)"
TargetArchitectures="$(TargetArchitectures)"
TargetFrameworkMoniker="$(_ComputedTargetFrameworkMoniker)"
@ -439,7 +439,7 @@ Copyright (C) 2018 Microsoft. All rights reserved.
<!-- If _BeforeCoreCompileImageAssets did not delete the generated items lists from _CoreCompileImageAsset, then we read them
since that target won't run and we need the output items that are cached in those files, which includes full metadata -->
<ReadItemsFromFile File="$(_ACTool_PartialAppManifestCache)" Condition="Exists('$(_ACTool_PartialAppManifestCache)')">
<Output TaskParameter="Items" ItemName="_PartialAppManifest" />
<Output TaskParameter="Items" ItemName="PartialAppManifest" />
</ReadItemsFromFile>
<ReadItemsFromFile File="$(_ACTool_BundleResourceCache)" Condition="Exists('$(_ACTool_BundleResourceCache)')">
<Output TaskParameter="Items" ItemName="_BundleResourceWithLogicalName" />
@ -476,7 +476,7 @@ Copyright (C) 2018 Microsoft. All rights reserved.
SdkVersion="$(_SdkVersion)"
TargetFrameworkMoniker="$(_ComputedTargetFrameworkMoniker)"
>
<Output TaskParameter="PartialAppManifest" ItemName="_PartialAppManifest" />
<Output TaskParameter="PartialAppManifest" ItemName="PartialAppManifest" />
<Output TaskParameter="BundleResources" ItemName="_BundleResourceWithLogicalName" />
<!-- Local items to be persisted to items files -->
@ -485,7 +485,7 @@ Copyright (C) 2018 Microsoft. All rights reserved.
</ACTool>
<!-- Cache the generated outputs items for incremental build support -->
<WriteItemsToFile Items="@(_ACTool_PartialAppManifest)" ItemName="_PartialAppManifest" File="$(_ACTool_PartialAppManifestCache)" Overwrite="true" IncludeMetadata="true" />
<WriteItemsToFile Items="@(_ACTool_PartialAppManifest)" ItemName="PartialAppManifest" File="$(_ACTool_PartialAppManifestCache)" Overwrite="true" IncludeMetadata="true" />
<WriteItemsToFile Items="@(_ACTool_BundleResources)" ItemName="_BundleResourceWithLogicalName" File="$(_ACTool_BundleResourceCache)" Overwrite="true" IncludeMetadata="true" />
<ItemGroup>
<FileWrites Include="$(_ACTool_PartialAppManifestCache);$(_ACTool_BundleResourceCache)" />
@ -703,7 +703,7 @@ Copyright (C) 2018 Microsoft. All rights reserved.
<!-- If _BeforeCompileCoreMLModels did not delete the generated items lists from _CoreCompileCoreMLModels, then we read them
since that target won't run and we need the output items that are cached in those files, which includes full metadata -->
<ReadItemsFromFile File="$(_CoreMLModel_PartialAppManifestCache)" Condition="Exists('$(_CoreMLModel_PartialAppManifestCache)')">
<Output TaskParameter="Items" ItemName="_PartialAppManifest" />
<Output TaskParameter="Items" ItemName="PartialAppManifest" />
</ReadItemsFromFile>
<ReadItemsFromFile File="$(_CoreMLModel_BundleResourceCache)" Condition="Exists('$(_CoreMLModel_BundleResourceCache)')">
<Output TaskParameter="Items" ItemName="_BundleResourceWithLogicalName" />
@ -727,7 +727,7 @@ Copyright (C) 2018 Microsoft. All rights reserved.
ResourcePrefix="$(_ResourcePrefix)"
SdkDevPath="$(_SdkDevPath)">
<Output TaskParameter="BundleResources" ItemName="_BundleResourceWithLogicalName" />
<Output TaskParameter="PartialAppManifests" ItemName="_PartialAppManifest" />
<Output TaskParameter="PartialAppManifests" ItemName="PartialAppManifest" />
<!-- Local items to be persisted to items files -->
<Output TaskParameter="PartialAppManifests" ItemName="_CoreMLModel_PartialAppManifest" />
@ -735,7 +735,7 @@ Copyright (C) 2018 Microsoft. All rights reserved.
</CoreMLCompiler>
<!-- Cache the generated outputs items for incremental build support -->
<WriteItemsToFile Items="@(_CoreMLModel_PartialAppManifest)" ItemName="_PartialAppManifest" File="$(_CoreMLModel_PartialAppManifestCache)" Overwrite="true" IncludeMetadata="true" />
<WriteItemsToFile Items="@(_CoreMLModel_PartialAppManifest)" ItemName="PartialAppManifest" File="$(_CoreMLModel_PartialAppManifestCache)" Overwrite="true" IncludeMetadata="true" />
<WriteItemsToFile Items="@(_CoreMLModel_BundleResources)" ItemName="_BundleResourceWithLogicalName" File="$(_CoreMLModel_BundleResourceCache)" Overwrite="true" IncludeMetadata="true" />
<ItemGroup>
<FileWrites Include="$(_CoreMLModel_PartialAppManifestCache);$(_CoreMLModel_BundleResourceCache)" />

Просмотреть файл

@ -25,6 +25,7 @@
#if !__MACCATALYST__
using System;
using System.ComponentModel;
using System.Reflection;
using System.Runtime.InteropServices;
using System.Threading;
@ -36,7 +37,14 @@ namespace AppKit {
public partial class NSApplication : NSResponder {
public static bool CheckForIllegalCrossThreadCalls = true;
public static bool CheckForEventAndDelegateMismatches = true;
#if !(XAMCORE_4_0 && NET)
#if NET
[EditorBrowsable (EditorBrowsableState.Never)]
[Obsolete ("This field is ignored (treated as if always true).")]
#endif
public static bool IgnoreMissingAssembliesDuringRegistration = false;
#endif
private static Thread mainThread;

Просмотреть файл

@ -138,7 +138,6 @@ namespace AudioUnit
#endif
[Mac (10,15)]
[Unavailable (PlatformName.MacCatalyst)]
[Advice ("This API is not available when using UIKit on macOS.")]
Reverb2=0x72766232, // 'rvb2'
NBandEq=0x6e626571, // 'nbeq'
}

Просмотреть файл

@ -142,5 +142,31 @@ namespace CoreFoundation {
ret [i] = CFString.FromHandle (CFArrayGetValueAtIndex (handle, i));
return ret;
}
static T? UnsafeGetItem<T> (IntPtr handle, nint index) where T : class, INativeObject
{
var val = CFArrayGetValueAtIndex (handle, index);
// Native code could return a CFArray with kCFNull inside its elements
// and they should be valid for things like T : NSDate so we handle
// them as just null values inside the array
if (val == CFNullHandle)
return null;
return Runtime.GetINativeObject<T> (val, false);
}
// identical signature to NSArray API
static public T?[]? ArrayFromHandle<T> (IntPtr handle) where T : class, INativeObject
{
if (handle == IntPtr.Zero)
return null;
var c = CFArrayGetCount (handle);
T?[] ret = new T [c];
for (nint i = 0; i < c; i++)
ret [i] = UnsafeGetItem<T> (handle, i);
return ret;
}
}
}

Просмотреть файл

@ -611,7 +611,7 @@ namespace ObjCRuntime {
// that's more important for XI because device builds don't go thru this step
// and we can end up with simulator-only failures - bug #29211
NSLog ("Could not find `{0}` referenced by assembly `{1}`.", fefe.FileName, assembly.FullName);
#if MONOMAC
#if MONOMAC && !NET
if (!NSApplication.IgnoreMissingAssembliesDuringRegistration)
throw;
#endif

Просмотреть файл

@ -363,7 +363,7 @@ namespace SceneKit {
{
Metal,
#if !MONOMAC
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[Unavailable (PlatformName.MacCatalyst)]
OpenGLES2,
#else
OpenGLLegacy,

Просмотреть файл

@ -47,7 +47,7 @@ namespace Security {
[Deprecated (PlatformName.iOS, 13,0, message: "Use 'AddTlsCipherSuite (TlsCipherSuite)' instead.")]
[Deprecated (PlatformName.WatchOS, 6,0, message: "Use 'AddTlsCipherSuite (TlsCipherSuite)' instead.")]
[Deprecated (PlatformName.TvOS, 13,0, message: "Use 'AddTlsCipherSuite (TlsCipherSuite)' instead.")]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[Unavailable (PlatformName.MacCatalyst)]
public void AddTlsCipherSuite (SslCipherSuite cipherSuite) => sec_protocol_options_add_tls_ciphersuite (GetCheckedHandle (), cipherSuite);
[Watch (6,0), TV (13,0), Mac (10,15), iOS (13,0)]
@ -88,7 +88,7 @@ namespace Security {
[Deprecated (PlatformName.iOS, 13,0, message: "Use 'SetTlsMinVersion (TlsProtocolVersion)' instead.")]
[Deprecated (PlatformName.WatchOS, 6,0, message: "Use 'SetTlsMinVersion (TlsProtocolVersion)' instead.")]
[Deprecated (PlatformName.TvOS, 13,0, message: "Use 'SetTlsMinVersion (TlsProtocolVersion)' instead.")]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[Unavailable (PlatformName.MacCatalyst)]
public void SetTlsMinVersion (SslProtocol protocol) => sec_protocol_options_set_tls_min_version (GetCheckedHandle (), protocol);
[Watch (6,0), TV (13,0), Mac (10,15), iOS (13,0)]
@ -109,7 +109,7 @@ namespace Security {
[Deprecated (PlatformName.iOS, 13,0, message: "Use 'SetTlsMaxVersion (TlsProtocolVersion)' instead.")]
[Deprecated (PlatformName.WatchOS, 6,0, message: "Use 'SetTlsMaxVersion (TlsProtocolVersion)' instead.")]
[Deprecated (PlatformName.TvOS, 13,0, message: "Use 'SetTlsMaxVersion (TlsProtocolVersion)' instead.")]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[Unavailable (PlatformName.MacCatalyst)]
public void SetTlsMaxVersion (SslProtocol protocol) => sec_protocol_options_set_tls_max_version (GetCheckedHandle (), protocol);
[Watch (6,0), TV (13,0), Mac (10,15), iOS (13,0)]

Просмотреть файл

@ -114,7 +114,8 @@ namespace StoreKit {
}
[NoWatch, NoTV, NoMac, iOS (14,0)]
[Native, Advice ("This API is not available when using UIKit on macOS.")]
[MacCatalyst (14,0)]
[Native]
public enum SKOverlayPosition : long {
SKOverlayPositionBottom = 0,
Raised = 1,

Просмотреть файл

@ -17551,11 +17551,12 @@ namespace AppKit {
[Export ("tabView", ArgumentSemantic.Strong)]
NSTabView TabView { get; set; }
// [FAIL] Selector not found for AppKit.NSTabViewController : segmentedControl
// [FAIL] Selector not found for AppKit.NSTabViewController : setSegmentedControl:
[Availability (Obsoleted = Platform.Mac_10_11)] // Test failures on El Capitan
#if !XAMCORE_4_0 && MONOMAC
// This property does not exist in any stable header - it was probably added in a beta and then removed.
[Obsoleted (PlatformName.MacOSX, 10, 10, message: "Do not use; this API was removed.")]
[Export ("segmentedControl", ArgumentSemantic.Strong)]
NSSegmentedControl SegmentedControl { get; set; }
#endif
[Export ("transitionOptions")]
NSViewControllerTransitionOptions TransitionOptions { get; set; }

Просмотреть файл

@ -10993,7 +10993,7 @@ namespace AVFoundation {
bool MultiCamSupported { [Bind ("isMultiCamSupported")] get; }
[NoWatch, NoTV, NoMac, iOS (13, 0)]
[Advice ("This API is not available when using UIKit on macOS.")]
[MacCatalyst (14,0)]
[Export ("globalToneMappingSupported")]
bool GlobalToneMappingSupported { [Bind ("isGlobalToneMappingSupported")] get; }
@ -12917,9 +12917,8 @@ namespace AVFoundation {
[Export ("paused")]
bool Paused { [Bind ("isPaused")] get; }
[Unavailable (PlatformName.MacCatalyst)]
[Watch (6,0), TV (13,0), NoMac, iOS (13,0)]
[Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[Export ("usesApplicationAudioSession")]
bool UsesApplicationAudioSession { get; set; }

Просмотреть файл

@ -296,9 +296,8 @@ namespace CallKit {
[Export ("getEnabledStatusForExtensionWithIdentifier:completionHandler:")]
void GetEnabledStatusForExtension (string identifier, Action<CXCallDirectoryEnabledStatus, NSError> completion);
[Unavailable (PlatformName.MacCatalyst)]
[NoMacCatalyst]
[NoWatch, NoTV, NoMac, iOS (13,4)]
[Advice ("This API is not available when using UIKit on macOS.")]
[Async]
[Export ("openSettingsWithCompletionHandler:")]
void OpenSettings ([NullAllowed] Action<NSError> completion);

Просмотреть файл

@ -598,10 +598,6 @@ namespace CarPlay {
[Export ("initWithTitle:sections:")]
IntPtr Constructor ([NullAllowed] string title, CPListSection[] sections);
[iOS (15,0)]
[Export ("initWithTitle:sections:assistantCellVisibility:assistantCellPosition:")]
IntPtr Constructor ([NullAllowed] string title, CPListSection[] sections, CPAssistantCellVisibility visibility, CPAssistantCellPosition position);
[Deprecated (PlatformName.iOS, 14, 0, message: "Use 'CPListItem.Handler' instead.")]
[Wrap ("WeakDelegate")]
[NullAllowed]
@ -650,14 +646,6 @@ namespace CarPlay {
[iOS (14, 0)]
[Export ("emptyViewSubtitleVariants", ArgumentSemantic.Copy)]
string[] EmptyViewSubtitleVariants { get; set; }
[iOS (15, 0)]
[Export ("assistantCellVisibility", ArgumentSemantic.Assign)]
CPAssistantCellVisibility AssistantCellVisibility { get; set; }
[iOS (15, 0)]
[Export ("assistantCellPosition", ArgumentSemantic.Assign)]
CPAssistantCellPosition AssistantCellPosition { get; set; }
}
interface ICPListTemplateDelegate { }

Просмотреть файл

@ -172,7 +172,7 @@ namespace CoreAudioKit {
[iOS (8,0)]
[Deprecated (PlatformName.iOS, 13,0, message: "Use 'AudioUnit' instead.")]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[BaseType (typeof (UIView))]
interface CAInterAppAudioSwitcherView {
[Export ("initWithFrame:")]
@ -190,7 +190,7 @@ namespace CoreAudioKit {
[iOS (8,0)]
[Deprecated (PlatformName.iOS, 13,0, message: "Use 'AudioUnit' instead.")]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[BaseType (typeof (UIView))]
interface CAInterAppAudioTransportView {
[Export ("initWithFrame:")]

Просмотреть файл

@ -29,6 +29,13 @@ namespace CoreFoundation {
IntPtr null_ptr { get; }
}
[Partial]
interface CFArray {
[Internal][Field ("kCFNull")]
IntPtr /* CFNullRef */ CFNullHandle { get; }
}
[Partial]
[Internal]
interface CFBoolean {

Просмотреть файл

@ -331,13 +331,13 @@ namespace CoreLocation {
[NoWatch][NoTV][NoMac]
[Deprecated (PlatformName.iOS, 13,0, message: "Not used anymore. Call will not have any effect.")]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[Export ("allowDeferredLocationUpdatesUntilTraveled:timeout:")]
void AllowDeferredLocationUpdatesUntil (double distance, double timeout);
[NoWatch][NoTV][NoMac]
[Deprecated (PlatformName.iOS, 13,0, message: "Not used anymore. Call will not have any effect.")]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[Export ("disallowDeferredLocationUpdates")]
void DisallowDeferredLocationUpdates ();
@ -373,7 +373,7 @@ namespace CoreLocation {
void RequestState (CLRegion region);
[NoWatch][NoTV][NoMac]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[Deprecated (PlatformName.iOS, 13,0, message: "Use 'StartRangingBeacons(CLBeaconIdentityConstraint)' instead.")]
[iOS (7,0), Export ("startRangingBeaconsInRegion:")]
void StartRangingBeacons (CLBeaconRegion region);
@ -383,7 +383,7 @@ namespace CoreLocation {
void StartRangingBeacons (CLBeaconIdentityConstraint constraint);
[NoWatch][NoTV][NoMac]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[Deprecated (PlatformName.iOS, 13,0, message: "Use 'StopRangingBeacons(CLBeaconIdentityConstraint)' instead.")]
[iOS (7,0), Export ("stopRangingBeaconsInRegion:")]
void StopRangingBeacons (CLBeaconRegion region);

Просмотреть файл

@ -691,10 +691,12 @@ namespace CoreMotion {
[Export ("authorizationStatus")]
CMAuthorizationStatus AuthorizationStatus { get; }
[NoMac]
[Wrap ("WeakDelegate")]
[NullAllowed]
ICMHeadphoneMotionManagerDelegate Delegate { get; set; }
[NoMac]
[NullAllowed, Export ("delegate", ArgumentSemantic.Weak)]
NSObject WeakDelegate { get; set; }
@ -721,7 +723,7 @@ namespace CoreMotion {
[iOS (14,0)][Watch (7,0)]
[MacCatalyst (14,0)]
[Mac (12,0)]
[NoMac]
[Protocol, Model (AutoGeneratedName = true)]
[BaseType (typeof (NSObject))]
interface CMHeadphoneMotionManagerDelegate {

Просмотреть файл

@ -326,8 +326,7 @@ namespace FileProvider {
[Export ("hidden")]
bool Hidden { [Bind ("isHidden")] get; set; }
[Advice ("This API is not available when using UIKit on macOS.")]
[Unavailable (PlatformName.MacCatalyst)]
[NoMacCatalyst]
[NoWatch, NoTV, NoiOS, Mac (11,3)]
[Export ("testingModes", ArgumentSemantic.Assign)]
NSFileProviderDomainTestingModes TestingModes { get; set; }
@ -742,8 +741,7 @@ namespace FileProvider {
interface INSFileProviderPendingSetEnumerator { }
[Advice ("This API is not available when using UIKit on macOS.")]
[Unavailable (PlatformName.MacCatalyst)]
[NoMacCatalyst]
[NoWatch, NoTV, NoiOS, Mac (11,3)]
[Protocol]
interface NSFileProviderPendingSetEnumerator : NSFileProviderEnumerator {
@ -878,9 +876,8 @@ namespace FileProvider {
[Export ("requestingExecutable", ArgumentSemantic.Copy)]
NSUrl RequestingExecutable { get; }
[Unavailable (PlatformName.MacCatalyst)]
[NoWatch, NoTV, NoiOS, Mac (11,3)]
[Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[NullAllowed, Export ("domainVersion")]
NSFileProviderDomainVersion DomainVersion { get; }
}
@ -1001,8 +998,7 @@ namespace FileProvider {
[Export ("materializedItemsDidChangeWithCompletionHandler:")]
void MaterializedItemsDidChange (Action completionHandler);
[Advice ("This API is not available when using UIKit on macOS.")]
[Unavailable (PlatformName.MacCatalyst)]
[NoMacCatalyst]
[NoWatch, NoTV, NoiOS, Mac (11,3)]
[Export ("pendingItemsDidChangeWithCompletionHandler:")]
void PendingItemsDidChange (Action completionHandler);
@ -1010,8 +1006,7 @@ namespace FileProvider {
interface INSFileProviderDomainState { }
[Advice ("This API is not available when using UIKit on macOS.")]
[Unavailable (PlatformName.MacCatalyst)]
[NoMacCatalyst]
[NoWatch, NoTV, NoiOS, Mac (11,3)]
[Protocol]
interface NSFileProviderDomainState {
@ -1033,8 +1028,7 @@ namespace FileProvider {
Interactive = 1uL << 1,
}
[Advice ("This API is not available when using UIKit on macOS.")]
[Unavailable (PlatformName.MacCatalyst)]
[NoMacCatalyst]
[NoWatch, NoTV, NoiOS, Mac (11,3)]
[BaseType (typeof (NSObject))]
[DisableDefaultCtor]
@ -1047,9 +1041,9 @@ namespace FileProvider {
NSComparisonResult Compare (NSFileProviderDomainVersion otherVersion);
}
[Unavailable (PlatformName.MacCatalyst)]
[NoMacCatalyst]
[NoWatch, NoTV, NoiOS, Mac (11,3)]
[Native, Advice ("This API is not available when using UIKit on macOS.")]
[Native]
public enum NSFileProviderTestingOperationType : long {
Ingestion = 0,
Lookup = 1,
@ -1063,9 +1057,9 @@ namespace FileProvider {
interface INSFileProviderTestingOperation : global::ObjCRuntime.INativeObject { }
[Unavailable (PlatformName.MacCatalyst)]
[NoMacCatalyst]
[NoWatch, NoTV, NoiOS, Mac (11,3)]
[Protocol, Advice ("This API is not available when using UIKit on macOS.")]
[Protocol]
interface NSFileProviderTestingOperation {
[Abstract]
@ -1113,9 +1107,9 @@ namespace FileProvider {
INSFileProviderTestingCollisionResolution GetAsCollisionResolution ();
}
[Unavailable (PlatformName.MacCatalyst)]
[NoMacCatalyst]
[NoWatch, NoTV, NoiOS, Mac (11,3)]
[Native, Advice ("This API is not available when using UIKit on macOS.")]
[Native]
public enum NSFileProviderTestingOperationSide : ulong {
Disk = 0,
FileProvider = 1,
@ -1123,9 +1117,9 @@ namespace FileProvider {
interface INSFileProviderTestingIngestion { }
[Unavailable (PlatformName.MacCatalyst)]
[NoMacCatalyst]
[NoWatch, NoTV, NoiOS, Mac (11,3)]
[Protocol, Advice ("This API is not available when using UIKit on macOS.")]
[Protocol]
interface NSFileProviderTestingIngestion : NSFileProviderTestingOperation {
[Abstract]
@ -1143,9 +1137,8 @@ namespace FileProvider {
interface INSFileProviderTestingLookup { }
[Unavailable (PlatformName.MacCatalyst)]
[NoWatch, NoTV, NoiOS, Mac (11,3)]
[Protocol, Advice ("This API is not available when using UIKit on macOS.")]
[Protocol]
interface NSFileProviderTestingLookup : NSFileProviderTestingOperation {
[Abstract]
@ -1159,9 +1152,8 @@ namespace FileProvider {
interface INSFileProviderTestingCreation { }
[Unavailable (PlatformName.MacCatalyst)]
[NoWatch, NoTV, NoiOS, Mac (11,3)]
[Protocol, Advice ("This API is not available when using UIKit on macOS.")]
[Protocol]
interface NSFileProviderTestingCreation : NSFileProviderTestingOperation {
[Abstract]
@ -1179,9 +1171,9 @@ namespace FileProvider {
interface INSFileProviderTestingModification { }
[Unavailable (PlatformName.MacCatalyst)]
[NoMacCatalyst]
[NoWatch, NoTV, NoiOS, Mac (11,3)]
[Protocol, Advice ("This API is not available when using UIKit on macOS.")]
[Protocol]
interface NSFileProviderTestingModification : NSFileProviderTestingOperation {
[Abstract]
@ -1211,9 +1203,9 @@ namespace FileProvider {
interface INSFileProviderTestingDeletion { }
[Unavailable (PlatformName.MacCatalyst)]
[NoMacCatalyst]
[NoWatch, NoTV, NoiOS, Mac (11,3)]
[Protocol, Advice ("This API is not available when using UIKit on macOS.")]
[Protocol]
interface NSFileProviderTestingDeletion : NSFileProviderTestingOperation {
[Abstract]
@ -1239,9 +1231,9 @@ namespace FileProvider {
interface INSFileProviderTestingContentFetch { }
[Unavailable (PlatformName.MacCatalyst)]
[NoMacCatalyst]
[NoWatch, NoTV, NoiOS, Mac (11,3)]
[Protocol, Advice ("This API is not available when using UIKit on macOS.")]
[Protocol]
interface NSFileProviderTestingContentFetch : NSFileProviderTestingOperation {
[Abstract]
@ -1255,9 +1247,9 @@ namespace FileProvider {
interface INSFileProviderTestingChildrenEnumeration { }
[Unavailable (PlatformName.MacCatalyst)]
[NoMacCatalyst]
[NoWatch, NoTV, NoiOS, Mac (11,3)]
[Protocol, Advice ("This API is not available when using UIKit on macOS.")]
[Protocol]
interface NSFileProviderTestingChildrenEnumeration : NSFileProviderTestingOperation {
[Abstract]
@ -1271,9 +1263,9 @@ namespace FileProvider {
interface INSFileProviderTestingCollisionResolution { }
[Unavailable (PlatformName.MacCatalyst)]
[NoMacCatalyst]
[NoWatch, NoTV, NoiOS, Mac (11,3)]
[Protocol, Advice ("This API is not available when using UIKit on macOS.")]
[Protocol]
interface NSFileProviderTestingCollisionResolution : NSFileProviderTestingOperation {
[Abstract]

Просмотреть файл

@ -1760,7 +1760,7 @@ public partial class Generator : IMemberGatherer {
Type et = pi.ParameterType.GetElementType ();
if (IsWrappedType (et)){
pars.AppendFormat ("IntPtr {0}", safe_name);
invoke.AppendFormat ("NSArray.ArrayFromHandle<{0}> ({1})", FormatType (null, et), safe_name);
invoke.AppendFormat ("CFArray.ArrayFromHandle<{0}> ({1})!", FormatType (null, et), safe_name);
continue;
}
}
@ -2708,7 +2708,7 @@ public partial class Generator : IMemberGatherer {
if (by_ref_processing.Length > 0)
print (sw, by_ref_processing.ToString ());
if (use_temp_return)
print ("return ret;");
print ("return ret!;");
indent--; print ("}");
indent--;
print ("}} /* class {0} */", ti.NativeInvokerName);
@ -3067,7 +3067,7 @@ public partial class Generator : IMemberGatherer {
var fullname = propertyType.FullName;
if (is_property_array_wrapped_type) {
print ("return NSArray.ArrayFromHandle<{0}> (value);", RenderType (et));
print ("return CFArray.ArrayFromHandle<{0}> (value)!;", RenderType (et));
} else if (is_property_wrapped_type) {
print ("return Runtime.GetNSObject<{0}> (value);", RenderType (propertyType));
} else if (propertyType == TypeManager.System_Double)
@ -3852,16 +3852,16 @@ public partial class Generator : IMemberGatherer {
cast_a = "CFArray.StringArrayFromHandle (";
cast_b = ")!";
} else if (minfo != null && minfo.protocolize) {
cast_a = "NSArray.ArrayFromHandle<global::" + etype.Namespace + ".I" + etype.Name + ">(";
cast_b = ")";
cast_a = "CFArray.ArrayFromHandle<global::" + etype.Namespace + ".I" + etype.Name + ">(";
cast_b = ")!";
} else if (etype == TypeManager.Selector) {
exceptions.Add (ErrorHelper.CreateError (1066, mai.Type.FullName, mi.DeclaringType.FullName, mi.Name));
} else {
if (NamespaceManager.NamespacesThatConflictWithTypes.Contains (etype.Namespace))
cast_a = "NSArray.ArrayFromHandle<global::" + etype + ">(";
cast_a = "CFArray.ArrayFromHandle<global::" + etype + ">(";
else
cast_a = "NSArray.ArrayFromHandle<" + FormatType (mi.DeclaringType, etype) + ">(";
cast_b = ")";
cast_a = "CFArray.ArrayFromHandle<" + FormatType (mi.DeclaringType, etype) + ">(";
cast_b = ")!";
}
}
}
@ -4322,7 +4322,7 @@ public partial class Generator : IMemberGatherer {
by_ref_processing.AppendFormat ("if ({0}Value != ({0}ArrayValue is null ? IntPtr.Zero : {0}ArrayValue.Handle))\n\t", pi.Name.GetSafeParamName ());
if (isArrayOfNSObject || isArrayOfINativeObjectSubclass) {
by_ref_processing.AppendFormat ("{0} = NSArray.ArrayFromHandle<{1}> ({0}Value);\n", pi.Name.GetSafeParamName (), RenderType (elementType.GetElementType ()));
by_ref_processing.AppendFormat ("{0} = CFArray.ArrayFromHandle<{1}> ({0}Value)!;\n", pi.Name.GetSafeParamName (), RenderType (elementType.GetElementType ()));
} else if (isArrayOfString) {
by_ref_processing.AppendFormat ("{0} = CFArray.StringArrayFromHandle ({0}Value)!;\n", pi.Name.GetSafeParamName ());
} else {

Просмотреть файл

@ -105,8 +105,7 @@ namespace IntentsUI {
[NullAllowed, Export ("delegate", ArgumentSemantic.Weak)]
NSObject WeakDelegate { get; set; }
[Unavailable (PlatformName.MacCatalyst)]
[Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[Export ("initWithShortcut:")]
IntPtr Constructor (INShortcut shortcut);
}
@ -139,8 +138,7 @@ namespace IntentsUI {
[NullAllowed, Export ("delegate", ArgumentSemantic.Weak)]
NSObject WeakDelegate { get; set; }
[Unavailable (PlatformName.MacCatalyst)]
[Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[Export ("initWithVoiceShortcut:")]
IntPtr Constructor (INVoiceShortcut voiceShortcut);
}

Просмотреть файл

@ -877,18 +877,16 @@ namespace Metal {
#if XAMCORE_4_0
[Abstract]
#endif
[Unavailable (PlatformName.MacCatalyst)]
[Mac (11,0), NoTV, iOS (13,0)]
[Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[Export ("getTextureAccessCounters:region:mipLevel:slice:resetCounters:countersBuffer:countersBufferOffset:")]
void GetTextureAccessCounters (IMTLTexture texture, MTLRegion region, nuint mipLevel, nuint slice, bool resetCounters, IMTLBuffer countersBuffer, nuint countersBufferOffset);
#if XAMCORE_4_0
[Abstract]
#endif
[Unavailable (PlatformName.MacCatalyst)]
[Mac (11,0), NoTV, iOS (13,0)]
[Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[Export ("resetTextureAccessCounters:region:mipLevel:slice:")]
void ResetTextureAccessCounters (IMTLTexture texture, MTLRegion region, nuint mipLevel, nuint slice);
@ -1385,7 +1383,6 @@ namespace Metal {
#endif
[Introduced (PlatformName.MacCatalyst, 14, 0)]
[Mac (11,0), NoTV, iOS (13,0)]
[Advice ("This API is not available when using UIKit on macOS.")]
[Export ("sparseTileSizeWithTextureType:pixelFormat:sampleCount:")]
MTLSize GetSparseTileSize (MTLTextureType textureType, MTLPixelFormat pixelFormat, nuint sampleCount);
@ -1834,27 +1831,24 @@ namespace Metal {
#if XAMCORE_4_0
[Abstract]
#endif
[Unavailable (PlatformName.MacCatalyst)]
[NoMacCatalyst]
[Mac (11,0), NoTV, iOS (13, 0)]
[Advice ("This API is not available when using UIKit on macOS.")]
[Export ("firstMipmapInTail")]
nuint FirstMipmapInTail { get; }
#if XAMCORE_4_0
[Abstract]
#endif
[Unavailable (PlatformName.MacCatalyst)]
[Mac (11,0), NoTV, iOS (13, 0)]
[Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[Export ("tailSizeInBytes")]
nuint TailSizeInBytes { get; }
#if XAMCORE_4_0
[Abstract]
#endif
[Unavailable (PlatformName.MacCatalyst)]
[Mac (11,0), NoTV, iOS (13, 0)]
[Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[Export ("isSparse")]
bool IsSparse { get; }
@ -3454,9 +3448,8 @@ namespace Metal {
nuint RenderTargetHeight { get; set; }
/* Selectors reported missing by instrospection: https://github.com/xamarin/maccore/issues/1978
[Unavailable (PlatformName.MacCatalyst)]
[NoMac, NoTV, iOS (13, 0)]
[Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[Export ("maxVertexAmplificationCount")]
nuint MaxVertexAmplificationCount { get; set; }
*/

Просмотреть файл

@ -243,14 +243,14 @@ namespace PassKit {
PKPaymentToken Token { get; }
[NoMac]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[NoWatch]
[Export ("billingAddress", ArgumentSemantic.Assign)]
[Availability (Deprecated = Platform.iOS_9_0, Message = "Use 'BillingContact' instead.")]
ABRecord BillingAddress { get; }
[NoMac]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[NoWatch]
[Export ("shippingAddress", ArgumentSemantic.Assign)]
[Availability (Deprecated = Platform.iOS_9_0, Message = "Use 'ShippingContact' instead.")]
@ -307,7 +307,7 @@ namespace PassKit {
[EventArgs ("PKPaymentRequestShippingMethodUpdate")]
void DidSelectShippingMethod2 (PKPaymentAuthorizationViewController controller, PKShippingMethod shippingMethod, Action<PKPaymentRequestShippingMethodUpdate> completion);
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[Deprecated (PlatformName.iOS, 9, 0)]
[NoMac]
[Export ("paymentAuthorizationViewController:didSelectShippingAddress:completion:")]
@ -481,7 +481,7 @@ namespace PassKit {
PKAddressField RequiredBillingAddressFields { get; set; }
[NoMac]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[NoWatch]
[NullAllowed] // by default this property is null
[Export ("billingAddress", ArgumentSemantic.Assign)]
@ -495,7 +495,7 @@ namespace PassKit {
PKAddressField RequiredShippingAddressFields { get; set; }
[NoMac]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[NoWatch]
[NullAllowed] // by default this property is null
[Export ("shippingAddress", ArgumentSemantic.Assign)]

Просмотреть файл

@ -131,10 +131,9 @@ namespace Photos
[Deprecated (PlatformName.TvOS, 11,0)]
[Deprecated (PlatformName.iOS, 11,0)]
[Unavailable (PlatformName.MacCatalyst)]
[NoMac]
[Static]
[Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[Export ("fetchAssetsWithALAssetURLs:options:")]
PHFetchResult FetchAssets (NSUrl[] assetUrls, [NullAllowed] PHFetchOptions options);
@ -1385,8 +1384,7 @@ namespace Photos
[Mac (10,13)]
[NoiOS][NoTV]
[Unavailable (PlatformName.MacCatalyst)]
[Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[BaseType (typeof (PHAssetCollection))]
interface PHProject {
@ -1401,7 +1399,7 @@ namespace Photos
[Mac (10,13)]
[Unavailable (PlatformName.MacCatalyst)]
[NoiOS][NoTV]
[Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[BaseType (typeof (PHChangeRequest))]
interface PHProjectChangeRequest {

Просмотреть файл

@ -477,8 +477,7 @@ namespace PhotosUI {
[iOS (8,0)]
[NoMac][NoTV]
[DisableDefaultCtor]
[Unavailable (PlatformName.MacCatalyst)]
[Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[Deprecated (PlatformName.iOS, 13, 0)]
[BaseType (typeof (NSExtensionContext))]
interface PHEditingExtensionContext

Просмотреть файл

@ -96,7 +96,7 @@ namespace PushKit
[NoMac]
[Abstract] // now optional in iOS 11
[Deprecated (PlatformName.iOS, 11,0, message: "Use the 'DidReceiveIncomingPushWithPayload' overload accepting an 'Action' argument instead.")]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[Export ("pushRegistry:didReceiveIncomingPushWithPayload:forType:"), EventArgs ("PKPushRegistryRecieved"), EventName ("IncomingPushReceived")]
void DidReceiveIncomingPush (PKPushRegistry registry, PKPushPayload payload, string type);

Просмотреть файл

@ -1210,7 +1210,7 @@ namespace SceneKit {
#if MONOMAC
[iOS (8,0)]
[Deprecated (PlatformName.MacOSX, 10, 14, message: "Please use Metal instead of OpenGL API.")]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[BaseType (typeof (CAOpenGLLayer))]
interface SCNLayer : SCNSceneRenderer, SCNTechniqueSupport {
// We already pull in the Scene property from the SCNSceneRenderer protocol, no need to redefine it here.
@ -1680,7 +1680,7 @@ namespace SceneKit {
[Deprecated (PlatformName.iOS, 10, 0)]
[Deprecated (PlatformName.MacOSX, 10, 12)]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[NoWatch, NoTV]
[NullAllowed, Export ("borderColor", ArgumentSemantic.Retain)]
NSObject BorderColor { get; set; }
@ -2511,7 +2511,7 @@ namespace SceneKit {
[NoTV, NoWatch]
#endif
[Availability (Deprecated = Platform.Mac_10_10, Message = "Use the SCNProgram's Opaque property instead.")]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[Export ("programIsOpaque:")]
bool IsProgramOpaque (SCNProgram program);
#endif
@ -2568,7 +2568,7 @@ namespace SceneKit {
[Export ("render")]
[Deprecated (PlatformName.MacOSX, 10, 11)]
[Deprecated (PlatformName.iOS, 9, 0)]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
void Render ();
[Mac (10,10)]
@ -3442,7 +3442,7 @@ namespace SceneKit {
[Internal] // we'll make it public if there's a need for them (beside the strong dictionary we provide)
interface SCNRenderingOptionsKeys {
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[Field ("SCNPreferredRenderingAPIKey")]
NSString RenderingApiKey { get; }

Просмотреть файл

@ -2535,7 +2535,7 @@ namespace UIKit {
UIApplicationShortcutIcon FromSystemImageName (string systemImageName);
#if IOS // This is inside ContactsUI.framework
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[Static, Export ("iconWithContact:")]
UIApplicationShortcutIcon FromContact (CNContact contact);
#endif // IOS
@ -15329,8 +15329,7 @@ namespace UIKit {
IUIViewControllerTransitionCoordinator GetTransitionCoordinator ();
}
[Unavailable (PlatformName.MacCatalyst)]
[Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[NoTV]
[Deprecated (PlatformName.iOS, 12, 0, message: "No longer supported; please adopt 'WKWebView'.")]
[BaseType (typeof (UIView), Delegates=new string [] { "WeakDelegate" }, Events=new Type [] {typeof(UIWebViewDelegate)})]
@ -15434,8 +15433,7 @@ namespace UIKit {
bool AllowsLinkPreview { get; set; }
}
[Unavailable (PlatformName.MacCatalyst)]
[Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[NoTV]
[Deprecated (PlatformName.iOS, 12, 0, message: "No longer supported; please adopt 'WKWebView' APIs.")]
[BaseType (typeof (NSObject))]

Просмотреть файл

@ -24,7 +24,7 @@ namespace VideoSubscriberAccount {
[TV (10, 0)]
[Mac (10,14)]
[Unavailable (PlatformName.WatchOS)]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[ErrorDomain ("VSErrorDomain")]
public enum VSErrorCode : long {
AccessNotGranted = 0,
@ -42,7 +42,7 @@ namespace VideoSubscriberAccount {
[TV (10, 0)]
[Mac (10,14)]
[Unavailable (PlatformName.WatchOS)]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
public enum VSAccountAccessStatus : long {
NotDetermined = 0,
Restricted = 1,
@ -54,7 +54,7 @@ namespace VideoSubscriberAccount {
[TV (10, 0)]
[Mac (10,14)]
[Unavailable (PlatformName.WatchOS)]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[Static]
[Internal]
interface VSErrorInfoKeys {
@ -98,7 +98,7 @@ namespace VideoSubscriberAccount {
[TV (10, 0)]
[Mac (10,14)]
[Unavailable (PlatformName.WatchOS)]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[BaseType (typeof (NSObject))]
interface VSAccountManagerDelegate {
@ -158,7 +158,7 @@ namespace VideoSubscriberAccount {
[Unavailable (PlatformName.WatchOS)]
[Static]
[Internal]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
interface VSCheckAccessOptionKeys {
[Field ("VSCheckAccessOptionPrompt")]
@ -181,7 +181,7 @@ namespace VideoSubscriberAccount {
[TV (10, 0)]
[Mac (10,14)]
[Unavailable (PlatformName.WatchOS)]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[BaseType (typeof (NSObject))]
[DisableDefaultCtor]
interface VSAccountManagerResult {
@ -194,7 +194,7 @@ namespace VideoSubscriberAccount {
[TV (10, 0)]
[Mac (10,14)]
[Unavailable (PlatformName.WatchOS)]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[BaseType (typeof (NSObject))]
interface VSAccountMetadata {
@ -219,7 +219,7 @@ namespace VideoSubscriberAccount {
[Mac (10,14)]
[TV (10, 0)]
[Unavailable (PlatformName.WatchOS)]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[BaseType (typeof (NSObject))]
interface VSAccountMetadataRequest {
@ -271,7 +271,7 @@ namespace VideoSubscriberAccount {
[iOS (10,2)]
[TV (10,1)]
[Mac (10,14)]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[BaseType (typeof (NSObject))]
interface VSAccountProviderResponse {
@ -292,7 +292,7 @@ namespace VideoSubscriberAccount {
[iOS (10,2)]
[TV (10,1)]
[Mac (10,14)]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
enum VSAccountProviderAuthenticationScheme {
[Field ("VSAccountProviderAuthenticationSchemeSAML")]
Saml,
@ -335,7 +335,7 @@ namespace VideoSubscriberAccount {
[TV (11,0)][iOS (11,0)]
[Mac (10,14)]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[BaseType (typeof (NSObject))]
[DisableDefaultCtor]
interface VSSubscriptionRegistrationCenter {
@ -348,7 +348,7 @@ namespace VideoSubscriberAccount {
}
[TV (14,2), iOS (14,2), Mac (11,0)]
[Unavailable (PlatformName.MacCatalyst)][Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[BaseType (typeof (NSObject))]
[DisableDefaultCtor]
interface VSAccountApplicationProvider {

Просмотреть файл

@ -1168,7 +1168,6 @@ namespace UIKit {
[Deprecated (PlatformName.iOS, 13, 0, message: "Please use 'UsesDefaultHyphenation' or 'NSParagraphStyle.HyphenationFactor' instead.")]
[Deprecated (PlatformName.WatchOS, 6, 0, message: "Please use 'UsesDefaultHyphenation' or 'NSParagraphStyle.HyphenationFactor' instead.")]
[Deprecated (PlatformName.TvOS, 13, 0, message: "Please use 'UsesDefaultHyphenation' or 'NSParagraphStyle.HyphenationFactor' instead.")]
[Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[Export ("hyphenationFactor")]
#if MONOMAC
@ -1296,8 +1295,7 @@ namespace UIKit {
[Deprecated (PlatformName.iOS, 13, 0, message: "Use the overload that takes 'nint glyphCount' instead.")]
[Deprecated (PlatformName.WatchOS, 6, 0, message: "Use the overload that takes 'nint glyphCount' instead.")]
[Deprecated (PlatformName.TvOS, 13, 0, message: "Use the overload that takes 'nint glyphCount' instead.")]
[Unavailable (PlatformName.MacCatalyst)]
[Advice ("This API is not available when using UIKit on macOS.")]
[NoMacCatalyst]
[Protected] // Can be overridden
[Export ("showCGGlyphs:positions:count:font:matrix:attributes:inContext:")]
void ShowGlyphs (IntPtr glyphs, IntPtr positions, nuint glyphCount, NSFont font, CGAffineTransform textMatrix, NSDictionary attributes, CGContext graphicsContext);

Просмотреть файл

@ -0,0 +1 @@
include ../shared.mk

Просмотреть файл

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.0-maccatalyst</TargetFramework>
</PropertyGroup>
<!-- Imports of the form '../shared.csproj' will be inlined by xharness -->
<Import Project="../shared.csproj" />
<ItemGroup>
<!-- this empty item group is here for xharness -->
</ItemGroup>
</Project>

Просмотреть файл

@ -0,0 +1 @@
include ../shared.mk

Просмотреть файл

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.0-ios</TargetFramework>
</PropertyGroup>
<!-- Imports of the form '../shared.csproj' will be inlined by xharness -->
<Import Project="../shared.csproj" />
<ItemGroup>
<!-- this empty item group is here for xharness -->
</ItemGroup>
</Project>

Просмотреть файл

@ -0,0 +1 @@
include ../shared.mk

Просмотреть файл

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.0-macos</TargetFramework>
</PropertyGroup>
<!-- Imports of the form '../shared.csproj' will be inlined by xharness -->
<Import Project="../shared.csproj" />
<ItemGroup>
<!-- this empty item group is here for xharness -->
</ItemGroup>
</Project>

Просмотреть файл

@ -0,0 +1,51 @@
<?xml version="1.0" encoding="utf-8"?>
<Project>
<PropertyGroup>
<OutputType>Library</OutputType>
<IsBindingProject>true</IsBindingProject>
<NoBindingEmbedding>true</NoBindingEmbedding>
<DefineConstants>$(DefineConstants);NET</DefineConstants>
<DefineConstants>$(DefineConstants);NET;XCFRAMEWORK;FRAMEWORK_TEST</DefineConstants>
<LangVersion>latest</LangVersion>
<RootNamespace>bindingstest</RootNamespace>
<SignAssembly>True</SignAssembly>
<AssemblyOriginatorKeyFile>..\..\..\..\product.snk</AssemblyOriginatorKeyFile>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
<AssemblyName>bindings-framework-test</AssemblyName>
<RootTestsDirectory>$([System.IO.Path]::GetFullPath('$(MSBuildProjectDirectory)\..\..\..'))</RootTestsDirectory>
<TestLibrariesDirectory>$(RootTestsDirectory)\test-libraries</TestLibrariesDirectory>
<BindingsFrameworkDirectory>$(RootTestsDirectory)\bindings-framework-test</BindingsFrameworkDirectory>
<!-- Don't remove native symbols, because it makes debugging native crashes harder -->
<MtouchNoSymbolStrip>true</MtouchNoSymbolStrip>
<DefineConstants Condition="'$(Configuration)' == 'Debug'">$(DefineConstants);DEBUG</DefineConstants>
</PropertyGroup>
<Import Project="$(RootTestsDirectory)/common/shared-dotnet.csproj" />
<ItemGroup>
<ObjcBindingApiDefinition Include="$(BindingsFrameworkDirectory)/ApiDefinition.cs" />
<ObjcBindingCoreSource Include="$(BindingsFrameworkDirectory)/StructsAndEnums.cs" />
<None Include="$(TestLibrariesDirectory)\libframework.m">
<Link>libframework.m</Link>
</None>
<None Include="$(TestLibrariesDirectory)\libframework.h">
<Link>libframework.h</Link>
</None>
<TestLibrariesInput Include="$(TestLibrariesDirectory)\libframework.m" />
<TestLibrariesOutput Include="$(TestLibrariesDirectory)\.libs\XTest.xcframework" />
<NativeReference Include="$(TestLibrariesDirectory)\.libs\XTest.xcframework">
<Kind>Framework</Kind>
<SmartLink>False</SmartLink>
<Frameworks>CoreLocation ModelIO</Frameworks>
</NativeReference>
</ItemGroup>
<Target Name="BuildTestLibraries" Inputs="@(TestLibrariesInput)" Outputs="@(TestLibrariesOutput)" BeforeTargets="BeforeBuild">
<Exec Command="make -j8 -C $(TestLibrariesDirectory)" />
</Target>
</Project>

Просмотреть файл

@ -0,0 +1,22 @@
TOP=../../../..
include $(TOP)/Make.config
include $(TOP)/mk/colors.mk
prepare:
$(Q) $(MAKE) -C $(TOP)/tests/dotnet copy-dotnet-config
reload:
$(Q) rm -Rf $(TOP)/tests/dotnet/packages
$(Q) $(MAKE) -C $(TOP) -j8 all
$(Q) $(MAKE) -C $(TOP) -j8 install
$(Q) git clean -xfdq
reload-and-build:
$(Q) $(MAKE) reload
$(Q) $(MAKE) build
build: prepare
$(Q) $(DOTNET6) build /bl *.csproj $(MSBUILD_VERBOSITY) $(BUILD_ARGUMENTS)
diag: prepare
$(Q) $(DOTNET6) build /v:diag msbuild.binlog

Просмотреть файл

@ -0,0 +1 @@
include ../shared.mk

Просмотреть файл

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.0-tvos</TargetFramework>
</PropertyGroup>
<!-- Imports of the form '../shared.csproj' will be processed by xharness -->
<Import Project="../shared.csproj" />
<ItemGroup>
<!-- this empty item group is here for xharness -->
</ItemGroup>
</Project>

Просмотреть файл

@ -152,11 +152,16 @@ namespace Xamarin.Tests
#if NET
var list = new List<AvailabilityBaseAttribute> ();
foreach (var ca in attributeProvider.GetCustomAttributes (true)) {
if (ca is OSPlatformAttribute aa)
list.Add (aa.Convert ());
if (ca is OSPlatformAttribute aa) {
var converted = aa.Convert ();
if (converted is not null)
list.Add (converted);
}
// FIXME - temporary, while older attributes co-exists (in manual bindings)
if (ca is AvailabilityBaseAttribute old)
list.Add (old);
if (ca is ObsoleteAttribute)
return false;
}
return list.IsAvailable (targetPlatform);
#else

Просмотреть файл

@ -0,0 +1,19 @@
using System;
using System.Runtime.InteropServices;
using Foundation;
namespace MySimpleApp
{
public class Program
{
static int Main (string[] args)
{
GC.KeepAlive (typeof (NSObject)); // prevent linking away the platform assembly
Console.WriteLine (Environment.GetEnvironmentVariable ("MAGIC_WORD"));
return args.Length;
}
}
}

Просмотреть файл

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
</dict>
</plist>

Просмотреть файл

@ -0,0 +1 @@
include ../shared.mk

Просмотреть файл

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.0-maccatalyst</TargetFramework>
</PropertyGroup>
<Import Project="..\shared.csproj" />
</Project>

Просмотреть файл

@ -0,0 +1,20 @@
TOP=../../..
include $(TOP)/Make.config
prepare:
cd .. && $(MAKE) global.json NuGet.config
rm -Rf */bin */obj
all-ios: prepare
$(DOTNET6) build iOS/*.csproj /bl
all-mac: prepare
$(DOTNET6) build macOS/*.csproj /bl
run-mac:
./macOS/bin/Debug/net6.0-macos/osx-x64/$(notdir $(CURDIR)).app/Contents/MacOS/$(notdir $(CURDIR))
diag:
cd .. && $(MAKE) global.json NuGet.config
$(DOTNET6) build /v:diag *binlog

Просмотреть файл

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Something</key>
<string>SomeValue</string>
</dict>
</plist>

Просмотреть файл

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<!-- We need this because some tests will build this project for 32-bit targets -->
<key>MinimumOSVersion</key>
<string>10.0</string></dict>
</plist>

Просмотреть файл

@ -0,0 +1 @@
include ../shared.mk

Просмотреть файл

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.0-ios</TargetFramework>
</PropertyGroup>
<Import Project="..\shared.csproj" />
</Project>

Просмотреть файл

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<!-- We need this because we'd otherwise default to the latest macOS version we support (currently 12.0), and we'll want to execute on earlier versions -->
<key>LSMinimumSystemVersion</key>
<string>11.0</string>
</dict>
</plist>

Просмотреть файл

@ -0,0 +1 @@
include ../shared.mk

Просмотреть файл

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.0-macos</TargetFramework>
</PropertyGroup>
<Import Project="..\shared.csproj" />
</Project>

Просмотреть файл

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<Project>
<PropertyGroup>
<OutputType>Exe</OutputType>
<ApplicationTitle>MyPartialAppManifestApp</ApplicationTitle>
<ApplicationId>com.xamarin.mypartialappmanifestapp</ApplicationId>
<ApplicationVersion>3.14</ApplicationVersion>
</PropertyGroup>
<ItemGroup>
<Compile Include="../*.cs" />
<None Include="Info.plist" />
<PartialAppManifest Include="../Partial.plist" />
</ItemGroup>
</Project>

Просмотреть файл

@ -0,0 +1,28 @@
TOP=../../../..
include $(TOP)/Make.config
prepare:
$(Q) $(MAKE) -C $(TOP)/tests/dotnet copy-dotnet-config
reload:
$(Q) rm -Rf $(TOP)/tests/dotnet/packages
$(Q) $(MAKE) -C $(TOP) -j8 all
$(Q) $(MAKE) -C $(TOP) -j8 install
$(Q) git clean -xfdq
reload-and-build:
$(Q) $(MAKE) reload
$(Q) $(MAKE) build
reload-and-run:
$(Q) $(MAKE) reload
$(Q) $(MAKE) run
build: prepare
$(Q) $(DOTNET6) build /bl *.csproj $(MSBUILD_VERBOSITY) $(BUILD_ARGUMENTS)
run: prepare
$(Q) $(DOTNET6) build /bl *.csproj $(MSBUILD_VERBOSITY) $(BUILD_ARGUMENTS) -t:Run
diag: prepare
$(Q) $(DOTNET6) build /v:diag msbuild.binlog

Просмотреть файл

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
</dict>
</plist>

Просмотреть файл

@ -0,0 +1 @@
include ../shared.mk

Просмотреть файл

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.0-tvos</TargetFramework>
</PropertyGroup>
<Import Project="..\shared.csproj" />
</Project>

Просмотреть файл

@ -0,0 +1,20 @@
using System;
using System.Runtime.InteropServices;
using Foundation;
namespace MySimpleApp
{
public class Program
{
static int Main (string[] args)
{
GC.KeepAlive (typeof (NSObject)); // prevent linking away the platform assembly
Console.WriteLine (Environment.GetEnvironmentVariable ("MAGIC_WORD"));
Console.WriteLine (typeof (MyClass));
return args.Length;
}
}
}

Просмотреть файл

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<!-- We need this because we'd otherwise default to the latest macOS version we support (currently 12.0), and we'll want to execute on earlier versions -->
<key>LSMinimumSystemVersion</key>
<string>11.0</string>
</dict>
</plist>

Просмотреть файл

@ -0,0 +1 @@
include ../shared.mk

Просмотреть файл

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.0-maccatalyst</TargetFramework>
</PropertyGroup>
<Import Project="..\shared.csproj" />
</Project>

Просмотреть файл

@ -0,0 +1,2 @@
public class MyClass {
}

Просмотреть файл

@ -0,0 +1,8 @@
TOP=../../../..
include $(TOP)/Make.config
dotnet45assembly.dll: Library.cs
$(SYSTEM_CSC) -target:library -out:$@ $<
all-local:: dotnet45assembly.dll

Просмотреть файл

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>MinimumOSVersion</key>
<string>10.0</string></dict>
</plist>

Просмотреть файл

@ -0,0 +1 @@
include ../shared.mk

Просмотреть файл

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.0-ios</TargetFramework>
</PropertyGroup>
<Import Project="..\shared.csproj" />
</Project>

Просмотреть файл

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<!-- We need this because we'd otherwise default to the latest macOS version we support (currently 12.0), and we'll want to execute on earlier versions -->
<key>LSMinimumSystemVersion</key>
<string>11.0</string>
</dict>
</plist>

Просмотреть файл

@ -0,0 +1 @@
include ../shared.mk

Просмотреть файл

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.0-macos</TargetFramework>
</PropertyGroup>
<Import Project="..\shared.csproj" />
</Project>

Просмотреть файл

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<Project>
<PropertyGroup>
<OutputType>Exe</OutputType>
<ApplicationTitle>SimpleAppWithOldReferences</ApplicationTitle>
<ApplicationId>com.xamarin.mysimpleappwitholdreferences</ApplicationId>
<ApplicationVersion>1.0</ApplicationVersion>
</PropertyGroup>
<ItemGroup>
<Compile Include="../*.cs" />
<None Include="Info.plist" />
<Reference Include="../dotnet45assembly/dotnet45assembly.dll" />
</ItemGroup>
<Target Name="BuildDotNet45Assembly" BeforeTargets="PrepareForBuild;ResolvAssemblyReferences">
<Exec Command="make -j8 -C ../dotnet45assembly" />
</Target>
</Project>

Просмотреть файл

@ -0,0 +1,34 @@
TOP=../../../..
include $(TOP)/Make.config
TESTNAME=$(shell basename "$(shell dirname "$(CURDIR)")")
prepare:
$(Q) $(MAKE) -C $(TOP)/tests/dotnet copy-dotnet-config
reload:
$(Q) rm -Rf $(TOP)/tests/dotnet/packages
$(Q) $(MAKE) -C $(TOP) -j8 all
$(Q) $(MAKE) -C $(TOP) -j8 install
$(Q) git clean -xfdq
reload-and-build:
$(Q) $(MAKE) reload
$(Q) $(MAKE) build
reload-and-run:
$(Q) $(MAKE) reload
$(Q) $(MAKE) run
build: prepare
$(Q) $(DOTNET6) build /bl *.csproj $(MSBUILD_VERBOSITY) $(BUILD_ARGUMENTS)
run: prepare
$(Q) $(DOTNET6) build /bl *.csproj $(MSBUILD_VERBOSITY) $(BUILD_ARGUMENTS) -t:Run
run-bare:
$(Q) ./bin/Debug/net6.0-*/*/"$(TESTNAME)".app/Contents/MacOS/"$(TESTNAME)"
diag: prepare
$(Q) $(DOTNET6) build /v:diag msbuild.binlog

Просмотреть файл

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
</dict>
</plist>

Просмотреть файл

@ -0,0 +1 @@
include ../shared.mk

Просмотреть файл

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.0-tvos</TargetFramework>
</PropertyGroup>
<Import Project="..\shared.csproj" />
</Project>

Просмотреть файл

@ -0,0 +1,34 @@
using System.Collections.Generic;
using NUnit.Framework;
using Xamarin.Utils;
using Xamarin.MacDev;
namespace Xamarin.Tests {
public class PartialAppManifestTest : TestBaseClass {
[Test]
[TestCase (ApplePlatform.MacCatalyst, "maccatalyst-x64")]
public void Build (ApplePlatform platform, string runtimeIdentifiers)
{
var project = "MyPartialAppManifestApp";
Configuration.IgnoreIfIgnoredPlatform (platform);
var project_path = GetProjectPath (project, runtimeIdentifiers: runtimeIdentifiers, platform: platform, out var appPath);
Clean (project_path);
var properties = new Dictionary<string, string> (verbosity);
SetRuntimeIdentifiers (properties, runtimeIdentifiers);
DotNet.AssertBuild (project_path, properties);
var infoPlistPath = GetInfoPListPath (platform, appPath);
var infoPlist = PDictionary.FromFile (infoPlistPath);
Assert.AreEqual ("com.xamarin.mypartialappmanifestapp", infoPlist.GetString ("CFBundleIdentifier").Value, "CFBundleIdentifier");
Assert.AreEqual ("MyPartialAppManifestApp", infoPlist.GetString ("CFBundleDisplayName").Value, "CFBundleDisplayName");
Assert.AreEqual ("3.14", infoPlist.GetString ("CFBundleVersion").Value, "CFBundleVersion");
Assert.AreEqual ("3.14", infoPlist.GetString ("CFBundleShortVersionString").Value, "CFBundleShortVersionString");
Assert.AreEqual ("SomeValue", infoPlist.GetString ("Something").Value, "Something");
}
}
}

Просмотреть файл

@ -616,10 +616,39 @@ namespace Xamarin.Tests {
ExecuteWithMagicWordAndAssert (appExecutable);
}
[Test]
[TestCase (ApplePlatform.MacCatalyst, "maccatalyst-x64")]
[TestCase (ApplePlatform.MacOSX, "osx-x64")]
public void SimpleAppWithOldReferences (ApplePlatform platform, string runtimeIdentifiers)
{
var project = "SimpleAppWithOldReferences";
Configuration.IgnoreIfIgnoredPlatform (platform);
var project_path = GetProjectPath (project, runtimeIdentifiers: runtimeIdentifiers, platform: platform, out var appPath);
Clean (project_path);
DotNet.AssertBuild (project_path, GetDefaultProperties (runtimeIdentifiers));
var appExecutable = Path.Combine (appPath, "Contents", "MacOS", Path.GetFileNameWithoutExtension (project_path));
Assert.That (appExecutable, Does.Exist, "There is an executable");
ExecuteWithMagicWordAndAssert (platform, runtimeIdentifiers, appExecutable);
}
void ExecuteWithMagicWordAndAssert (ApplePlatform platform, string runtimeIdentifiers, string executable)
{
if (!CanExecute (platform, runtimeIdentifiers))
return;
ExecuteWithMagicWordAndAssert (executable);
}
void ExecuteWithMagicWordAndAssert (string executable)
{
var magicWord = Guid.NewGuid ().ToString ();
var env = new Dictionary<string, string> { { "MAGIC_WORD", magicWord } };
var env = new Dictionary<string, string> {
{ "MAGIC_WORD", magicWord },
{ "DYLD_FALLBACK_LIBRARY_PATH", null }, // VSMac might set this, which may cause tests to crash.
};
var output = new StringBuilder ();
var rv = Execution.RunWithStringBuildersAsync (executable, Array.Empty<string> (), environment: env, standardOutput: output, standardError: output, timeout: TimeSpan.FromSeconds (15)).Result;
@ -641,21 +670,6 @@ namespace Xamarin.Tests {
Assert.That (output, Does.Not.Contain ("LinkerConfiguration:"), "Custom steps did not run as expected.");
}
string GetInfoPListPath (ApplePlatform platform, string app_directory)
{
switch (platform) {
case ApplePlatform.iOS:
case ApplePlatform.TVOS:
case ApplePlatform.WatchOS:
return Path.Combine (app_directory, "Info.plist");
case ApplePlatform.MacOSX:
case ApplePlatform.MacCatalyst:
return Path.Combine (app_directory, "Contents", "Info.plist");
default:
throw new NotImplementedException ($"Unknown platform: {platform}");
}
}
void AssertAppContents (ApplePlatform platform, string app_directory)
{
var info_plist_path = GetInfoPListPath (platform, app_directory);

Просмотреть файл

@ -2,6 +2,7 @@ using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using Mono.Cecil;
@ -77,5 +78,45 @@ namespace Xamarin.Tests {
Directory.Delete (dir, true);
}
}
protected bool CanExecute (ApplePlatform platform, string runtimeIdentifiers)
{
switch (platform) {
case ApplePlatform.iOS:
case ApplePlatform.TVOS:
case ApplePlatform.WatchOS:
return false;
case ApplePlatform.MacOSX:
case ApplePlatform.MacCatalyst:
// If we're targetting x64, then we can execute everywhere
if (runtimeIdentifiers.Contains ("-x64", StringComparison.Ordinal))
return true;
// If we're not targeting x64, and we're executing on x64, then we're out of luck
if (RuntimeInformation.ProcessArchitecture == Architecture.X64)
return false;
// Otherwise we can still execute.
return true;
default:
throw new ArgumentOutOfRangeException ($"Unknown platform: {platform}");
}
}
protected string GetInfoPListPath (ApplePlatform platform, string app_directory)
{
switch (platform) {
case ApplePlatform.iOS:
case ApplePlatform.TVOS:
case ApplePlatform.WatchOS:
return Path.Combine (app_directory, "Info.plist");
case ApplePlatform.MacOSX:
case ApplePlatform.MacCatalyst:
return Path.Combine (app_directory, "Contents", "Info.plist");
default:
throw new NotImplementedException ($"Unknown platform: {platform}");
}
}
}
}

Просмотреть файл

@ -393,9 +393,7 @@ namespace Introspection {
}
[Test]
#if IOS || TVOS || __MACCATALYST__
[Ignore ("work in progress")]
#endif
public void LegacyAttributes ()
{
//LogProgress = true;

Просмотреть файл

@ -229,6 +229,7 @@ namespace Introspection {
return true;
case "SecIdentity": // hangs with xcode12.5 beta 2 while loading p12 file
case "SecIdentity2": // same (dupe logic)
case "Authorization":
return true;
default:
return false;
@ -464,6 +465,10 @@ namespace Introspection {
}
case "SecAccessControl":
return new SecAccessControl (SecAccessible.WhenPasscodeSetThisDeviceOnly);
#if __MACCATALYST__
case "Authorization":
return Security.Authorization.Create (AuthorizationFlags.Defaults);
#endif
default:
throw new InvalidOperationException (string.Format ("Could not create the new instance for type {0}.", t.Name));
}

Просмотреть файл

@ -160,6 +160,7 @@ namespace Introspection {
case "NSEntityMapping":
case "NSMappingModel":
case "NSPropertyMapping":
case "HMAccessoryOwnershipToken":
return true;
}
break;

Просмотреть файл

@ -2,136 +2,12 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.0-maccatalyst</TargetFramework>
<RuntimeIdentifier>maccatalyst-x64</RuntimeIdentifier>
<OutputType>Exe</OutputType>
<DefineConstants>NET</DefineConstants>
<LangVersion>latest</LangVersion>
<RootNamespace>Introspection</RootNamespace>
<AssemblyName>introspection</AssemblyName>
<MtouchLink>None</MtouchLink>
<AssetTargetFallback>xamarinios10;$(AssetTargetFallback)</AssetTargetFallback>
<!-- This is needed because the packages/ directory might be in the same folder as this project file, and some some packages might have C# files, which would then automatically be included -->
<DefaultItemExcludes>$(DefaultItemExcludes);packages/**;</DefaultItemExcludes>
<EnableDefaultItems>false</EnableDefaultItems>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="NUnitLite" Version="3.12.0" />
<PackageReference Include="MonoTouch.Dialog" Version="2.0.0-pre1" />
<ProjectReference Include="..\..\..\..\external\Touch.Unit\Touch.Client\dotnet\MacCatalyst\Touch.Client-MacCatalyst.dotnet.csproj" />
<!-- MonoTouch.Dialog references System.Json, which isn't shipped with .NET5, so reference the NuGet instead -->
<PackageReference Include="System.Json" Version="4.7.1" />
</ItemGroup>
<!-- Imports of the form '../shared.csproj' will be inlined by xharness -->
<Import Project="../shared.csproj" />
<ItemGroup>
<Compile Include="..\..\iOS\AppDelegate.cs" />
<Compile Include="..\..\iOS\iOSApiCtorInitTest.cs" />
<Compile Include="..\..\iOS\iOSApiFieldTest.cs" />
<Compile Include="..\..\iOS\iOSApiSelectorTest.cs" />
<Compile Include="..\..\iOS\iOSApiSignatureTest.cs" />
<Compile Include="..\..\iOS\iOSApiProtocolTest.cs" />
<Compile Include="..\..\iOS\iOSApiWeakPropertyTest.cs" />
<Compile Include="..\..\iOS\iOSApiPInvokeTest.cs" />
<Compile Include="..\..\iOS\iOSApiClassPtrTest.cs" />
<Compile Include="..\..\iOS\iOSApiTypoTest.cs" />
<Compile Include="..\..\iOS\iOSCoreImageFiltersTest.cs" />
<Compile Include="..\..\ApiBaseTest.cs">
<Link>ApiBaseTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiClassPtrTest.cs">
<Link>ApiClassPtrTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiCMAttachmentTest.cs">
<Link>ApiCMAttachmentTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiCoreImageFiltersTest.cs">
<Link>ApiCoreImageFiltersTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiCtorInitTest.cs">
<Link>ApiCtorInitTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiFieldTest.cs">
<Link>ApiFieldTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiPInvokeTest.cs">
<Link>ApiPInvokeTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiProtocolTest.cs">
<Link>ApiProtocolTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiSelectorTest.cs">
<Link>ApiSelectorTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiSignatureTest.cs">
<Link>ApiSignatureTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiStructTest.cs">
<Link>ApiStructTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiTypoTest.cs">
<Link>ApiTypoTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiWeakPropertyTest.cs">
<Link>ApiWeakPropertyTest.cs</Link>
</Compile>
<Compile Include="..\..\CoreSelectorTest.cs">
<Link>CoreSelectorTest.cs</Link>
</Compile>
<Compile Include="..\..\EnvironmentVariable.cs">
<Link>EnvironmentVariable.cs</Link>
</Compile>
<Compile Include="..\..\..\common\MonoNativeConfig.cs">
<Link>MonoNativeConfig.cs</Link>
</Compile>
<Compile Include="..\..\..\common\PlatformInfo.cs">
<Link>PlatformInfo.cs</Link>
</Compile>
<Compile Include="..\..\..\common\TestRuntime.cs">
<Link>TestRuntime.cs</Link>
</Compile>
<Compile Include="..\..\ApiAvailabilityTest.cs">
<Link>ApiAvailabilityTest.cs</Link>
</Compile>
<Compile Include="..\..\..\..\tools\common\Frameworks.cs">
<Link>Frameworks.cs</Link>
</Compile>
<Compile Include="..\..\..\..\tools\common\ApplePlatform.cs">
<Link>ApplePlatform.cs</Link>
</Compile>
<Compile Include="..\..\..\..\tools\common\SdkVersions.cs">
<Link>SdkVersions.cs</Link>
</Compile>
<Compile Include="..\..\ApiFrameworkTest.cs">
<Link>ApiFrameworkTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiTypeTest.cs">
<Link>ApiTypeTest.cs</Link>
</Compile>
</ItemGroup>
<ItemGroup>
<None Include="Info.plist" />
</ItemGroup>
<ItemGroup>
<InterfaceDefinition Include="..\..\iOS\LaunchScreen.storyboard" Condition="'$(TargetFrameworkIdentifier)' != 'Xamarin.WatchOS'" />
</ItemGroup>
<ItemGroup>
<ImageAsset Condition="'$(TargetFrameworkIdentifier)' != 'Xamarin.WatchOS'" Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\Contents.json" />
<ImageAsset Condition="'$(TargetFrameworkIdentifier)' != 'Xamarin.WatchOS'" Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\Icon-app-60%403x.png" />
<ImageAsset Condition="'$(TargetFrameworkIdentifier)' != 'Xamarin.WatchOS'" Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-57.png" />
<ImageAsset Condition="'$(TargetFrameworkIdentifier)' != 'Xamarin.WatchOS'" Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-57%402x.png" />
<ImageAsset Condition="'$(TargetFrameworkIdentifier)' != 'Xamarin.WatchOS'" Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-60%402x.png" />
<ImageAsset Condition="'$(TargetFrameworkIdentifier)' != 'Xamarin.WatchOS'" Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-72.png" />
<ImageAsset Condition="'$(TargetFrameworkIdentifier)' != 'Xamarin.WatchOS'" Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-72%402x.png" />
<ImageAsset Condition="'$(TargetFrameworkIdentifier)' != 'Xamarin.WatchOS'" Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-76.png" />
<ImageAsset Condition="'$(TargetFrameworkIdentifier)' != 'Xamarin.WatchOS'" Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-76%402x.png" />
<ImageAsset Condition="'$(TargetFrameworkIdentifier)' != 'Xamarin.WatchOS'" Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-83.5%402x.png" />
</ItemGroup>
<ItemGroup>
<BundleResource Include="..\..\xamarin1.png">
<Link>xamarin1.png</Link>
</BundleResource>
<BundleResource Include="..\..\..\..\tools\mtouch\simlauncher64-sgen.frameworks">
<Link>simlauncher64-sgen.frameworks</Link>
</BundleResource>
<!-- this empty item group is here for xharness -->
</ItemGroup>
</Project>

Просмотреть файл

@ -0,0 +1,8 @@
TOP=../../..
include $(TOP)/Make.config
build-all:
for platform in $(DOTNET_PLATFORMS); do \
echo "Building in $$platform"; \
$(MAKE) -C "$$platform" build; \
done

Просмотреть файл

@ -0,0 +1 @@
include ../shared.mk

Просмотреть файл

@ -2,136 +2,12 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.0-ios</TargetFramework>
<RuntimeIdentifier>iossimulator-x64</RuntimeIdentifier>
<OutputType>Exe</OutputType>
<DefineConstants>NET</DefineConstants>
<LangVersion>latest</LangVersion>
<RootNamespace>Introspection</RootNamespace>
<AssemblyName>introspection</AssemblyName>
<MtouchLink>None</MtouchLink>
<AssetTargetFallback>xamarinios10;$(AssetTargetFallback)</AssetTargetFallback>
<!-- This is needed because the packages/ directory might be in the same folder as this project file, and some some packages might have C# files, which would then automatically be included -->
<DefaultItemExcludes>$(DefaultItemExcludes);packages/**;</DefaultItemExcludes>
<EnableDefaultItems>false</EnableDefaultItems>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="NUnitLite" Version="3.12.0" />
<PackageReference Include="MonoTouch.Dialog" Version="2.0.0-pre1" />
<ProjectReference Include="..\..\..\..\external\Touch.Unit\Touch.Client\dotnet\iOS\Touch.Client-iOS.dotnet.csproj" />
<!-- MonoTouch.Dialog references System.Json, which isn't shipped with .NET5, so reference the NuGet instead -->
<PackageReference Include="System.Json" Version="4.7.1" />
</ItemGroup>
<!-- Imports of the form '../shared.csproj' will be inlined by xharness -->
<Import Project="../shared.csproj" />
<ItemGroup>
<Compile Include="..\..\iOS\AppDelegate.cs" />
<Compile Include="..\..\iOS\iOSApiCtorInitTest.cs" />
<Compile Include="..\..\iOS\iOSApiFieldTest.cs" />
<Compile Include="..\..\iOS\iOSApiSelectorTest.cs" />
<Compile Include="..\..\iOS\iOSApiSignatureTest.cs" />
<Compile Include="..\..\iOS\iOSApiProtocolTest.cs" />
<Compile Include="..\..\iOS\iOSApiWeakPropertyTest.cs" />
<Compile Include="..\..\iOS\iOSApiPInvokeTest.cs" />
<Compile Include="..\..\iOS\iOSApiClassPtrTest.cs" />
<Compile Include="..\..\iOS\iOSApiTypoTest.cs" />
<Compile Include="..\..\iOS\iOSCoreImageFiltersTest.cs" />
<Compile Include="..\..\ApiBaseTest.cs">
<Link>ApiBaseTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiClassPtrTest.cs">
<Link>ApiClassPtrTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiCMAttachmentTest.cs">
<Link>ApiCMAttachmentTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiCoreImageFiltersTest.cs">
<Link>ApiCoreImageFiltersTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiCtorInitTest.cs">
<Link>ApiCtorInitTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiFieldTest.cs">
<Link>ApiFieldTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiPInvokeTest.cs">
<Link>ApiPInvokeTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiProtocolTest.cs">
<Link>ApiProtocolTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiSelectorTest.cs">
<Link>ApiSelectorTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiSignatureTest.cs">
<Link>ApiSignatureTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiStructTest.cs">
<Link>ApiStructTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiTypoTest.cs">
<Link>ApiTypoTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiWeakPropertyTest.cs">
<Link>ApiWeakPropertyTest.cs</Link>
</Compile>
<Compile Include="..\..\CoreSelectorTest.cs">
<Link>CoreSelectorTest.cs</Link>
</Compile>
<Compile Include="..\..\EnvironmentVariable.cs">
<Link>EnvironmentVariable.cs</Link>
</Compile>
<Compile Include="..\..\..\common\MonoNativeConfig.cs">
<Link>MonoNativeConfig.cs</Link>
</Compile>
<Compile Include="..\..\..\common\PlatformInfo.cs">
<Link>PlatformInfo.cs</Link>
</Compile>
<Compile Include="..\..\..\common\TestRuntime.cs">
<Link>TestRuntime.cs</Link>
</Compile>
<Compile Include="..\..\ApiAvailabilityTest.cs">
<Link>ApiAvailabilityTest.cs</Link>
</Compile>
<Compile Include="..\..\..\..\tools\common\Frameworks.cs">
<Link>Frameworks.cs</Link>
</Compile>
<Compile Include="..\..\..\..\tools\common\ApplePlatform.cs">
<Link>ApplePlatform.cs</Link>
</Compile>
<Compile Include="..\..\..\..\tools\common\SdkVersions.cs">
<Link>SdkVersions.cs</Link>
</Compile>
<Compile Include="..\..\ApiFrameworkTest.cs">
<Link>ApiFrameworkTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiTypeTest.cs">
<Link>ApiTypeTest.cs</Link>
</Compile>
</ItemGroup>
<ItemGroup>
<None Include="Info.plist" />
</ItemGroup>
<ItemGroup>
<InterfaceDefinition Include="..\..\iOS\LaunchScreen.storyboard" Condition="'$(TargetFrameworkIdentifier)' != 'Xamarin.WatchOS'" />
</ItemGroup>
<ItemGroup>
<ImageAsset Condition="'$(TargetFrameworkIdentifier)' != 'Xamarin.WatchOS'" Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\Contents.json" />
<ImageAsset Condition="'$(TargetFrameworkIdentifier)' != 'Xamarin.WatchOS'" Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\Icon-app-60%403x.png" />
<ImageAsset Condition="'$(TargetFrameworkIdentifier)' != 'Xamarin.WatchOS'" Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-57.png" />
<ImageAsset Condition="'$(TargetFrameworkIdentifier)' != 'Xamarin.WatchOS'" Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-57%402x.png" />
<ImageAsset Condition="'$(TargetFrameworkIdentifier)' != 'Xamarin.WatchOS'" Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-60%402x.png" />
<ImageAsset Condition="'$(TargetFrameworkIdentifier)' != 'Xamarin.WatchOS'" Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-72.png" />
<ImageAsset Condition="'$(TargetFrameworkIdentifier)' != 'Xamarin.WatchOS'" Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-72%402x.png" />
<ImageAsset Condition="'$(TargetFrameworkIdentifier)' != 'Xamarin.WatchOS'" Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-76.png" />
<ImageAsset Condition="'$(TargetFrameworkIdentifier)' != 'Xamarin.WatchOS'" Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-76%402x.png" />
<ImageAsset Condition="'$(TargetFrameworkIdentifier)' != 'Xamarin.WatchOS'" Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-83.5%402x.png" />
</ItemGroup>
<ItemGroup>
<BundleResource Include="..\..\xamarin1.png">
<Link>xamarin1.png</Link>
</BundleResource>
<BundleResource Include="..\..\..\..\tools\mtouch\simlauncher64-sgen.frameworks">
<Link>simlauncher64-sgen.frameworks</Link>
</BundleResource>
<!-- this empty item group is here for xharness -->
</ItemGroup>
</Project>

Просмотреть файл

@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDisplayName</key>
<string>introspection</string>
<key>CFBundleIdentifier</key>
<string>com.xamarin.introspection</string>
<key>CFBundleVersion</key>
<string>1</string>
<key>LSMinimumSystemVersion</key>
<string>10.14</string>
<key>NSPrincipalClass</key>
<string>NSApplication</string>
<key>LSApplicationCategoryType</key>
<string>public.app-category.developer-tools</string>
<key>CFBundleName</key>
<string>introspection</string>
<key>LSUIElement</key>
<string>1</string>
<key>NSAppleMusicUsageDescription</key>
<string>Testing tastes</string>
<key>NSCameraUsageDescription</key>
<string>Smile!</string>
<key>NSContactsUsageDescription</key>
<string>Testing friends</string>
<key>NSHomeKitUsageDescription</key>
<string>Testing roofs</string>
<key>NSMicrophoneUsageDescription</key>
<string>Testing mike</string>
<key>NSPhotoLibraryUsageDescription</key>
<string>Testing lens</string>
</dict>
</plist>

Просмотреть файл

@ -0,0 +1 @@
include ../shared.mk

Просмотреть файл

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.0-macos</TargetFramework>
</PropertyGroup>
<!-- Imports of the form '../shared.csproj' will be inlined by xharness -->
<Import Project="../shared.csproj" />
<ItemGroup>
<!-- this empty item group is here for xharness -->
</ItemGroup>
</Project>

Просмотреть файл

@ -0,0 +1,166 @@
<?xml version="1.0" encoding="utf-8"?>
<Project>
<PropertyGroup>
<OutputType>Exe</OutputType>
<DefineConstants>$(DefineConstants);NET</DefineConstants>
<LangVersion>latest</LangVersion>
<RootNamespace>Introspection</RootNamespace>
<AssemblyName>introspection</AssemblyName>
<MtouchLink>None</MtouchLink>
<RootTestsDirectory>$([System.IO.Path]::GetFullPath('$(MSBuildProjectDirectory)\..\..\..'))</RootTestsDirectory>
<TestLibrariesDirectory>$(RootTestsDirectory)\test-libraries</TestLibrariesDirectory>
<IntrospectionTestDirectory>$(RootTestsDirectory)\introspection</IntrospectionTestDirectory>
<!-- Don't remove native symbols, because it makes debugging native crashes harder -->
<MtouchNoSymbolStrip>true</MtouchNoSymbolStrip>
<DefineConstants Condition="'$(Configuration)' == 'Debug'">$(DefineConstants);DEBUG</DefineConstants>
</PropertyGroup>
<Import Project="$(RootTestsDirectory)/common/shared-dotnet.csproj" />
<ItemGroup>
<PackageReference Include="NUnitLite" Version="3.12.0" />
<ProjectReference Include="$(RootTestsDirectory)\..\external\Touch.Unit\Touch.Client\dotnet\$(_PlatformName)\Touch.Client-$(_PlatformName).dotnet.csproj" />
<!-- MonoTouch.Dialog references System.Json, which isn't shipped with .NET5, so reference the NuGet instead -->
<PackageReference Include="System.Json" Version="4.7.1" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.EndsWith('-macos'))">
<Compile Include="$(IntrospectionTestDirectory)\Mac\MacApiCtorInitTest.cs" />
<Compile Include="$(IntrospectionTestDirectory)\Mac\MacApiFieldTest.cs" />
<Compile Include="$(IntrospectionTestDirectory)\Mac\MacApiSelectorTest.cs" />
<Compile Include="$(IntrospectionTestDirectory)\Mac\MacApiProtocolTest.cs" />
<Compile Include="$(IntrospectionTestDirectory)\Mac\MacApiSignatureTest.cs" />
<Compile Include="$(IntrospectionTestDirectory)\Mac\MacCoreImageFiltersTest.cs" />
<Compile Include="$(IntrospectionTestDirectory)\Mac\MacApiPInvokeTest.cs" />
<Compile Include="$(IntrospectionTestDirectory)\Mac\MacApiWeakPropertyTest.cs" />
<Compile Include="$(IntrospectionTestDirectory)\Mac\MacApiTypoTest.cs" />
<Compile Include="$(RootTestsDirectory)\common\mac\MacMain.cs">
<Link>MacMain.cs</Link>
</Compile>
<Compile Include="$(RootTestsDirectory)\common\mac\Mac.cs">
<Link>Mac.cs</Link>
</Compile>
<Compile Include="$(RootTestsDirectory)\common\mac\TestRuntime.macos.cs">
<Link>TestRuntime.macos.cs</Link>
</Compile>
</ItemGroup>
<ItemGroup Condition="!$(TargetFramework.EndsWith('-macos'))">
<Compile Include="$(IntrospectionTestDirectory)\iOS\AppDelegate.cs" />
<Compile Include="$(IntrospectionTestDirectory)\iOS\iOSApiCtorInitTest.cs" />
<Compile Include="$(IntrospectionTestDirectory)\iOS\iOSApiFieldTest.cs" />
<Compile Include="$(IntrospectionTestDirectory)\iOS\iOSApiSelectorTest.cs" />
<Compile Include="$(IntrospectionTestDirectory)\iOS\iOSApiSignatureTest.cs" />
<Compile Include="$(IntrospectionTestDirectory)\iOS\iOSApiProtocolTest.cs" />
<Compile Include="$(IntrospectionTestDirectory)\iOS\iOSApiWeakPropertyTest.cs" />
<Compile Include="$(IntrospectionTestDirectory)\iOS\iOSApiPInvokeTest.cs" />
<Compile Include="$(IntrospectionTestDirectory)\iOS\iOSApiClassPtrTest.cs" />
<Compile Include="$(IntrospectionTestDirectory)\iOS\iOSApiTypoTest.cs" />
<Compile Include="$(IntrospectionTestDirectory)\iOS\iOSCoreImageFiltersTest.cs" />
<Compile Include="$(IntrospectionTestDirectory)\ApiCMAttachmentTest.cs">
<Link>ApiCMAttachmentTest.cs</Link>
</Compile>
<InterfaceDefinition Include="$(IntrospectionTestDirectory)\iOS\LaunchScreen.storyboard" />
<ImageAsset Include="$(IntrospectionTestDirectory)\iOS\Assets.xcassets\AppIcons.appiconset\Contents.json" />
<ImageAsset Include="$(IntrospectionTestDirectory)\iOS\Assets.xcassets\AppIcons.appiconset\Icon-app-60%403x.png" />
<ImageAsset Include="$(IntrospectionTestDirectory)\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-57.png" />
<ImageAsset Include="$(IntrospectionTestDirectory)\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-57%402x.png" />
<ImageAsset Include="$(IntrospectionTestDirectory)\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-60%402x.png" />
<ImageAsset Include="$(IntrospectionTestDirectory)\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-72.png" />
<ImageAsset Include="$(IntrospectionTestDirectory)\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-72%402x.png" />
<ImageAsset Include="$(IntrospectionTestDirectory)\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-76.png" />
<ImageAsset Include="$(IntrospectionTestDirectory)\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-76%402x.png" />
<ImageAsset Include="$(IntrospectionTestDirectory)\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-83.5%402x.png" />
</ItemGroup>
<ItemGroup>
<Compile Include="$(IntrospectionTestDirectory)\ApiBaseTest.cs">
<Link>ApiBaseTest.cs</Link>
</Compile>
<Compile Include="$(IntrospectionTestDirectory)\ApiClassPtrTest.cs">
<Link>ApiClassPtrTest.cs</Link>
</Compile>
<Compile Include="$(IntrospectionTestDirectory)\ApiCoreImageFiltersTest.cs">
<Link>ApiCoreImageFiltersTest.cs</Link>
</Compile>
<Compile Include="$(IntrospectionTestDirectory)\ApiCtorInitTest.cs">
<Link>ApiCtorInitTest.cs</Link>
</Compile>
<Compile Include="$(IntrospectionTestDirectory)\ApiFieldTest.cs">
<Link>ApiFieldTest.cs</Link>
</Compile>
<Compile Include="$(IntrospectionTestDirectory)\ApiPInvokeTest.cs">
<Link>ApiPInvokeTest.cs</Link>
</Compile>
<Compile Include="$(IntrospectionTestDirectory)\ApiProtocolTest.cs">
<Link>ApiProtocolTest.cs</Link>
</Compile>
<Compile Include="$(IntrospectionTestDirectory)\ApiSelectorTest.cs">
<Link>ApiSelectorTest.cs</Link>
</Compile>
<Compile Include="$(IntrospectionTestDirectory)\ApiSignatureTest.cs">
<Link>ApiSignatureTest.cs</Link>
</Compile>
<Compile Include="$(IntrospectionTestDirectory)\ApiStructTest.cs">
<Link>ApiStructTest.cs</Link>
</Compile>
<Compile Include="$(IntrospectionTestDirectory)\ApiTypoTest.cs">
<Link>ApiTypoTest.cs</Link>
</Compile>
<Compile Include="$(IntrospectionTestDirectory)\ApiWeakPropertyTest.cs">
<Link>ApiWeakPropertyTest.cs</Link>
</Compile>
<Compile Include="$(IntrospectionTestDirectory)\CoreSelectorTest.cs">
<Link>CoreSelectorTest.cs</Link>
</Compile>
<Compile Include="$(IntrospectionTestDirectory)\EnvironmentVariable.cs">
<Link>EnvironmentVariable.cs</Link>
</Compile>
<Compile Include="$(IntrospectionTestDirectory)\..\common\MonoNativeConfig.cs">
<Link>MonoNativeConfig.cs</Link>
</Compile>
<Compile Include="$(IntrospectionTestDirectory)\..\common\PlatformInfo.cs">
<Link>PlatformInfo.cs</Link>
</Compile>
<Compile Include="$(IntrospectionTestDirectory)\..\common\TestRuntime.cs">
<Link>TestRuntime.cs</Link>
</Compile>
<Compile Include="$(IntrospectionTestDirectory)\ApiAvailabilityTest.cs">
<Link>ApiAvailabilityTest.cs</Link>
</Compile>
<Compile Include="$(IntrospectionTestDirectory)\..\..\tools\common\Frameworks.cs">
<Link>Frameworks.cs</Link>
</Compile>
<Compile Include="$(IntrospectionTestDirectory)\..\..\tools\common\ApplePlatform.cs">
<Link>ApplePlatform.cs</Link>
</Compile>
<Compile Include="$(IntrospectionTestDirectory)\..\..\tools\common\SdkVersions.cs">
<Link>SdkVersions.cs</Link>
</Compile>
<Compile Include="$(IntrospectionTestDirectory)\ApiFrameworkTest.cs">
<Link>ApiFrameworkTest.cs</Link>
</Compile>
<Compile Include="$(IntrospectionTestDirectory)\ApiTypeTest.cs">
<Link>ApiTypeTest.cs</Link>
</Compile>
</ItemGroup>
<ItemGroup>
<None Include="Info.plist" />
</ItemGroup>
<ItemGroup>
<BundleResource Include="$(IntrospectionTestDirectory)\xamarin1.png">
<Link>xamarin1.png</Link>
</BundleResource>
<BundleResource Include="$(IntrospectionTestDirectory)\..\..\tools\mtouch\simlauncher64-sgen.frameworks">
<Link>simlauncher64-sgen.frameworks</Link>
</BundleResource>
</ItemGroup>
</Project>

Просмотреть файл

@ -1,12 +1,29 @@
TOP=../../../..
include $(TOP)/Make.config
include $(TOP)/mk/colors.mk
prepare:
$(MAKE) -C $(TOP)/tests/dotnet copy-dotnet-config
$(Q) $(MAKE) -C $(TOP)/tests/dotnet copy-dotnet-config
reload:
$(Q) rm -Rf $(TOP)/tests/dotnet/packages
$(Q) $(MAKE) -C $(TOP) -j8 all
$(Q) $(MAKE) -C $(TOP) -j8 install
$(Q) git clean -xfdq
reload-and-build:
$(Q) $(MAKE) reload
$(Q) $(MAKE) build
reload-and-run:
$(Q) $(MAKE) reload
$(Q) $(MAKE) run
build: prepare
$(DOTNET6) build /bl *.csproj $(MSBUILD_VERBOSITY)
$(Q) $(DOTNET6) build /bl *.csproj $(MSBUILD_VERBOSITY) $(BUILD_ARGUMENTS)
run: prepare
$(DOTNET6) build /bl *.csproj $(MSBUILD_VERBOSITY) /t:Run
$(Q) $(DOTNET6) build /bl *.csproj $(MSBUILD_VERBOSITY) $(BUILD_ARGUMENTS) -t:Run
diag: prepare
$(Q) $(DOTNET6) build /v:diag msbuild.binlog

Просмотреть файл

@ -0,0 +1 @@
include ../shared.mk

Просмотреть файл

@ -2,130 +2,12 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.0-tvos</TargetFramework>
<RuntimeIdentifier>tvossimulator-x64</RuntimeIdentifier>
<OutputType>Exe</OutputType>
<DefineConstants>NET</DefineConstants>
<LangVersion>latest</LangVersion>
<RootNamespace>Introspection</RootNamespace>
<AssemblyName>introspection</AssemblyName>
<MtouchLink>None</MtouchLink>
<AssetTargetFallback>xamarintvos10;$(AssetTargetFallback)</AssetTargetFallback>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="NUnitLite" Version="3.12.0" />
<PackageReference Include="MonoTouch.Dialog" Version="2.0.0-pre1" />
<ProjectReference Include="..\..\..\..\external\Touch.Unit\Touch.Client\dotnet\tvOS\Touch.Client-tvOS.dotnet.csproj" />
<!-- MonoTouch.Dialog references System.Json, which isn't shipped with .NET5, so reference the NuGet instead -->
<PackageReference Include="System.Json" Version="4.7.1" />
</ItemGroup>
<!-- Imports of the form '../shared.csproj' will be inlined by xharness -->
<Import Project="../shared.csproj" />
<ItemGroup>
<Compile Include="..\..\iOS\AppDelegate.cs" />
<Compile Include="..\..\iOS\iOSApiCtorInitTest.cs" />
<Compile Include="..\..\iOS\iOSApiFieldTest.cs" />
<Compile Include="..\..\iOS\iOSApiSelectorTest.cs" />
<Compile Include="..\..\iOS\iOSApiSignatureTest.cs" />
<Compile Include="..\..\iOS\iOSApiProtocolTest.cs" />
<Compile Include="..\..\iOS\iOSApiWeakPropertyTest.cs" />
<Compile Include="..\..\iOS\iOSApiPInvokeTest.cs" />
<Compile Include="..\..\iOS\iOSApiClassPtrTest.cs" />
<Compile Include="..\..\iOS\iOSApiTypoTest.cs" />
<Compile Include="..\..\iOS\iOSCoreImageFiltersTest.cs" />
<Compile Include="..\..\ApiBaseTest.cs">
<Link>ApiBaseTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiClassPtrTest.cs">
<Link>ApiClassPtrTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiCMAttachmentTest.cs">
<Link>ApiCMAttachmentTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiCoreImageFiltersTest.cs">
<Link>ApiCoreImageFiltersTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiCtorInitTest.cs">
<Link>ApiCtorInitTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiFieldTest.cs">
<Link>ApiFieldTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiPInvokeTest.cs">
<Link>ApiPInvokeTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiProtocolTest.cs">
<Link>ApiProtocolTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiSelectorTest.cs">
<Link>ApiSelectorTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiSignatureTest.cs">
<Link>ApiSignatureTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiStructTest.cs">
<Link>ApiStructTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiTypoTest.cs">
<Link>ApiTypoTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiWeakPropertyTest.cs">
<Link>ApiWeakPropertyTest.cs</Link>
</Compile>
<Compile Include="..\..\CoreSelectorTest.cs">
<Link>CoreSelectorTest.cs</Link>
</Compile>
<Compile Include="..\..\EnvironmentVariable.cs">
<Link>EnvironmentVariable.cs</Link>
</Compile>
<Compile Include="..\..\..\common\MonoNativeConfig.cs">
<Link>MonoNativeConfig.cs</Link>
</Compile>
<Compile Include="..\..\..\common\PlatformInfo.cs">
<Link>PlatformInfo.cs</Link>
</Compile>
<Compile Include="..\..\..\common\TestRuntime.cs">
<Link>TestRuntime.cs</Link>
</Compile>
<Compile Include="..\..\ApiAvailabilityTest.cs">
<Link>ApiAvailabilityTest.cs</Link>
</Compile>
<Compile Include="..\..\..\..\tools\common\Frameworks.cs">
<Link>Frameworks.cs</Link>
</Compile>
<Compile Include="..\..\..\..\tools\common\ApplePlatform.cs">
<Link>ApplePlatform.cs</Link>
</Compile>
<Compile Include="..\..\..\..\tools\common\SdkVersions.cs">
<Link>SdkVersions.cs</Link>
</Compile>
<Compile Include="..\..\ApiFrameworkTest.cs">
<Link>ApiFrameworkTest.cs</Link>
</Compile>
<Compile Include="..\..\ApiTypeTest.cs">
<Link>ApiTypeTest.cs</Link>
</Compile>
</ItemGroup>
<ItemGroup>
<InterfaceDefinition Include="..\..\iOS\LaunchScreen.storyboard" />
</ItemGroup>
<ItemGroup>
<ImageAsset Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\Contents.json" />
<ImageAsset Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\Icon-app-60%403x.png" />
<ImageAsset Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-57.png" />
<ImageAsset Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-57%402x.png" />
<ImageAsset Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-60%402x.png" />
<ImageAsset Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-72.png" />
<ImageAsset Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-72%402x.png" />
<ImageAsset Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-76.png" />
<ImageAsset Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-76%402x.png" />
<ImageAsset Include="..\..\iOS\Assets.xcassets\AppIcons.appiconset\icon-app-83.5%402x.png" />
</ItemGroup>
<ItemGroup>
<BundleResource Include="..\..\xamarin1.png">
<Link>xamarin1.png</Link>
</BundleResource>
<BundleResource Include="..\..\..\..\tools\mtouch\simlauncher64-sgen.frameworks">
<Link>simlauncher64-sgen.frameworks</Link>
</BundleResource>
<!-- this empty item group is here for xharness -->
</ItemGroup>
</Project>

Некоторые файлы не были показаны из-за слишком большого количества измененных файлов Показать больше