diff --git a/Directory.Build.props b/Directory.Build.props
index ef0e8c1b44d76d..40c75f103b8be8 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -56,18 +56,22 @@
- eng/native/configurecompiler.cmake
- eng/native/build-commons.sh
- src/native/libs/build-native.sh
- - src/coreclr/tools/aot/ILCompiler.Compiler/Compiler/DependencyAnalysis/ObjectWriter.cs
+ - src/coreclr/tools/aot/ILCompiler.Compiler/Compiler/ObjectWriter/MachObjectWriter.cs
- src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.Unix.targets
+ - src/mono/mono/tools/offsets-tool/offsets-tool.py
+ - src/mono/msbuild/apple/build/AppleBuild.targets
- src/installer/pkg/sfx/bundle/shared-framework-distribution-template-x64.xml
- src/installer/pkg/sfx/bundle/shared-framework-distribution-template-arm64.xml
+ - src/tasks/AotCompilerTask/MonoAOTCompiler.props
+ - src/tasks/AppleAppBuilder/Xcode.cs
- src/tasks/MobileBuildTasks/Apple/AppleProject.cs
- dotnet/installer repo > src/redist/targets/GeneratePKG.targets
-->
21
- 11.0
- 11.0
- 10.15
- 11.0
+ 12.2
+ 12.2
+ 12.0
+ 15.0
diff --git a/eng/native/build-commons.sh b/eng/native/build-commons.sh
index 0916abb396fa46..2cf33442a93253 100755
--- a/eng/native/build-commons.sh
+++ b/eng/native/build-commons.sh
@@ -109,7 +109,7 @@ build_native()
# set default iOS simulator deployment target
# keep in sync with SetOSTargetMinVersions in the root Directory.Build.props
- cmakeArgs="-DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_SYSROOT=iphonesimulator -DCMAKE_OSX_DEPLOYMENT_TARGET=11.0 $cmakeArgs"
+ cmakeArgs="-DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_SYSROOT=iphonesimulator -DCMAKE_OSX_DEPLOYMENT_TARGET=12.2 $cmakeArgs"
if [[ "$__TargetArch" == x64 ]]; then
cmakeArgs="-DCMAKE_OSX_ARCHITECTURES=\"x86_64\" $cmakeArgs"
elif [[ "$__TargetArch" == arm64 ]]; then
@@ -123,7 +123,7 @@ build_native()
# set default iOS device deployment target
# keep in sync with SetOSTargetMinVersions in the root Directory.Build.props
- cmakeArgs="-DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_SYSROOT=iphoneos -DCMAKE_OSX_DEPLOYMENT_TARGET=11.0 $cmakeArgs"
+ cmakeArgs="-DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_SYSROOT=iphoneos -DCMAKE_OSX_DEPLOYMENT_TARGET=12.2 $cmakeArgs"
if [[ "$__TargetArch" == arm64 ]]; then
cmakeArgs="-DCMAKE_OSX_ARCHITECTURES=\"arm64\" $cmakeArgs"
else
@@ -135,7 +135,7 @@ build_native()
# set default tvOS simulator deployment target
# keep in sync with SetOSTargetMinVersions in the root Directory.Build.props
- cmakeArgs="-DCMAKE_SYSTEM_NAME=tvOS -DCMAKE_OSX_SYSROOT=appletvsimulator -DCMAKE_OSX_DEPLOYMENT_TARGET=11.0 $cmakeArgs"
+ cmakeArgs="-DCMAKE_SYSTEM_NAME=tvOS -DCMAKE_OSX_SYSROOT=appletvsimulator -DCMAKE_OSX_DEPLOYMENT_TARGET=12.2 $cmakeArgs"
if [[ "$__TargetArch" == x64 ]]; then
cmakeArgs="-DCMAKE_OSX_ARCHITECTURES=\"x86_64\" $cmakeArgs"
elif [[ "$__TargetArch" == arm64 ]]; then
@@ -149,7 +149,7 @@ build_native()
# set default tvOS device deployment target
# keep in sync with SetOSTargetMinVersions in the root Directory.Build.props
- cmakeArgs="-DCMAKE_SYSTEM_NAME=tvOS -DCMAKE_OSX_SYSROOT=appletvos -DCMAKE_OSX_DEPLOYMENT_TARGET=11.0 $cmakeArgs"
+ cmakeArgs="-DCMAKE_SYSTEM_NAME=tvOS -DCMAKE_OSX_SYSROOT=appletvos -DCMAKE_OSX_DEPLOYMENT_TARGET=12.2 $cmakeArgs"
if [[ "$__TargetArch" == arm64 ]]; then
cmakeArgs="-DCMAKE_OSX_ARCHITECTURES=\"arm64\" $cmakeArgs"
else
diff --git a/eng/native/configurecompiler.cmake b/eng/native/configurecompiler.cmake
index bdf370fdf966b6..4675a8b07cb6b4 100644
--- a/eng/native/configurecompiler.cmake
+++ b/eng/native/configurecompiler.cmake
@@ -14,6 +14,7 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON)
include(CheckCCompilerFlag)
include(CheckCXXCompilerFlag)
+include(CheckLinkerFlag)
# "configureoptimization.cmake" must be included after CLR_CMAKE_HOST_UNIX has been set.
include(${CMAKE_CURRENT_LIST_DIR}/configureoptimization.cmake)
@@ -300,7 +301,13 @@ elseif(CLR_CMAKE_HOST_SUNOS)
add_definitions(-D__EXTENSIONS__ -D_XPG4_2 -D_POSIX_PTHREAD_SEMANTICS)
elseif(CLR_CMAKE_HOST_OSX AND NOT CLR_CMAKE_HOST_MACCATALYST AND NOT CLR_CMAKE_HOST_IOS AND NOT CLR_CMAKE_HOST_TVOS)
add_definitions(-D_XOPEN_SOURCE)
- add_linker_flag("-Wl,-bind_at_load")
+
+ # the new linker in Xcode 15 (ld_new/ld_prime) deprecated the -bind_at_load flag for macOS which causes a warning
+ # that fails the build since we build with -Werror. Only pass the flag if we need it, i.e. older linkers.
+ check_linker_flag(C "-Wl,-bind_at_load,-fatal_warnings" LINKER_SUPPORTS_BIND_AT_LOAD_FLAG)
+ if(LINKER_SUPPORTS_BIND_AT_LOAD_FLAG)
+ add_linker_flag("-Wl,-bind_at_load")
+ endif()
elseif(CLR_CMAKE_HOST_HAIKU)
add_compile_options($<$:-Wa,--noexecstack>)
add_linker_flag("-Wl,--no-undefined")
@@ -662,11 +669,11 @@ if (CLR_CMAKE_HOST_UNIX)
set(DISABLE_OVERRIDING_MIN_VERSION_ERROR -Wno-overriding-t-option)
add_link_options(-Wno-overriding-t-option)
if(CLR_CMAKE_HOST_ARCH_ARM64)
- set(MACOS_VERSION_MIN_FLAGS "-target arm64-apple-ios14.2-macabi")
- add_link_options(-target arm64-apple-ios14.2-macabi)
+ set(MACOS_VERSION_MIN_FLAGS "-target arm64-apple-ios15.0-macabi")
+ add_link_options(-target arm64-apple-ios15.0-macabi)
elseif(CLR_CMAKE_HOST_ARCH_AMD64)
- set(MACOS_VERSION_MIN_FLAGS "-target x86_64-apple-ios13.5-macabi")
- add_link_options(-target x86_64-apple-ios13.5-macabi)
+ set(MACOS_VERSION_MIN_FLAGS "-target x86_64-apple-ios15.0-macabi")
+ add_link_options(-target x86_64-apple-ios15.0-macabi)
else()
clr_unknown_arch()
endif()
@@ -679,11 +686,10 @@ if (CLR_CMAKE_HOST_UNIX)
set(CMAKE_OBJC_FLAGS "${CMAKE_OBJC_FLAGS} ${MACOS_VERSION_MIN_FLAGS} ${DISABLE_OVERRIDING_MIN_VERSION_ERROR}")
set(CMAKE_OBJCXX_FLAGS "${CMAKE_OBJCXX_FLAGS} ${MACOS_VERSION_MIN_FLAGS} ${DISABLE_OVERRIDING_MIN_VERSION_ERROR}")
elseif(CLR_CMAKE_HOST_OSX)
+ set(CMAKE_OSX_DEPLOYMENT_TARGET "12.0")
if(CLR_CMAKE_HOST_ARCH_ARM64)
- set(CMAKE_OSX_DEPLOYMENT_TARGET "11.0")
add_compile_options(-arch arm64)
elseif(CLR_CMAKE_HOST_ARCH_AMD64)
- set(CMAKE_OSX_DEPLOYMENT_TARGET "10.15")
add_compile_options(-arch x86_64)
else()
clr_unknown_arch()
diff --git a/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.Unix.targets b/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.Unix.targets
index c9314487b0507d..7441f7da0f6249 100644
--- a/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.Unix.targets
+++ b/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.Unix.targets
@@ -74,9 +74,8 @@ The .NET Foundation licenses this file to you under the MIT license.
- 13.5
- 14.2
- 11.0
+ 15.0
+ 12.2
<_AppleSdkName Condition="'$(_targetOS)' == 'ios'">iphoneos
<_AppleSdkName Condition="'$(_targetOS)' == 'iossimulator'">iphonesimulator
@@ -96,7 +95,7 @@ The .NET Foundation licenses this file to you under the MIT license.
- 11.0
+ 12.0
x86_64-apple-macos$(AppleMinOSVersion)
arm64-apple-macos$(AppleMinOSVersion)
diff --git a/src/coreclr/tools/aot/ILCompiler.Compiler/Compiler/ObjectWriter/MachObjectWriter.cs b/src/coreclr/tools/aot/ILCompiler.Compiler/Compiler/ObjectWriter/MachObjectWriter.cs
index 86ac433262f990..e65f7c889dd19a 100644
--- a/src/coreclr/tools/aot/ILCompiler.Compiler/Compiler/ObjectWriter/MachObjectWriter.cs
+++ b/src/coreclr/tools/aot/ILCompiler.Compiler/Compiler/ObjectWriter/MachObjectWriter.cs
@@ -244,16 +244,12 @@ private protected override void EmitObjectFile(string objectFilePath)
{
case TargetOS.OSX:
buildVersion.Platform = PLATFORM_MACOS;
- buildVersion.MinimumPlatformVersion = 0x0A_0C_00; // 10.12.0
+ buildVersion.MinimumPlatformVersion = 0x0C_00_00; // 12.0.0
break;
case TargetOS.MacCatalyst:
buildVersion.Platform = PLATFORM_MACCATALYST;
- buildVersion.MinimumPlatformVersion = _cpuType switch
- {
- CPU_TYPE_X86_64 => 0x0D_05_00u, // 13.5.0
- _ => 0x0E_02_00u, // 14.2.0
- };
+ buildVersion.MinimumPlatformVersion = 0x0F_02_00; // 15.0.0
break;
case TargetOS.iOS:
@@ -268,7 +264,7 @@ private protected override void EmitObjectFile(string objectFilePath)
TargetOS.tvOSSimulator => PLATFORM_TVOSSIMULATOR,
_ => 0,
};
- buildVersion.MinimumPlatformVersion = 0x0B_00_00; // 11.0.0
+ buildVersion.MinimumPlatformVersion = 0x0C_02_00; // 12.2.0
break;
}
buildVersion.Write(outputFileStream);
diff --git a/src/installer/pkg/sfx/bundle/shared-framework-distribution-template-arm64.xml b/src/installer/pkg/sfx/bundle/shared-framework-distribution-template-arm64.xml
index 1b0dca06e4095d..2d501b30731695 100644
--- a/src/installer/pkg/sfx/bundle/shared-framework-distribution-template-arm64.xml
+++ b/src/installer/pkg/sfx/bundle/shared-framework-distribution-template-arm64.xml
@@ -7,7 +7,7 @@
-
+
diff --git a/src/installer/pkg/sfx/bundle/shared-framework-distribution-template-x64.xml b/src/installer/pkg/sfx/bundle/shared-framework-distribution-template-x64.xml
index 419795e0f348fe..538f475d5d5836 100644
--- a/src/installer/pkg/sfx/bundle/shared-framework-distribution-template-x64.xml
+++ b/src/installer/pkg/sfx/bundle/shared-framework-distribution-template-x64.xml
@@ -7,7 +7,7 @@
-
+
diff --git a/src/libraries/System.Runtime.InteropServices/tests/TestAssets/NativeExports/NativeExports.csproj b/src/libraries/System.Runtime.InteropServices/tests/TestAssets/NativeExports/NativeExports.csproj
index 3daf1f99fe8b06..ad5bd11ee41cc2 100644
--- a/src/libraries/System.Runtime.InteropServices/tests/TestAssets/NativeExports/NativeExports.csproj
+++ b/src/libraries/System.Runtime.InteropServices/tests/TestAssets/NativeExports/NativeExports.csproj
@@ -91,12 +91,12 @@
- arm64-apple-ios14.2-macabi
- x86_64-apple-ios13.5-macabi
+ arm64-apple-ios$(MacCatalystVersionMin)-macabi
+ x86_64-apple-ios$(MacCatalystVersionMin)-macabi
- arm64-apple-macos11
- x86_64-apple-macos10.15
+ arm64-apple-macos$(macOSVersionMin)
+ x86_64-apple-macos$(macOSVersionMin)
macosx
diff --git a/src/libraries/System.Security.Cryptography/src/System/Security/Cryptography/AesGcm.macOS.cs b/src/libraries/System.Security.Cryptography/src/System/Security/Cryptography/AesGcm.macOS.cs
index 3b528f496f4d91..d9f036f61ca5d7 100644
--- a/src/libraries/System.Security.Cryptography/src/System/Security/Cryptography/AesGcm.macOS.cs
+++ b/src/libraries/System.Security.Cryptography/src/System/Security/Cryptography/AesGcm.macOS.cs
@@ -11,7 +11,7 @@ public sealed partial class AesGcm
{
private FixedMemoryKeyBox _keyBox;
- // CryptoKit added AES.GCM in macOS 10.15, which is our minimum target for macOS.
+ // CryptoKit added AES.GCM in macOS 10.15, which is lower than our minimum target for macOS.
public static bool IsSupported => true;
// CryptoKit only supports 16 byte tags.
diff --git a/src/libraries/System.Security.Cryptography/src/System/Security/Cryptography/ChaCha20Poly1305.macOS.cs b/src/libraries/System.Security.Cryptography/src/System/Security/Cryptography/ChaCha20Poly1305.macOS.cs
index aa2cba5f234ba7..7e45061f971a6e 100644
--- a/src/libraries/System.Security.Cryptography/src/System/Security/Cryptography/ChaCha20Poly1305.macOS.cs
+++ b/src/libraries/System.Security.Cryptography/src/System/Security/Cryptography/ChaCha20Poly1305.macOS.cs
@@ -8,7 +8,7 @@ namespace System.Security.Cryptography
{
public sealed partial class ChaCha20Poly1305
{
- // CryptoKit added ChaCha20Poly1305 in macOS 10.15, which is our minimum target for macOS.
+ // CryptoKit added ChaCha20Poly1305 in macOS 10.15, which is lower than our minimum target for macOS.
public static bool IsSupported => true;
private FixedMemoryKeyBox _keyBox;
diff --git a/src/libraries/System.Security.Cryptography/tests/ChaCha20Poly1305Tests.cs b/src/libraries/System.Security.Cryptography/tests/ChaCha20Poly1305Tests.cs
index ced6edcf350951..00ae5286b25a92 100644
--- a/src/libraries/System.Security.Cryptography/tests/ChaCha20Poly1305Tests.cs
+++ b/src/libraries/System.Security.Cryptography/tests/ChaCha20Poly1305Tests.cs
@@ -475,7 +475,7 @@ public static void CheckIsSupported()
}
else if (PlatformDetection.IsOSX)
{
- // CryptoKit is supported on macOS 10.15+, which is our minimum target.
+ // CryptoKit is supported on macOS 10.15+, which is lower than our minimum target.
expectedIsSupported = true;
}
else if (PlatformDetection.OpenSslPresentOnSystem && PlatformDetection.IsOpenSslSupported)
diff --git a/src/mono/mono.proj b/src/mono/mono.proj
index 8b57badb1a2e38..47eeb0937a88fa 100644
--- a/src/mono/mono.proj
+++ b/src/mono/mono.proj
@@ -401,11 +401,11 @@
<_MonoCMakeArgs Include="-DCMAKE_SYSTEM_VARIANT=maccatalyst" />
<_MonoCPPFLAGS Include="-Wno-overriding-t-option" />
- <_MonoCFlags Condition="'$(TargetArchitecture)' == 'arm64'" Include="-target arm64-apple-ios14.2-macabi" />
- <_MonoCFlags Condition="'$(TargetArchitecture)' == 'x64'" Include="-target x86_64-apple-ios13.5-macabi" />
+ <_MonoCFlags Condition="'$(TargetArchitecture)' == 'arm64'" Include="-target arm64-apple-ios$(MacCatalystVersionMin)-macabi" />
+ <_MonoCFlags Condition="'$(TargetArchitecture)' == 'x64'" Include="-target x86_64-apple-ios$(MacCatalystVersionMin)-macabi" />
<_MonoCFLAGS Condition="'$(TargetArchitecture)' == 'arm64'" Include="-arch arm64" />
- <_MonoCXXFlags Condition="'$(TargetArchitecture)' == 'arm64'" Include="-target arm64-apple-ios14.2-macabi" />
- <_MonoCXXFlags Condition="'$(TargetArchitecture)' == 'x64'" Include="-target x86_64-apple-ios13.5-macabi" />
+ <_MonoCXXFlags Condition="'$(TargetArchitecture)' == 'arm64'" Include="-target arm64-apple-ios$(MacCatalystVersionMin)-macabi" />
+ <_MonoCXXFlags Condition="'$(TargetArchitecture)' == 'x64'" Include="-target x86_64-apple-ios$(MacCatalystVersionMin)-macabi" />
<_MonoCXXFLAGS Condition="'$(TargetArchitecture)' == 'arm64'" Include="-arch arm64" />
<_MonoBuildEnv Condition="'$(BuildArchitecture)' == 'arm64'" Include="arch -arch arm64" />
diff --git a/src/mono/mono/tools/offsets-tool/offsets-tool.py b/src/mono/mono/tools/offsets-tool/offsets-tool.py
index ad450989afed50..058d27373d28dc 100644
--- a/src/mono/mono/tools/offsets-tool/offsets-tool.py
+++ b/src/mono/mono/tools/offsets-tool/offsets-tool.py
@@ -159,13 +159,13 @@ def require_emscipten_path (args):
elif "x86_64-apple-maccatalyst" == args.abi:
require_sysroot (args)
self.target = Target ("TARGET_AMD64", "TARGET_MACCAT", IOS_DEFINES)
- self.target_args += ["-target", "x86_64-apple-ios13.5-macabi"]
+ self.target_args += ["-target", "x86_64-apple-ios15.0-macabi"]
self.target_args += ["-isysroot", args.sysroot]
elif "aarch64-apple-maccatalyst" == args.abi:
require_sysroot (args)
self.target = Target ("TARGET_ARM64", "TARGET_MACCAT", IOS_DEFINES)
- self.target_args += ["-target", "arm64-apple-ios14.2-macabi"]
+ self.target_args += ["-target", "arm64-apple-ios15.0-macabi"]
self.target_args += ["-isysroot", args.sysroot]
# watchOS
diff --git a/src/mono/msbuild/apple/build/AppleBuild.targets b/src/mono/msbuild/apple/build/AppleBuild.targets
index 914351a5cee4da..35d0f16c35b4b8 100644
--- a/src/mono/msbuild/apple/build/AppleBuild.targets
+++ b/src/mono/msbuild/apple/build/AppleBuild.targets
@@ -159,9 +159,9 @@
-
+
-
+
diff --git a/src/native/libs/System.Security.Cryptography.Native.Apple/pal_signverify.c b/src/native/libs/System.Security.Cryptography.Native.Apple/pal_signverify.c
index 6e7c77e9d7d070..37f61c7b1215ad 100644
--- a/src/native/libs/System.Security.Cryptography.Native.Apple/pal_signverify.c
+++ b/src/native/libs/System.Security.Cryptography.Native.Apple/pal_signverify.c
@@ -16,7 +16,10 @@ static int32_t ExecuteSignTransform(SecTransformRef signer, CFDataRef* pSignatur
assert(pErrorOut != NULL);
int32_t ret = INT_MIN;
+#pragma clang diagnostic push
+#pragma clang diagnostic ignored "-Wdeprecated-declarations"
CFTypeRef signerResponse = SecTransformExecute(signer, pErrorOut);
+#pragma clang diagnostic pop
CFDataRef signature = NULL;
if (signerResponse == NULL || *pErrorOut != NULL)
@@ -62,7 +65,10 @@ static int32_t ExecuteVerifyTransform(SecTransformRef verifier, CFErrorRef* pErr
assert(pErrorOut != NULL);
int32_t ret = kErrorSeeError;
+#pragma clang diagnostic push
+#pragma clang diagnostic ignored "-Wdeprecated-declarations"
CFTypeRef verifierResponse = SecTransformExecute(verifier, pErrorOut);
+#pragma clang diagnostic pop
if (verifierResponse != NULL)
{
@@ -79,6 +85,8 @@ static int32_t ExecuteVerifyTransform(SecTransformRef verifier, CFErrorRef* pErr
static int32_t ConfigureSignVerifyTransform(SecTransformRef xform, CFDataRef cfDataHash, CFErrorRef* pErrorOut)
{
+#pragma clang diagnostic push
+#pragma clang diagnostic ignored "-Wdeprecated-declarations"
if (!SecTransformSetAttribute(xform, kSecInputIsAttributeName, kSecInputIsDigest, pErrorOut))
{
return 0;
@@ -88,6 +96,7 @@ static int32_t ConfigureSignVerifyTransform(SecTransformRef xform, CFDataRef cfD
{
return 0;
}
+#pragma clang diagnostic pop
return 1;
}
diff --git a/src/native/libs/System.Security.Cryptography.Native.Apple/pal_ssl.c b/src/native/libs/System.Security.Cryptography.Native.Apple/pal_ssl.c
index d37f08ed14e2ec..9b44cbbef8e093 100644
--- a/src/native/libs/System.Security.Cryptography.Native.Apple/pal_ssl.c
+++ b/src/native/libs/System.Security.Cryptography.Native.Apple/pal_ssl.c
@@ -463,7 +463,11 @@ int32_t AppleCryptoNative_SslIsHostnameMatch(SSLContextRef sslContext, CFStringR
for (CFIndex i = 0; i < certificateCount; i++)
{
+#pragma clang diagnostic push
+#pragma clang diagnostic ignored "-Wdeprecated-declarations"
SecCertificateRef item = SecTrustGetCertificateAtIndex(existingTrust, i);
+#pragma clang diagnostic pop
+
CFArrayAppendValue(certs, item);
// Copy the EE cert into the anchors set, this will make the chain part
diff --git a/src/native/libs/System.Security.Cryptography.Native.Apple/pal_x509.c b/src/native/libs/System.Security.Cryptography.Native.Apple/pal_x509.c
index 94e22f28c8794a..39b8e4619912b3 100644
--- a/src/native/libs/System.Security.Cryptography.Native.Apple/pal_x509.c
+++ b/src/native/libs/System.Security.Cryptography.Native.Apple/pal_x509.c
@@ -43,16 +43,7 @@ AppleCryptoNative_X509GetPublicKey(SecCertificateRef cert, SecKeyRef* pPublicKey
if (cert == NULL || pPublicKeyOut == NULL)
return kErrorUnknownState;
- if (__builtin_available(macOS 10.14, iOS 12, tvOS 12, *))
- {
- *pPublicKeyOut = SecCertificateCopyKey(cert);
- }
-#if defined(TARGET_IOS) || defined(TARGET_TVOS)
- else
- {
- *pPublicKeyOut = SecCertificateCopyPublicKey(cert);
- }
-#endif
+ *pPublicKeyOut = SecCertificateCopyKey(cert);
return 1;
}
diff --git a/src/native/libs/System.Security.Cryptography.Native.Apple/pal_x509chain.c b/src/native/libs/System.Security.Cryptography.Native.Apple/pal_x509chain.c
index 152ed890ed6eda..de1a84f26798d4 100644
--- a/src/native/libs/System.Security.Cryptography.Native.Apple/pal_x509chain.c
+++ b/src/native/libs/System.Security.Cryptography.Native.Apple/pal_x509chain.c
@@ -92,7 +92,10 @@ SecCertificateRef AppleCryptoNative_X509ChainGetCertificateAtIndex(SecTrustRef c
if (chain == NULL || index < 0)
return NULL;
+#pragma clang diagnostic push
+#pragma clang diagnostic ignored "-Wdeprecated-declarations"
return SecTrustGetCertificateAtIndex(chain, index);
+#pragma clang diagnostic pop
}
CFArrayRef AppleCryptoNative_X509ChainGetTrustResults(SecTrustRef chain)
diff --git a/src/native/libs/build-native.sh b/src/native/libs/build-native.sh
index 3e90b3805aaec9..d3fefa7685a974 100755
--- a/src/native/libs/build-native.sh
+++ b/src/native/libs/build-native.sh
@@ -105,7 +105,7 @@ elif [[ "$__TargetOS" == linux-bionic && -z "$ROOTFS_DIR" ]]; then
elif [[ "$__TargetOS" == iossimulator ]]; then
# set default iOS simulator deployment target
# keep in sync with SetOSTargetMinVersions in the root Directory.Build.props
- __CMakeArgs="-DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_SYSROOT=iphonesimulator -DCMAKE_OSX_DEPLOYMENT_TARGET=11.0 $__CMakeArgs"
+ __CMakeArgs="-DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_SYSROOT=iphonesimulator -DCMAKE_OSX_DEPLOYMENT_TARGET=12.2 $__CMakeArgs"
if [[ "$__TargetArch" == x64 ]]; then
__CMakeArgs="-DCMAKE_OSX_ARCHITECTURES=\"x86_64\" $__CMakeArgs"
elif [[ "$__TargetArch" == x86 ]]; then
@@ -119,7 +119,7 @@ elif [[ "$__TargetOS" == iossimulator ]]; then
elif [[ "$__TargetOS" == ios ]]; then
# set default iOS device deployment target
# keep in sync with SetOSTargetMinVersions in the root Directory.Build.props
- __CMakeArgs="-DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_SYSROOT=iphoneos -DCMAKE_OSX_DEPLOYMENT_TARGET=11.0 $__CMakeArgs"
+ __CMakeArgs="-DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_SYSROOT=iphoneos -DCMAKE_OSX_DEPLOYMENT_TARGET=12.2 $__CMakeArgs"
if [[ "$__TargetArch" == arm64 ]]; then
__CMakeArgs="-DCMAKE_OSX_ARCHITECTURES=\"arm64\" $__CMakeArgs"
elif [[ "$__TargetArch" == arm ]]; then
@@ -131,7 +131,7 @@ elif [[ "$__TargetOS" == ios ]]; then
elif [[ "$__TargetOS" == tvossimulator ]]; then
# set default tvOS simulator deployment target
# keep in sync with SetOSTargetMinVersions in the root Directory.Build.props
- __CMakeArgs="-DCMAKE_SYSTEM_NAME=tvOS -DCMAKE_OSX_SYSROOT=appletvsimulator -DCMAKE_OSX_DEPLOYMENT_TARGET=11.0 $__CMakeArgs"
+ __CMakeArgs="-DCMAKE_SYSTEM_NAME=tvOS -DCMAKE_OSX_SYSROOT=appletvsimulator -DCMAKE_OSX_DEPLOYMENT_TARGET=12.2 $__CMakeArgs"
if [[ "$__TargetArch" == x64 ]]; then
__CMakeArgs="-DCMAKE_OSX_ARCHITECTURES=\"x86_64\" $__CMakeArgs"
elif [[ "$__TargetArch" == arm64 ]]; then
@@ -143,7 +143,7 @@ elif [[ "$__TargetOS" == tvossimulator ]]; then
elif [[ "$__TargetOS" == tvos ]]; then
# set default tvOS device deployment target
# keep in sync with the root Directory.Build.props
- __CMakeArgs="-DCMAKE_SYSTEM_NAME=tvOS -DCMAKE_OSX_SYSROOT=appletvos -DCMAKE_OSX_DEPLOYMENT_TARGET=11.0 $__CMakeArgs"
+ __CMakeArgs="-DCMAKE_SYSTEM_NAME=tvOS -DCMAKE_OSX_SYSROOT=appletvos -DCMAKE_OSX_DEPLOYMENT_TARGET=12.2 $__CMakeArgs"
if [[ "$__TargetArch" == arm64 ]]; then
__CMakeArgs="-DCMAKE_OSX_ARCHITECTURES=\"arm64\" $__CMakeArgs"
else
diff --git a/src/tasks/AotCompilerTask/MonoAOTCompiler.props b/src/tasks/AotCompilerTask/MonoAOTCompiler.props
index 1c7bc065d2a475..1fc8e8f41adf50 100644
--- a/src/tasks/AotCompilerTask/MonoAOTCompiler.props
+++ b/src/tasks/AotCompilerTask/MonoAOTCompiler.props
@@ -1,9 +1,9 @@
-
+
-
+
diff --git a/src/tasks/AppleAppBuilder/Xcode.cs b/src/tasks/AppleAppBuilder/Xcode.cs
index a9bf648f8129a3..aed4bf7dfaeba3 100644
--- a/src/tasks/AppleAppBuilder/Xcode.cs
+++ b/src/tasks/AppleAppBuilder/Xcode.cs
@@ -218,15 +218,24 @@ public void CreateXcodeProject(string projectName, string cmakeDirectoryPath)
targetName = Target.ToString();
break;
}
- var deployTarget = (Target == TargetNames.MacCatalyst) ? " -DCMAKE_OSX_ARCHITECTURES=" + XcodeArch : " -DCMAKE_OSX_DEPLOYMENT_TARGET=11.0";
var cmakeArgs = new StringBuilder();
cmakeArgs
.Append("-S.")
.Append(" -B").Append(projectName)
.Append(" -GXcode")
.Append(" -DTARGETS_APPLE_MOBILE=1")
- .Append(" -DCMAKE_SYSTEM_NAME=").Append(targetName)
- .Append(deployTarget);
+ .Append(" -DCMAKE_SYSTEM_NAME=").Append(targetName);
+
+ if (Target == TargetNames.MacCatalyst)
+ {
+ // min deploy target version is passed later when invoking xcodebuild
+ cmakeArgs.Append(" -DCMAKE_OSX_ARCHITECTURES=" + XcodeArch);
+ }
+ else
+ {
+ // arch is passed later when invoking xcodebuild
+ cmakeArgs.Append(" -DCMAKE_OSX_DEPLOYMENT_TARGET=12.2");
+ }
Utils.RunProcess(Logger, "cmake", cmakeArgs.ToString(), workingDir: cmakeDirectoryPath);
}
@@ -608,7 +617,7 @@ public string BuildAppBundle(
.Append(" -UseModernBuildSystem=YES")
.Append(" -archivePath \"").Append(Path.GetDirectoryName(xcodePrjPath)).Append('"')
.Append(" -derivedDataPath \"").Append(Path.GetDirectoryName(xcodePrjPath)).Append('"')
- .Append(" IPHONEOS_DEPLOYMENT_TARGET=14.2");
+ .Append(" IPHONEOS_DEPLOYMENT_TARGET=15.0");
break;
}
}
@@ -633,7 +642,7 @@ public string BuildAppBundle(
.Append(" -UseModernBuildSystem=YES")
.Append(" -archivePath \"").Append(Path.GetDirectoryName(xcodePrjPath)).Append('"')
.Append(" -derivedDataPath \"").Append(Path.GetDirectoryName(xcodePrjPath)).Append('"')
- .Append(" IPHONEOS_DEPLOYMENT_TARGET=13.5");
+ .Append(" IPHONEOS_DEPLOYMENT_TARGET=15.0");
break;
}
}
diff --git a/src/tasks/MobileBuildTasks/Apple/AppleProject.cs b/src/tasks/MobileBuildTasks/Apple/AppleProject.cs
index f7927fa2bb5a81..6a0f61c1968c41 100644
--- a/src/tasks/MobileBuildTasks/Apple/AppleProject.cs
+++ b/src/tasks/MobileBuildTasks/Apple/AppleProject.cs
@@ -27,7 +27,7 @@ public AppleProject(string projectName, string runtimeIdentifier, TaskLoggingHel
{
GetTargets(runtimeIdentifier, out targetOS, out targetArchitecture);
- defaultMinOSVersion = (targetOS == "maccatalyst") ? "13.1" : "11.0";
+ defaultMinOSVersion = (targetOS == "maccatalyst") ? "15.0" : "12.2";
targetAbi = DetermineAbi(targetArchitecture);
AppleSdk sdk = new AppleSdk(targetOS, logger);