mirror of
https://github.com/VSadov/Satori.git
synced 2025-06-09 17:44:48 +09:00
Enable tests for MacCatalyst x64 (#51139)
This commit is contained in:
parent
f3e9e9197a
commit
26000448d2
25 changed files with 156 additions and 57 deletions
|
@ -22,9 +22,11 @@ if [ "$1" = "Linux" ]; then
|
|||
if [ "$?" != "0" ]; then
|
||||
exit 1;
|
||||
fi
|
||||
elif [ "$1" = "OSX" ] || [ "$1" = "tvOS" ] || [ "$1" = "iOS" ]; then
|
||||
elif [ "$1" = "MacCatalyst" ] || [ "$1" = "OSX" ] || [ "$1" = "tvOS" ] || [ "$1" = "iOS" ]; then
|
||||
engdir=$(dirname "${BASH_SOURCE[0]}")
|
||||
|
||||
echo "Installed xcode version: `xcode-select -p`"
|
||||
|
||||
if [ "$3" = "azDO" ]; then
|
||||
# workaround for old osx images on hosted agents
|
||||
# piped in case we get an agent without these values installed
|
||||
|
|
|
@ -91,7 +91,7 @@ build_native()
|
|||
fi
|
||||
|
||||
if [[ "$targetOS" == MacCatalyst ]]; then
|
||||
cmakeArgs="-DCLR_CMAKE_TARGET_MACCATALYST=1 $cmakeArgs"
|
||||
cmakeArgs="-DCMAKE_SYSTEM_VARIANT=MacCatalyst $cmakeArgs"
|
||||
fi
|
||||
|
||||
if [[ "$__UseNinja" == 1 ]]; then
|
||||
|
|
|
@ -187,7 +187,7 @@ elseif(CLR_CMAKE_HOST_SUNOS)
|
|||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fstack-protector")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fstack-protector")
|
||||
add_definitions(-D__EXTENSIONS__)
|
||||
elseif(CLR_CMAKE_HOST_OSX)
|
||||
elseif(CLR_CMAKE_HOST_OSX OR CLR_CMAKE_HOST_MACCATALYST)
|
||||
add_definitions(-D_XOPEN_SOURCE)
|
||||
endif()
|
||||
|
||||
|
@ -231,7 +231,7 @@ endif(CLR_CMAKE_HOST_UNIX)
|
|||
if (CLR_CMAKE_HOST_UNIX)
|
||||
add_definitions(-DHOST_UNIX)
|
||||
|
||||
if(CLR_CMAKE_HOST_OSX)
|
||||
if(CLR_CMAKE_HOST_OSX OR CLR_CMAKE_HOST_MACCATALYST)
|
||||
add_definitions(-DHOST_OSX)
|
||||
if(CLR_CMAKE_HOST_UNIX_AMD64)
|
||||
message("Detected OSX x86_64")
|
||||
|
@ -246,7 +246,7 @@ if (CLR_CMAKE_HOST_UNIX)
|
|||
message("Detected NetBSD amd64")
|
||||
elseif(CLR_CMAKE_HOST_SUNOS)
|
||||
message("Detected SunOS amd64")
|
||||
endif(CLR_CMAKE_HOST_OSX)
|
||||
endif(CLR_CMAKE_HOST_OSX OR CLR_CMAKE_HOST_MACCATALYST)
|
||||
endif(CLR_CMAKE_HOST_UNIX)
|
||||
|
||||
if (CLR_CMAKE_HOST_WIN32)
|
||||
|
@ -297,7 +297,7 @@ if (CLR_CMAKE_HOST_UNIX)
|
|||
# using twos-complement representation (this is normally undefined according to the C++ spec).
|
||||
add_compile_options(-fwrapv)
|
||||
|
||||
if(CLR_CMAKE_HOST_OSX)
|
||||
if(CLR_CMAKE_HOST_OSX OR CLR_CMAKE_HOST_MACCATALYST)
|
||||
# We cannot enable "stack-protector-strong" on OS X due to a bug in clang compiler (current version 7.0.2)
|
||||
add_compile_options(-fstack-protector)
|
||||
else()
|
||||
|
@ -305,7 +305,7 @@ if (CLR_CMAKE_HOST_UNIX)
|
|||
if (COMPILER_SUPPORTS_F_STACK_PROTECTOR_STRONG)
|
||||
add_compile_options(-fstack-protector-strong)
|
||||
endif()
|
||||
endif(CLR_CMAKE_HOST_OSX)
|
||||
endif(CLR_CMAKE_HOST_OSX OR CLR_CMAKE_HOST_MACCATALYST)
|
||||
|
||||
# Suppress warnings-as-errors in release branches to reduce servicing churn
|
||||
if (PRERELEASE)
|
||||
|
@ -373,7 +373,7 @@ if (CLR_CMAKE_HOST_UNIX)
|
|||
add_compile_options(-fvisibility=hidden)
|
||||
|
||||
# Specify the minimum supported version of macOS
|
||||
if(CLR_CMAKE_HOST_OSX)
|
||||
if(CLR_CMAKE_HOST_OSX OR CLR_CMAKE_HOST_MACCATALYST)
|
||||
# Mac Catalyst needs a special CFLAG, exclusive with mmacosx-version-min
|
||||
if(CLR_CMAKE_TARGET_MACCATALYST)
|
||||
# Somewhere between CMake 3.17 and 3.19.4, it became impossible to not pass
|
||||
|
@ -406,7 +406,7 @@ if (CLR_CMAKE_HOST_UNIX)
|
|||
add_compile_options(${MACOS_VERSION_MIN_FLAGS})
|
||||
add_linker_flag(${MACOS_VERSION_MIN_FLAGS})
|
||||
endif(CLR_CMAKE_TARGET_MACCATALYST)
|
||||
endif(CLR_CMAKE_HOST_OSX)
|
||||
endif(CLR_CMAKE_HOST_OSX OR CLR_CMAKE_HOST_MACCATALYST)
|
||||
|
||||
endif(CLR_CMAKE_HOST_UNIX)
|
||||
|
||||
|
@ -414,7 +414,7 @@ if(CLR_CMAKE_TARGET_UNIX)
|
|||
add_compile_definitions($<$<NOT:$<BOOL:$<TARGET_PROPERTY:IGNORE_DEFAULT_TARGET_OS>>>:TARGET_UNIX>)
|
||||
# Contracts are disabled on UNIX.
|
||||
add_definitions(-DDISABLE_CONTRACTS)
|
||||
if(CLR_CMAKE_TARGET_OSX)
|
||||
if(CLR_CMAKE_TARGET_OSX OR CLR_CMAKE_TARGET_MACCATALYST)
|
||||
add_compile_definitions($<$<NOT:$<BOOL:$<TARGET_PROPERTY:IGNORE_DEFAULT_TARGET_OS>>>:TARGET_OSX>)
|
||||
elseif(CLR_CMAKE_TARGET_FREEBSD)
|
||||
add_compile_definitions($<$<NOT:$<BOOL:$<TARGET_PROPERTY:IGNORE_DEFAULT_TARGET_OS>>>:TARGET_FREEBSD>)
|
||||
|
|
|
@ -77,7 +77,13 @@ endif(CLR_CMAKE_HOST_OS STREQUAL Linux)
|
|||
|
||||
if(CLR_CMAKE_HOST_OS STREQUAL Darwin)
|
||||
set(CLR_CMAKE_HOST_UNIX 1)
|
||||
|
||||
if(CMAKE_SYSTEM_VARIANT STREQUAL MacCatalyst)
|
||||
set(CLR_CMAKE_HOST_MACCATALYST 1)
|
||||
else()
|
||||
set(CLR_CMAKE_HOST_OSX 1)
|
||||
endif(CMAKE_SYSTEM_VARIANT STREQUAL MacCatalyst)
|
||||
|
||||
if(CMAKE_OSX_ARCHITECTURES STREQUAL x86_64)
|
||||
set(CLR_CMAKE_HOST_UNIX_AMD64 1)
|
||||
elseif(CMAKE_OSX_ARCHITECTURES STREQUAL arm64)
|
||||
|
@ -297,7 +303,12 @@ endif(CLR_CMAKE_TARGET_OS STREQUAL Android)
|
|||
|
||||
if(CLR_CMAKE_TARGET_OS STREQUAL Darwin)
|
||||
set(CLR_CMAKE_TARGET_UNIX 1)
|
||||
|
||||
if(CMAKE_SYSTEM_VARIANT STREQUAL MacCatalyst)
|
||||
set(CLR_CMAKE_TARGET_MACCATALYST 1)
|
||||
else()
|
||||
set(CLR_CMAKE_TARGET_OSX 1)
|
||||
endif(CMAKE_SYSTEM_VARIANT STREQUAL MacCatalyst)
|
||||
endif(CLR_CMAKE_TARGET_OS STREQUAL Darwin)
|
||||
|
||||
if(CLR_CMAKE_TARGET_OS STREQUAL iOS OR CLR_CMAKE_TARGET_OS STREQUAL iOSSimulator)
|
||||
|
@ -305,11 +316,6 @@ if(CLR_CMAKE_TARGET_OS STREQUAL iOS OR CLR_CMAKE_TARGET_OS STREQUAL iOSSimulator
|
|||
set(CLR_CMAKE_TARGET_IOS 1)
|
||||
endif(CLR_CMAKE_TARGET_OS STREQUAL iOS OR CLR_CMAKE_TARGET_OS STREQUAL iOSSimulator)
|
||||
|
||||
if(CLR_CMAKE_TARGET_OS STREQUAL MacCatalyst)
|
||||
set(CLR_CMAKE_TARGET_UNIX 1)
|
||||
set(CLR_CMAKE_TARGET_MACCATALYST 1)
|
||||
endif(CLR_CMAKE_TARGET_OS STREQUAL MacCatalyst)
|
||||
|
||||
if(CLR_CMAKE_TARGET_OS STREQUAL tvOS OR CLR_CMAKE_TARGET_OS STREQUAL tvOSSimulator)
|
||||
set(CLR_CMAKE_TARGET_UNIX 1)
|
||||
set(CLR_CMAKE_TARGET_TVOS 1)
|
||||
|
@ -387,7 +393,7 @@ endif()
|
|||
|
||||
if(NOT CLR_CMAKE_TARGET_BROWSER)
|
||||
# The default linker on Solaris also does not support PIE.
|
||||
if(NOT CLR_CMAKE_TARGET_ANDROID AND NOT CLR_CMAKE_TARGET_SUNOS AND NOT CLR_CMAKE_TARGET_OSX AND NOT CLR_CMAKE_HOST_TVOS AND NOT CLR_CMAKE_HOST_IOS AND NOT MSVC)
|
||||
if(NOT CLR_CMAKE_TARGET_ANDROID AND NOT CLR_CMAKE_TARGET_SUNOS AND NOT CLR_CMAKE_TARGET_OSX AND NOT CLR_CMAKE_TARGET_MACCATALYST AND NOT CLR_CMAKE_HOST_TVOS AND NOT CLR_CMAKE_HOST_IOS AND NOT MSVC)
|
||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -pie")
|
||||
add_compile_options($<$<STREQUAL:$<TARGET_PROPERTY:TYPE>,EXECUTABLE>:-fPIE>)
|
||||
add_compile_options($<$<STREQUAL:$<TARGET_PROPERTY:TYPE>,SHARED_LIBRARY>:-fPIC>)
|
||||
|
|
|
@ -74,7 +74,7 @@ if (NOT CLR_CMAKE_HOST_WIN32)
|
|||
set(LD_GNU 1)
|
||||
elseif("${ldVersionOutput}" MATCHES "Solaris Link")
|
||||
set(LD_SOLARIS 1)
|
||||
else(CLR_CMAKE_HOST_OSX)
|
||||
else(CLR_CMAKE_HOST_OSX OR CLR_CMAKE_HOST_MACCATALYST)
|
||||
set(LD_OSX 1)
|
||||
endif()
|
||||
endif()
|
||||
|
|
|
@ -114,7 +114,7 @@ jobs:
|
|||
artifact: Mono_Offsets_${{monoCrossAOTTargetOS}}
|
||||
path: '$(Build.SourcesDirectory)/artifacts/obj/mono/offsetfiles'
|
||||
|
||||
- ${{ if in(parameters.osGroup, 'OSX', 'iOS', 'tvOS') }}:
|
||||
- ${{ if in(parameters.osGroup, 'OSX', 'iOS', 'tvOS', 'MacCatalyst') }}:
|
||||
- script: $(Build.SourcesDirectory)/eng/install-native-dependencies.sh ${{ parameters.osGroup }} ${{ parameters.archType }} azDO
|
||||
displayName: Install Build Dependencies
|
||||
|
||||
|
|
|
@ -99,6 +99,14 @@ jobs:
|
|||
- OSX.1014.Amd64.Open
|
||||
- OSX.1015.Amd64.Open
|
||||
|
||||
# Mac Catalyst arm64
|
||||
- ${{ if eq(parameters.platform, 'MacCatalyst_arm64') }}:
|
||||
- OSX.1100.ARM64.Open
|
||||
|
||||
# Mac Catalyst x64
|
||||
- ${{ if eq(parameters.platform, 'MacCatalyst_x64') }}:
|
||||
- OSX.1015.Amd64.Open
|
||||
|
||||
# Android
|
||||
- ${{ if in(parameters.platform, 'Android_x86', 'Android_x64') }}:
|
||||
- Ubuntu.1804.Amd64.Android.Open
|
||||
|
|
|
@ -64,10 +64,50 @@ jobs:
|
|||
buildConfig: Release
|
||||
runtimeFlavor: mono
|
||||
platforms:
|
||||
- Android_x86
|
||||
- Android_x64
|
||||
- iOSSimulator_x64
|
||||
- tvOSSimulator_x64
|
||||
- MacCatalyst_x64
|
||||
variables:
|
||||
# map dependencies variables to local variables
|
||||
- name: librariesContainsChange
|
||||
value: $[ dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'] ]
|
||||
- name: monoContainsChange
|
||||
value: $[ dependencies.evaluate_paths.outputs['SetPathVars_mono.containsChange'] ]
|
||||
jobParameters:
|
||||
testGroup: innerloop
|
||||
nameSuffix: AllSubsets_Mono
|
||||
buildArgs: -s mono+libs+host+packs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true /p:MonoForceInterpreter=true
|
||||
timeoutInMinutes: 180
|
||||
condition: >-
|
||||
or(
|
||||
eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
|
||||
eq(dependencies.evaluate_paths.outputs['SetPathVars_mono.containsChange'], true),
|
||||
eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
|
||||
eq(variables['isFullMatrix'], true))
|
||||
# extra steps, run tests
|
||||
extraStepsTemplate: /eng/pipelines/libraries/helix.yml
|
||||
extraStepsParameters:
|
||||
creator: dotnet-bot
|
||||
interpreter: true
|
||||
testRunNamePrefixSuffix: Mono_$(_BuildConfig)
|
||||
condition: >-
|
||||
or(
|
||||
eq(variables['librariesContainsChange'], true),
|
||||
eq(variables['monoContainsChange'], true),
|
||||
eq(variables['isFullMatrix'], true))
|
||||
|
||||
#
|
||||
# Build the whole product using Mono and run libraries tests
|
||||
#
|
||||
- template: /eng/pipelines/common/platform-matrix.yml
|
||||
parameters:
|
||||
jobTemplate: /eng/pipelines/common/global-build-job.yml
|
||||
helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
|
||||
buildConfig: Release
|
||||
runtimeFlavor: mono
|
||||
platforms:
|
||||
- Android_x86
|
||||
- Android_x64
|
||||
variables:
|
||||
# map dependencies variables to local variables
|
||||
- name: librariesContainsChange
|
||||
|
|
|
@ -144,13 +144,13 @@
|
|||
AssemblyFile="$(AppleAppBuilderTasksAssemblyPath)" />
|
||||
|
||||
<PropertyGroup>
|
||||
<DevTeamProvisioning Condition="'$(TargetOS)' == 'MacCatalyst' and '$(DevTeamProvisioning)' == ''">-</DevTeamProvisioning>
|
||||
<DevTeamProvisioning Condition="'$(TargetOS)' == 'MacCatalyst' and '$(DevTeamProvisioning)' == ''">adhoc</DevTeamProvisioning>
|
||||
</PropertyGroup>
|
||||
|
||||
<Target Condition="'$(TargetOS)' == 'MacCatalyst' or '$(TargetOS)' == 'iOS' or '$(TargetOS)' == 'iOSSimulator' or '$(TargetOS)' == 'tvOS' or '$(TargetOS)' == 'tvOSSimulator'" Name="BundleTestAppleApp">
|
||||
<Error Condition="!Exists('$(MicrosoftNetCoreAppRuntimePackRidDir)')" Text="MicrosoftNetCoreAppRuntimePackRidDir=$(MicrosoftNetCoreAppRuntimePackRidDir) doesn't exist" />
|
||||
<Error Condition="('$(TargetArchitecture)' == 'arm64' or '$(TargetArchitecture)' == 'arm' or '$(TargetOS)' == 'MacCatalyst') and '$(DevTeamProvisioning)' == ''"
|
||||
Text="'DevTeamProvisioning' needs to be set for device builds. Set it to 'UBF8T346G9' if you're part of the Microsoft team account." />
|
||||
Text="'DevTeamProvisioning' needs to be set for device builds. Set it to 'UBF8T346G9' if you're part of the Microsoft team account, or 'adhoc' to sign with an adhoc key.." />
|
||||
<Error Condition="'$(TestArchiveTestsDir)' == ''" Text="TestArchiveTestsDir property to archive the test folder must be set." />
|
||||
|
||||
<WriteLinesToFile File="$(PublishDir)xunit-excludes.txt" Lines="$(XunitExcludesTxtFileContent)" Overwrite="true" />
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<PropertyGroup>
|
||||
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
|
||||
<TestResultsName>testResults.xml</TestResultsName>
|
||||
<UseXunitExcludesTxtFile Condition="'$(TargetOS)' == 'Android' or '$(TargetOS)' == 'iOS' or '$(TargetOS)' == 'iOSSimulator' or '$(TargetOS)' == 'tvOS' or '$(TargetOS)' == 'tvOSSimulator'">true</UseXunitExcludesTxtFile>
|
||||
<UseXunitExcludesTxtFile Condition="'$(TargetOS)' == 'Android' or '$(TargetOS)' == 'iOS' or '$(TargetOS)' == 'iOSSimulator' or '$(TargetOS)' == 'tvOS' or '$(TargetOS)' == 'tvOSSimulator' or '$(TargetOS)' == 'MacCatalyst'">true</UseXunitExcludesTxtFile>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup Condition="'$(TargetsMobile)' != 'true' and '$(TestSingleFile)' != 'true'">
|
||||
|
|
|
@ -54,7 +54,7 @@ namespace System
|
|||
public static bool IsBinaryFormatterSupported => IsNotMobile;
|
||||
|
||||
public static bool IsSpeedOptimized => !IsSizeOptimized;
|
||||
public static bool IsSizeOptimized => IsBrowser || IsAndroid || IsiOS || IstvOS;
|
||||
public static bool IsSizeOptimized => IsBrowser || IsAndroid || IsiOS || IstvOS || IsMacCatalyst;
|
||||
|
||||
public static bool IsBrowserDomSupported => GetIsBrowserDomSupported();
|
||||
public static bool IsNotBrowserDomSupported => !IsBrowserDomSupported;
|
||||
|
|
|
@ -14,7 +14,7 @@ if(CLR_CMAKE_TARGET_UNIX)
|
|||
add_compile_options(-Wno-unknown-warning-option)
|
||||
|
||||
if (NOT CLR_CMAKE_TARGET_ANDROID)
|
||||
if (CLR_CMAKE_TARGET_OSX)
|
||||
if (CLR_CMAKE_TARGET_OSX OR CLR_CMAKE_TARGET_MACCATALYST)
|
||||
execute_process(COMMAND brew --prefix OUTPUT_VARIABLE brew_prefix OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
set(ICU_HOMEBREW_INC_PATH "${brew_prefix}/opt/icu4c/include")
|
||||
endif()
|
||||
|
@ -25,7 +25,7 @@ if(CLR_CMAKE_TARGET_UNIX)
|
|||
return()
|
||||
endif()
|
||||
|
||||
if(CLR_CMAKE_TARGET_OSX)
|
||||
if(CLR_CMAKE_TARGET_OSX OR CLR_CMAKE_TARGET_MACCATALYST)
|
||||
add_definitions(-DOSX_ICU_LIBRARY_PATH="/usr/lib/libicucore.dylib")
|
||||
add_definitions(-DU_DISABLE_RENAMING)
|
||||
else()
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
if(CLR_CMAKE_TARGET_ANDROID OR CLR_CMAKE_TARGET_OSX)
|
||||
if(CLR_CMAKE_TARGET_ANDROID OR CLR_CMAKE_TARGET_OSX OR CLR_CMAKE_TARGET_MACCATALYST)
|
||||
set(HAVE_SET_MAX_VARIABLE 1)
|
||||
set(HAVE_UDAT_STANDALONE_SHORTER_WEEKDAYS 1)
|
||||
else()
|
||||
|
|
|
@ -48,7 +48,7 @@ set(NATIVECRYPTO_SOURCES
|
|||
# Always build portable on macOS because OpenSSL is not a system component
|
||||
# and our prebuilts should not assume a specific ABI version for the types
|
||||
# that use OpenSSL at runtime.
|
||||
if (CLR_CMAKE_TARGET_OSX)
|
||||
if (CLR_CMAKE_TARGET_OSX OR CLR_CMAKE_TARGET_MACCATALYST)
|
||||
set(FEATURE_DISTRO_AGNOSTIC_SSL True)
|
||||
|
||||
# by default uninitialized variables like the shim _ptr functions, will turn into common symbols
|
||||
|
|
|
@ -11,7 +11,7 @@ macro(append_extra_cryptography_libs NativeLibsExtra)
|
|||
endif(NOT OPENSSL_FOUND)
|
||||
|
||||
|
||||
if (FEATURE_DISTRO_AGNOSTIC_SSL OR CLR_CMAKE_TARGET_OSX)
|
||||
if (FEATURE_DISTRO_AGNOSTIC_SSL OR CLR_CMAKE_TARGET_OSX OR CLR_CMAKE_TARGET_MACCATALYST)
|
||||
# Link with libdl.so to get the dlopen / dlsym / dlclose
|
||||
list(APPEND ${NativeLibsExtra} dl)
|
||||
else()
|
||||
|
|
|
@ -10,7 +10,7 @@ namespace System.Globalization.Tests
|
|||
public static class CalendarTests
|
||||
{
|
||||
[Fact]
|
||||
[ActiveIssue("https://github.com/dotnet/runtime/issues/36883", TestPlatforms.iOS | TestPlatforms.tvOS | TestPlatforms.Android)]
|
||||
[ActiveIssue("https://github.com/dotnet/runtime/issues/36883", TestPlatforms.iOS | TestPlatforms.MacCatalyst | TestPlatforms.tvOS | TestPlatforms.Android)]
|
||||
public static void TestJapaneseCalendarDateParsing()
|
||||
{
|
||||
CultureInfo ciJapanese = new CultureInfo("ja-JP") { DateTimeFormat = { Calendar = new JapaneseCalendar() } };
|
||||
|
|
|
@ -69,7 +69,7 @@ namespace System.Xml.Tests
|
|||
}
|
||||
|
||||
[ConditionalFact(typeof(PlatformDetection), nameof(PlatformDetection.IsThreadingSupported))]
|
||||
[ActiveIssue("https://github.com/dotnet/runtime/issues/49187", TestPlatforms.iOS | TestPlatforms.tvOS)]
|
||||
[ActiveIssue("https://github.com/dotnet/runtime/issues/49187", TestPlatforms.iOS | TestPlatforms.MacCatalyst | TestPlatforms.tvOS)]
|
||||
public static void ReadAsyncAfterInitializationWithUriThrows()
|
||||
{
|
||||
using (XmlReader reader = XmlReader.Create("http://test.test/test.html", new XmlReaderSettings() { Async = true }))
|
||||
|
@ -79,7 +79,7 @@ namespace System.Xml.Tests
|
|||
}
|
||||
|
||||
[ConditionalFact(typeof(PlatformDetection), nameof(PlatformDetection.IsThreadingSupported))]
|
||||
[ActiveIssue("https://github.com/dotnet/runtime/issues/49187", TestPlatforms.iOS | TestPlatforms.tvOS)]
|
||||
[ActiveIssue("https://github.com/dotnet/runtime/issues/49187", TestPlatforms.iOS | TestPlatforms.MacCatalyst | TestPlatforms.tvOS)]
|
||||
public static void ReadAfterInitializationWithUriOnAsyncReaderTrows()
|
||||
{
|
||||
using (XmlReader reader = XmlReader.Create("http://test.test/test.html", new XmlReaderSettings() { Async = true }))
|
||||
|
@ -89,7 +89,7 @@ namespace System.Xml.Tests
|
|||
}
|
||||
|
||||
[ConditionalFact(typeof(PlatformDetection), nameof(PlatformDetection.IsNotWindowsSubsystemForLinux), nameof(PlatformDetection.IsThreadingSupported))] // [ActiveIssue("https://github.com/dotnet/runtime/issues/18258")]
|
||||
[ActiveIssue("https://github.com/dotnet/runtime/issues/49187", TestPlatforms.iOS | TestPlatforms.tvOS)]
|
||||
[ActiveIssue("https://github.com/dotnet/runtime/issues/49187", TestPlatforms.iOS | TestPlatforms.MacCatalyst | TestPlatforms.tvOS)]
|
||||
public static void InitializationWithUriOnNonAsyncReaderThrows()
|
||||
{
|
||||
Assert.Throws<System.Net.Http.HttpRequestException>(() => XmlReader.Create("http://test.test/test.html", new XmlReaderSettings() { Async = false }));
|
||||
|
|
|
@ -25,7 +25,7 @@
|
|||
'$(Scenario)' == 'gcstress0xc_jitstress1' or
|
||||
'$(Scenario)' == 'gcstress0xc_jitstress2' or
|
||||
'$(Scenario)' == 'gcstress0xc_jitminopts_heapverify1'">01:30:00</_workItemTimeout>
|
||||
<_workItemTimeout Condition="'$(_workItemTimeout)' == '' and ('$(TargetOS)' == 'iOS' or '$(TargetOS)' == 'iOSSimulator' or '$(TargetOS)' == 'tvOS' or '$(TargetOS)' == 'tvOSSimulator' or '$(TargetOS)' == 'Android')">00:30:00</_workItemTimeout>
|
||||
<_workItemTimeout Condition="'$(_workItemTimeout)' == '' and ('$(TargetOS)' == 'iOS' or '$(TargetOS)' == 'iOSSimulator' or '$(TargetOS)' == 'tvOS' or '$(TargetOS)' == 'tvOSSimulator' or '$(TargetOS)' == 'MacCatalyst' or '$(TargetOS)' == 'Android')">00:30:00</_workItemTimeout>
|
||||
<_workItemTimeout Condition="'$(Scenario)' == '' and '$(_workItemTimeout)' == '' and ('$(TargetArchitecture)' == 'arm64' or '$(TargetArchitecture)' == 'arm')">00:45:00</_workItemTimeout>
|
||||
<_workItemTimeout Condition="'$(Scenario)' != '' and '$(_workItemTimeout)' == '' and ('$(TargetArchitecture)' == 'arm64' or '$(TargetArchitecture)' == 'arm')">01:00:00</_workItemTimeout>
|
||||
<_workItemTimeout Condition="'$(Scenario)' == 'BuildWasmApps' and '$(_workItemTimeout)' == ''">01:00:00</_workItemTimeout>
|
||||
|
@ -70,7 +70,7 @@
|
|||
<HelixType Condition="'$(TestPackages)' == 'true'">test/functional/packaging/</HelixType>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup Condition="'$(TargetOS)' == 'Browser' or '$(TargetOS)' == 'Android' or '$(TargetOS)' == 'iOS' or '$(TargetOS)' == 'iOSSimulator' or '$(TargetOS)' == 'tvOS' or '$(TargetOS)' == 'tvOSSimulator'">
|
||||
<PropertyGroup Condition="'$(TargetOS)' == 'Browser' or '$(TargetOS)' == 'Android' or '$(TargetOS)' == 'iOS' or '$(TargetOS)' == 'iOSSimulator' or '$(TargetOS)' == 'tvOS' or '$(TargetOS)' == 'tvOSSimulator' or '$(TargetOS)' == 'MacCatalyst'">
|
||||
<IncludeXHarnessCli>true</IncludeXHarnessCli>
|
||||
</PropertyGroup>
|
||||
|
||||
|
@ -164,6 +164,14 @@
|
|||
<HelixProperties Condition="'$(Scenario)' != ''" Include="scenario" Value="$(Scenario)" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemDefinitionGroup Condition="'$(TargetOS)' == 'MacCatalyst'">
|
||||
<XHarnessAppBundleToTest>
|
||||
<Targets>maccatalyst</Targets>
|
||||
<TestTimeout>$(_workItemTimeout)</TestTimeout>
|
||||
<LaunchTimeout>$(_workItemTimeout)</LaunchTimeout>
|
||||
</XHarnessAppBundleToTest>
|
||||
</ItemDefinitionGroup>
|
||||
|
||||
<ItemDefinitionGroup Condition="'$(TargetOS)' == 'iOS' or '$(TargetOS)' == 'tvOS'">
|
||||
<XHarnessAppBundleToTest>
|
||||
<Targets Condition="'$(TargetArchitecture)' == 'arm'">ios-device</Targets>
|
||||
|
@ -211,20 +219,21 @@
|
|||
<Message Importance="High" Text="Using WorkItemArchiveWildCard: $(WorkItemArchiveWildCard)" />
|
||||
<Message Importance="High" Text="Using Timeout: $(_workItemTimeout)" />
|
||||
|
||||
<PropertyGroup Condition="'$(TargetOS)' == 'iOS' or '$(TargetOS)' == 'tvOS' or '$(TargetOS)' == 'iOSSimulator' or '$(TargetOS)' == 'tvOSSimulator'">
|
||||
<PropertyGroup Condition="'$(TargetOS)' == 'iOS' or '$(TargetOS)' == 'tvOS' or '$(TargetOS)' == 'iOSSimulator' or '$(TargetOS)' == 'tvOSSimulator' or '$(TargetOS)' == 'MacCatalyst'">
|
||||
<AppleTestTarget Condition="'$(TargetOS)' == 'iOSSimulator'">ios-simulator-64</AppleTestTarget>
|
||||
<AppleTestTarget Condition="'$(TargetOS)' == 'tvOSSimulator'">tvos-simulator</AppleTestTarget>
|
||||
<AppleTestTarget Condition="'$(TargetOS)' == 'iOS'">ios-device</AppleTestTarget>
|
||||
<AppleTestTarget Condition="'$(TargetOS)' == 'tvOS'">tvos-device</AppleTestTarget>
|
||||
<AppleTestTarget Condition="'$(TargetOS)' == 'MacCatalyst'">maccatalyst</AppleTestTarget>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup Condition="'$(TargetOS)' == 'iOS' or '$(TargetOS)' == 'tvOS' or '$(TargetOS)' == 'iOSSimulator' or '$(TargetOS)' == 'tvOSSimulator'">
|
||||
<ItemGroup Condition="'$(TargetOS)' == 'iOS' or '$(TargetOS)' == 'tvOS' or '$(TargetOS)' == 'iOSSimulator' or '$(TargetOS)' == 'tvOSSimulator' or '$(TargetOS)' == 'MacCatalyst'">
|
||||
<!-- Create work items for test apps -->
|
||||
<XHarnessAppBundleToTest Include="$([System.IO.Directory]::GetDirectories('$(TestArchiveTestsRoot)', '*.app', System.IO.SearchOption.AllDirectories))">
|
||||
<Targets>$(AppleTestTarget)</Targets>
|
||||
</XHarnessAppBundleToTest>
|
||||
<!-- Create work items for run-only apps -->
|
||||
<XHarnessAppBundleToTest Include="$([System.IO.Directory]::GetDirectories('$(TestArchiveRoot)runonly', '*.app', System.IO.SearchOption.AllDirectories))" >
|
||||
<XHarnessAppBundleToTest Condition="Exists('$(TestArchiveRoot)runonly')" Include="$([System.IO.Directory]::GetDirectories('$(TestArchiveRoot)runonly', '*.app', System.IO.SearchOption.AllDirectories))" >
|
||||
<!-- The sample app doesn't need test runner -->
|
||||
<IncludesTestRunner>false</IncludesTestRunner>
|
||||
<!-- The sample's C# Main method returns 42 so it should be considered by xharness as a success -->
|
||||
|
@ -283,7 +292,7 @@
|
|||
<HelixCorrelationPayload Include="$(MonoAotCrossDir)" Destination="build/cross" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup Condition="'$(TargetOS)' != 'Android' and '$(TargetOS)' != 'iOS' and '$(TargetOS)' != 'iOSSimulator' and '$(TargetOS)' != 'tvOS' and '$(TargetOS)' != 'tvOSSimulator'">
|
||||
<ItemGroup Condition="'$(TargetOS)' != 'Android' and '$(TargetOS)' != 'iOS' and '$(TargetOS)' != 'iOSSimulator' and '$(TargetOS)' != 'tvOS' and '$(TargetOS)' != 'tvOSSimulator' and '$(TargetOS)' != 'MacCatalyst'">
|
||||
<HelixCorrelationPayload Include="$(HelixCorrelationPayload)"
|
||||
Condition="'$(IncludeHelixCorrelationPayload)' == 'true' and '$(TargetOS)' != 'Browser'" />
|
||||
<HelixCorrelationPayload Include="chromium" Uri="$(ChromiumUrl)" Condition="'$(TargetOS)' == 'Browser'" />
|
||||
|
@ -321,8 +330,8 @@
|
|||
</ItemGroup>
|
||||
|
||||
<Message Condition="'$(Scenario)' != ''" Importance="High" Text="Done building Helix work items for scenario $(Scenario). Work item count: @(_WorkItem->Count())" />
|
||||
<Message Condition="'$(Scenario)' == '' and ('$(TargetOS)' == 'Android' or '$(TargetOS)' == 'iOS' or '$(TargetOS)' == 'iOSSimulator' or '$(TargetOS)' == 'tvOS' or '$(TargetOS)' == 'tvOSSimulator')" Importance="High" Text="Done building Helix work items. Work item count: @(XHarnessAppBundleToTest->Count())" />
|
||||
<Message Condition="'$(Scenario)' == '' and '$(TargetOS)' != 'Android' and '$(TargetOS)' != 'iOS' and '$(TargetOS)' != 'iOSSimulator' and '$(TargetOS)' != 'tvOS' and '$(TargetOS)' != 'tvOSSimulator'" Importance="High" Text="Done building Helix work items. Work item count: @(_WorkItem->Count())" />
|
||||
<Message Condition="'$(Scenario)' == '' and ('$(TargetOS)' == 'Android' or '$(TargetOS)' == 'iOS' or '$(TargetOS)' == 'iOSSimulator' or '$(TargetOS)' == 'tvOS' or '$(TargetOS)' == 'tvOSSimulator' or '$(TargetOS)' == 'MacCatalyst')" Importance="High" Text="Done building Helix work items. Work item count: @(XHarnessAppBundleToTest->Count())" />
|
||||
<Message Condition="'$(Scenario)' == '' and '$(TargetOS)' != 'Android' and '$(TargetOS)' != 'iOS' and '$(TargetOS)' != 'iOSSimulator' and '$(TargetOS)' != 'tvOS' and '$(TargetOS)' != 'tvOSSimulator' and '$(TargetOS)' != 'MacCatalyst'" Importance="High" Text="Done building Helix work items. Work item count: @(_WorkItem->Count())" />
|
||||
|
||||
</Target>
|
||||
|
||||
|
|
|
@ -79,7 +79,7 @@
|
|||
<ProjectExclusions Include="$(RepoRoot)\src\tests\FunctionalTests\Android\Device_Emulator\AOT\Android.Device_Emulator.Aot.Test.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup Condition="('$(TargetOS)' == 'iOS' or '$(TargetOS)' == 'iOSSimulator' or '$(TargetOS)' == 'tvOS' or '$(TargetOS)' == 'tvOSSimulator') and '$(RunDisablediOSTests)' != 'true'">
|
||||
<ItemGroup Condition="('$(TargetOS)' == 'iOS' or '$(TargetOS)' == 'iOSSimulator' or '$(TargetOS)' == 'tvOS' or '$(TargetOS)' == 'tvOSSimulator' or '$(TargetOS)' == 'MacCatalyst') and '$(RunDisablediOSTests)' != 'true'">
|
||||
<ProjectExclusions Include="$(MSBuildThisFileDirectory)Microsoft.Extensions.FileProviders.Composite\tests\Microsoft.Extensions.FileProviders.Composite.Tests.csproj" />
|
||||
<ProjectExclusions Include="$(MSBuildThisFileDirectory)Microsoft.Extensions.HostFactoryResolver\tests\Microsoft.Extensions.HostFactoryResolver.Tests.csproj" />
|
||||
<ProjectExclusions Include="$(MSBuildThisFileDirectory)Microsoft.Extensions.Hosting\tests\UnitTests\Microsoft.Extensions.Hosting.Unit.Tests.csproj" />
|
||||
|
@ -157,6 +157,16 @@
|
|||
<ProjectExclusions Include="$(MSBuildThisFileDirectory)System.ValueTuple\tests\System.ValueTuple.Tests.csproj" />
|
||||
<ProjectExclusions Include="$(MSBuildThisFileDirectory)System.Private.Xml.Linq\tests\axes\System.Xml.Linq.Axes.Tests.csproj" />
|
||||
<ProjectExclusions Include="$(MSBuildThisFileDirectory)System.Private.Xml.Linq\tests\xNodeReader\System.Xml.Linq.xNodeReader.Tests.csproj" />
|
||||
|
||||
<!-- Can't AOT in interp mode -->
|
||||
<ProjectExclusions Condition="'$(MonoForceInterpreter)' == 'true'"
|
||||
Include="$(RepoRoot)\src\tests\FunctionalTests\iOS\Simulator\AOT\**\*.Test.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup Condition="('$(TargetOS)' == 'MacCatalyst') and '$(RunDisablediOSTests)' != 'true'">
|
||||
<!-- Crashes randomly during test runs https://github.com/dotnet/runtime/issues/52460 -->
|
||||
<ProjectExclusions Include="$(MSBuildThisFileDirectory)System.Threading.Tasks\tests\System.Threading.Tasks.Tests.csproj" />
|
||||
<ProjectExclusions Include="$(MSBuildThisFileDirectory)System.Threading.Tasks.Dataflow\tests\System.Threading.Tasks.Dataflow.Tests.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup Condition="('$(TargetOS)' == 'tvOS' or '$(TargetOS)' == 'tvOSSimulator') and '$(RunDisablediOSTests)' != 'true'">
|
||||
|
|
|
@ -177,6 +177,7 @@ endif()
|
|||
######################################
|
||||
|
||||
message ("CMAKE_SYSTEM_NAME=${CMAKE_SYSTEM_NAME}")
|
||||
message ("CMAKE_SYSTEM_VARIANT=${CMAKE_SYSTEM_VARIANT}")
|
||||
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
add_definitions(-D_THREAD_SAFE)
|
||||
|
@ -526,7 +527,7 @@ endif()
|
|||
######################################
|
||||
set(ICU_SHIM_PATH "../../../libraries/Native/Unix/System.Globalization.Native")
|
||||
if(MONO_CROSS_COMPILE)
|
||||
elseif(HOST_OSX)
|
||||
elseif(HOST_OSX AND NOT HOST_MACCAT)
|
||||
include(FindPkgConfig)
|
||||
# FIXME: Handle errors
|
||||
# Defines ICU_INCLUDEDIR/ICU_LIBDIR
|
||||
|
@ -541,7 +542,7 @@ elseif(HOST_WASM)
|
|||
set(HAVE_SYS_ICU 1)
|
||||
set(STATIC_ICU 1)
|
||||
set(ICU_LIBS "icucore")
|
||||
elseif(HOST_IOS)
|
||||
elseif(HOST_IOS OR HOST_MACCAT)
|
||||
set(ICU_FLAGS "-DTARGET_UNIX -DU_DISABLE_RENAMING -Wno-reserved-id-macro -Wno-documentation -Wno-documentation-unknown-command -Wno-switch-enum -Wno-covered-switch-default -Wno-extra-semi-stmt -Wno-unknown-warning-option -Wno-deprecated-declarations")
|
||||
set(HAVE_SYS_ICU 1)
|
||||
set(STATIC_ICU 1)
|
||||
|
|
|
@ -84,7 +84,7 @@
|
|||
<MonoComponentsStatic Condition="'$(MonoComponentsStatic)' == ''">true</MonoComponentsStatic>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup Condition="'$(TargetsBrowser)' == 'true' or '$(TargetsiOS)' == 'true' or '$(TargetstvOS)' == 'true'">
|
||||
<ItemGroup Condition="'$(TargetsBrowser)' == 'true' or '$(TargetsiOS)' == 'true' or '$(TargetstvOS)' == 'true' or '$(TargetsMacCatalyst)' == 'true'">
|
||||
<PackageReference Include="Microsoft.NETCore.Runtime.ICU.Transport" PrivateAssets="all" Version="$(MicrosoftNETCoreRuntimeICUTransportVersion)" GeneratePathProperty="true" />
|
||||
</ItemGroup>
|
||||
|
||||
|
@ -309,6 +309,8 @@
|
|||
<_MonoCMakeSystemName Condition="'$(TargetstvOS)' == 'true'">tvOS</_MonoCMakeSystemName>
|
||||
<_MonoCMakeVersionMin Condition="'$(TargetsiOS)' == 'true'">$(iOSVersionMin)</_MonoCMakeVersionMin>
|
||||
<_MonoCMakeVersionMin Condition="'$(TargetstvOS)' == 'true'">$(tvOSVersionMin)</_MonoCMakeVersionMin>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(TargetsiOS)' == 'true' or '$(TargetstvOS)' == 'true' or '$(TargetsMacCatalyst)' == 'true'">
|
||||
<_IcuLibdir>$(PkgMicrosoft_NETCore_Runtime_ICU_Transport)/runtimes/$(TargetOS)-$(TargetArchitecture)/native/lib</_IcuLibdir>
|
||||
</PropertyGroup>
|
||||
<ItemGroup Condition="('$(TargetsOSX)' == 'true' or '$(TargetsMacCatalyst)' == 'true') and '$(Platform)' == 'arm64'">
|
||||
|
@ -318,15 +320,17 @@
|
|||
<_MonoCMakeArgs Include="-DCMAKE_SYSTEM_NAME=$(_MonoCMakeSystemName)"/>
|
||||
<_MonoCMakeArgs Include="-DCMAKE_OSX_DEPLOYMENT_TARGET=$(_MonoCMakeVersionMin)" />
|
||||
<_MonoCMakeArgs Include="-DCMAKE_OSX_SYSROOT='$(_MonoCMakeSysroot)'" />
|
||||
<_MonoCMakeArgs Include="-DICU_LIBDIR=$(_IcuLibdir)"/>
|
||||
<_MonoCMakeArgs Condition="'$(Platform)' == 'x64'" Include="-DCMAKE_OSX_ARCHITECTURES=x86_64"/>
|
||||
<_MonoCMakeArgs Condition="'$(Platform)' == 'x86'" Include="-DCMAKE_OSX_ARCHITECTURES=i386"/>
|
||||
<_MonoCMakeArgs Condition="'$(Platform)' == 'arm64'" Include="-DCMAKE_OSX_ARCHITECTURES=arm64"/>
|
||||
<_MonoCMakeArgs Condition="'$(Platform)' == 'arm'" Include=""-DCMAKE_OSX_ARCHITECTURES=armv7%3Barmv7s""/>
|
||||
<_MonoCFLAGS Include="-Wl,-application_extension" />
|
||||
<_MonoCFLAGS Include="-I$(PkgMicrosoft_NETCore_Runtime_ICU_Transport)/runtimes/$(TargetOS)-$(TargetArchitecture)/native/include" />
|
||||
<_MonoCXXFLAGS Include="-Wl,-application_extension" />
|
||||
</ItemGroup>
|
||||
<ItemGroup Condition="'$(TargetsiOS)' == 'true' or '$(TargetstvOS)' == 'true' or '$(TargetsMacCatalyst)' == 'true'">
|
||||
<_MonoCMakeArgs Include="-DICU_LIBDIR=$(_IcuLibdir)"/>
|
||||
<_MonoCFLAGS Include="-I$(PkgMicrosoft_NETCore_Runtime_ICU_Transport)/runtimes/$(TargetOS)-$(TargetArchitecture)/native/include" />
|
||||
</ItemGroup>
|
||||
<!-- iOS/tvOS simulator specific options -->
|
||||
<ItemGroup Condition="('$(TargetsiOS)' == 'true' and '$(TargetsiOSSimulator)' == 'true') or ('$(TargetstvOS)' == 'true' and '$(TargetstvOSSimulator)' == 'true')">
|
||||
<_MonoCMakeArgs Include="-DENABLE_MINIMAL=shared_perfcounters"/>
|
||||
|
@ -674,7 +678,7 @@
|
|||
<_MonoRuntimeFilePath Condition="'$(_MonoRuntimeFilePath)' == ''">$(MonoObjDir)out\lib\$(MonoFileName)</_MonoRuntimeFilePath>
|
||||
<_MonoRuntimeStaticFilePath Condition="'$(TargetsMacCatalyst)' == 'true' or '$(TargetsiOS)' == 'true' or '$(TargetstvOS)' == 'true' or '$(TargetsAndroid)' == 'true'">$(MonoObjDir)out\lib\$(MonoStaticLibFileName)</_MonoRuntimeStaticFilePath>
|
||||
<_MonoIncludeInterpStaticFiles Condition="'$(TargetsBrowser)' == 'true'">true</_MonoIncludeInterpStaticFiles>
|
||||
<_MonoIncludeIcuFiles Condition="'$(TargetsiOS)' == 'true' or '$(TargetstvOS)' == 'true'">true</_MonoIncludeIcuFiles>
|
||||
<_MonoIncludeIcuFiles Condition="'$(TargetsiOS)' == 'true' or '$(TargetstvOS)' == 'true' or '$(TargetsMacCatalyst)' == 'true'">true</_MonoIncludeIcuFiles>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(BuildMonoAOTCrossCompiler)' == 'true'">
|
||||
<_MonoAotCrossFilePath>$(MonoObjCrossDir)out\bin\mono-sgen$(ExeExt)</_MonoAotCrossFilePath>
|
||||
|
|
|
@ -21,6 +21,10 @@ include_directories(
|
|||
|
||||
if(HOST_DARWIN)
|
||||
set(OS_LIBS "-framework CoreFoundation" "-framework Foundation")
|
||||
|
||||
if(CMAKE_SYSTEM_VARIANT STREQUAL "MacCatalyst")
|
||||
set(OS_LIBS "-lobjc" "-lc++")
|
||||
endif()
|
||||
elseif(HOST_IOS)
|
||||
set(OS_LIBS "-framework CoreFoundation" "-lobjc" "-lc++")
|
||||
elseif(HOST_ANDROID)
|
||||
|
|
|
@ -43,6 +43,11 @@ if("${HARDENED_RUNTIME}")
|
|||
set_target_properties(%ProjectName% PROPERTIES XCODE_ATTRIBUTE_ENABLE_HARDENED_RUNTIME "YES")
|
||||
if("${HARDENED_RUNTIME_USE_ENTITLEMENTS_FILE}")
|
||||
set_target_properties(%ProjectName% PROPERTIES XCODE_ATTRIBUTE_CODE_SIGN_ENTITLEMENTS "app.entitlements")
|
||||
add_custom_command(
|
||||
TARGET %ProjectName% POST_BUILD
|
||||
COMMAND codesign
|
||||
ARGS -fs "$CODE_SIGN_IDENTITY" "$CODESIGNING_FOLDER_PATH/Contents/Resources/*.dylib"
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
|
|
|
@ -246,14 +246,14 @@ mono_ios_runtime_init (void)
|
|||
const char *appctx_keys [] = {
|
||||
"RUNTIME_IDENTIFIER",
|
||||
"APP_CONTEXT_BASE_DIRECTORY",
|
||||
#if !defined(INVARIANT_GLOBALIZATION) && !TARGET_OS_MACCATALYST
|
||||
#if !defined(INVARIANT_GLOBALIZATION)
|
||||
"ICU_DAT_FILE_PATH"
|
||||
#endif
|
||||
};
|
||||
const char *appctx_values [] = {
|
||||
APPLE_RUNTIME_IDENTIFIER,
|
||||
bundle,
|
||||
#if !defined(INVARIANT_GLOBALIZATION) && !TARGET_OS_MACCATALYST
|
||||
#if !defined(INVARIANT_GLOBALIZATION)
|
||||
icu_dat_path
|
||||
#endif
|
||||
};
|
||||
|
|
|
@ -12,10 +12,12 @@ internal class Xcode
|
|||
private string RuntimeIdentifier { get; set; }
|
||||
private string SysRoot { get; set; }
|
||||
private string Target { get; set; }
|
||||
private string XcodeArch { get; set; }
|
||||
|
||||
public Xcode(string target, string arch)
|
||||
{
|
||||
Target = target;
|
||||
XcodeArch = (arch == "x64") ? "x86_64" : arch;
|
||||
switch (Target)
|
||||
{
|
||||
case TargetNames.iOS:
|
||||
|
@ -87,7 +89,7 @@ internal class Xcode
|
|||
var entitlements = new List<KeyValuePair<string, string>>();
|
||||
|
||||
bool hardenedRuntime = false;
|
||||
if (Target == TargetNames.MacCatalyst && !(forceInterpreter || forceAOT)) {
|
||||
if (Target == TargetNames.MacCatalyst && !forceAOT) {
|
||||
hardenedRuntime = true;
|
||||
|
||||
/* for mmmap MAP_JIT */
|
||||
|
@ -248,7 +250,7 @@ internal class Xcode
|
|||
targetName = Target.ToString();
|
||||
break;
|
||||
}
|
||||
var deployTarget = (Target == TargetNames.MacCatalyst) ? " -DCMAKE_OSX_ARCHITECTURES=\"x86_64 arm64\"" : " -DCMAKE_OSX_DEPLOYMENT_TARGET=10.1";
|
||||
var deployTarget = (Target == TargetNames.MacCatalyst) ? " -DCMAKE_OSX_ARCHITECTURES=" + XcodeArch : " -DCMAKE_OSX_DEPLOYMENT_TARGET=10.1";
|
||||
var cmakeArgs = new StringBuilder();
|
||||
cmakeArgs
|
||||
.Append("-S.")
|
||||
|
@ -298,6 +300,10 @@ internal class Xcode
|
|||
.Append(" CODE_SIGNING_REQUIRED=NO")
|
||||
.Append(" CODE_SIGNING_ALLOWED=NO");
|
||||
}
|
||||
else if (string.Equals(devTeamProvisioning, "adhoc", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
args.Append(" CODE_SIGN_IDENTITY=\"-\"");
|
||||
}
|
||||
else
|
||||
{
|
||||
args.Append(" -allowProvisioningUpdates")
|
||||
|
@ -332,8 +338,10 @@ internal class Xcode
|
|||
default:
|
||||
sdk = "maccatalyst";
|
||||
args.Append(" -scheme \"" + Path.GetFileNameWithoutExtension(xcodePrjPath) + "\"")
|
||||
.Append(" -destination \"platform=macOS,arch=arm64,variant=Mac Catalyst\"")
|
||||
.Append(" -destination \"generic/platform=macOS,name=Any Mac,variant=Mac Catalyst\"")
|
||||
.Append(" -UseModernBuildSystem=YES")
|
||||
.Append(" -archivePath \"" + Path.GetDirectoryName(xcodePrjPath) + "\"")
|
||||
.Append(" -derivedDataPath \"" + Path.GetDirectoryName(xcodePrjPath) + "\"")
|
||||
.Append(" IPHONEOS_DEPLOYMENT_TARGET=14.2");
|
||||
break;
|
||||
}
|
||||
|
@ -355,8 +363,10 @@ internal class Xcode
|
|||
default:
|
||||
sdk = "maccatalyst";
|
||||
args.Append(" -scheme \"" + Path.GetFileNameWithoutExtension(xcodePrjPath) + "\"")
|
||||
.Append(" -destination \"platform=macOS,arch=x86_64,variant=Mac Catalyst\"")
|
||||
.Append(" -destination \"generic/platform=macOS,name=Any Mac,variant=Mac Catalyst\"")
|
||||
.Append(" -UseModernBuildSystem=YES")
|
||||
.Append(" -archivePath \"" + Path.GetDirectoryName(xcodePrjPath) + "\"")
|
||||
.Append(" -derivedDataPath \"" + Path.GetDirectoryName(xcodePrjPath) + "\"")
|
||||
.Append(" IPHONEOS_DEPLOYMENT_TARGET=13.5");
|
||||
break;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue