@@ -3097,7 +3097,7 @@ That command depends on command in Target 'agg2' (project \'aProject\'): script
30973097 }
30983098
30993099 /// Check the actual behavior of mutable tasks in an [incremental] build.
3100- @Test ( . requireSDKs( . macOS) )
3100+ @Test ( . requireSDKs( . macOS) , . requireXcode26 ( ) )
31013101 func actualMutableBehaviors( ) async throws {
31023102 func checkScenario( _ name: String , expectedTasks: [ String ] , generic: Bool = false , settings: [ String : String ] = [ : ] , enableSigning: Bool = false , targetType: TestStandardTarget . TargetType = . commandLineTool) async throws {
31033103 let targetName = targetType == . framework ? " Fwk " : " Tool "
@@ -3239,6 +3239,7 @@ That command depends on command in Target 'agg2' (project \'aProject\'): script
32393239 try await checkScenario ( " Universal Tool Mutation " , expectedTasks: [ " ScanDependencies " , " ScanDependencies " , " CompileC " , " CompileC " , " CreateUniversalBinary " , " Ld " , " Ld " , " Strip " ] , generic: true , settings: [
32403240 " STRIP_INSTALLED_PRODUCT " : " YES " ,
32413241 " ARCHS " : " x86_64 x86_64h " ,
3242+ " MACOSX_DEPLOYMENT_TARGET " : " 26.0 " ,
32423243 " VALID_ARCHS[sdk=macosx*] " : " $(inherited) x86_64h " ] )
32433244
32443245 // Check the behavior of signing a framework.
@@ -3481,7 +3482,7 @@ That command depends on command in Target 'agg2' (project \'aProject\'): script
34813482 }
34823483
34833484 /// Tests that content such as headers is removed from frameworks when they are processed by a copy files build phase.
3484- @Test ( . requireSDKs( . macOS, . iOS) , arguments: [ . anyMac, . anyiOSDevice, . anyMacCatalyst] as [ RunDestinationInfo ] )
3485+ @Test ( . requireSDKs( . macOS, . iOS) , . requireXcode27 ( ) , arguments: [ . anyMac, . anyiOSDevice, . anyMacCatalyst] as [ RunDestinationInfo ] )
34853486 func copiedFrameworkContentPruning( runDestination: RunDestinationInfo ) async throws {
34863487 try await withTemporaryDirectory { tmpDirPath in
34873488 let testWorkspace = TestWorkspace (
@@ -3551,7 +3552,7 @@ That command depends on command in Target 'agg2' (project \'aProject\'): script
35513552 let signableTargets : Set < String > = [ " App " , " App2 " ]
35523553
35533554 let sourceDynamicFrameworkPath = tmpDirPath. join ( " ADynamicFwk.framework " )
3554- try await tester. fs. writeFramework ( sourceDynamicFrameworkPath, archs: runDestination . platform == " macosx " ? [ " arm64 " , " x86_64 " ] : [ " arm64 " ] , platform: #require( runDestination. buildVersionPlatform ( core) ) , infoLookup: core, static: false ) { _, _, headersDir, resourcesDir in
3555+ try await tester. fs. writeFramework ( sourceDynamicFrameworkPath, archs: [ " arm64 " ] , platform: #require( runDestination. buildVersionPlatform ( core) ) , infoLookup: core, static: false ) { _, _, headersDir, resourcesDir in
35553556 try await tester. fs. writeFileContents ( headersDir. join ( " ADynamicFwk.h " ) ) { $0 <<< " " }
35563557 try await tester. fs. writePlist ( resourcesDir. join ( " ADynamicResource.plist " ) , . plDict( [ : ] ) )
35573558 try await tester. fs. writePlist ( resourcesDir. join ( " Info.plist " ) , . plDict( [
@@ -3589,7 +3590,7 @@ That command depends on command in Target 'agg2' (project \'aProject\'): script
35893590 let bundleSupportedPlatforms = try #require( platform? . additionalInfoPlistEntries [ " CFBundleSupportedPlatforms " ] )
35903591
35913592 let sourceStaticFrameworkPath = tmpDirPath. join ( " AStaticFwk.framework " )
3592- try await tester. fs. writeFramework ( sourceStaticFrameworkPath, archs: runDestination . platform == " macosx " ? [ " arm64 " , " x86_64 " ] : [ " arm64 " ] , platform: #require( runDestination. buildVersionPlatform ( core) ) , infoLookup: core, static: true ) { _, _, headersDir, resourcesDir in
3593+ try await tester. fs. writeFramework ( sourceStaticFrameworkPath, archs: [ " arm64 " ] , platform: #require( runDestination. buildVersionPlatform ( core) ) , infoLookup: core, static: true ) { _, _, headersDir, resourcesDir in
35933594 try await tester. fs. writeFileContents ( headersDir. join ( " AStaticFwk.h " ) ) { $0 <<< " " }
35943595 try await tester. fs. writePlist ( resourcesDir. join ( " AStaticResource.plist " ) , . plDict( [ : ] ) )
35953596 try await tester. fs. writePlist ( resourcesDir. join ( " Info.plist " ) , . plDict( [
@@ -3669,7 +3670,7 @@ That command depends on command in Target 'agg2' (project \'aProject\'): script
36693670 } else {
36703671 let minos = try #require( vtoolOutput. components ( separatedBy: " \n " ) . first ( where: { $0. contains ( " minos " ) } ) ? . trimmingPrefix ( while: { $0. isWhitespace } ) )
36713672 #expect( minos == ( runDestination. buildVersionPlatform ( core) == . macCatalyst ? " minos 14.2 " : " minos 11.0 " ) )
3672- #expect( try Set ( MachO ( reader: BinaryReader ( data: tester. fs. read ( Path ( frameworkPath) ) ) ) . slices ( ) . map { $0. arch } ) == [ " arm64 " , " x86_64 " ] )
3673+ #expect( try Set ( MachO ( reader: BinaryReader ( data: tester. fs. read ( Path ( frameworkPath) ) ) ) . slices ( ) . map { $0. arch } ) == [ " arm64 " ] )
36733674 }
36743675 }
36753676
@@ -7253,7 +7254,7 @@ That command depends on command in Target 'agg2' (project \'aProject\'): script
72537254 try await test ( buildSettings: [ " ENABLE_ENHANCED_SECURITY " : " NO " , " ENABLE_POINTER_AUTHENTICATION " : " YES " ] , expectedArchs: [ " arm64e " ] )
72547255 }
72557256
7256- @Test ( . requireSDKs( . macOS) )
7257+ @Test ( . requireSDKs( . macOS) , . requireXcode26 ( ) )
72577258 func pointerAuthenticationBuildSetting_macOS( ) async throws {
72587259 func test( buildSettings: [ String : String ] , expectedArchs: [ String ] , line: UInt = #line) async throws {
72597260
@@ -7314,14 +7315,14 @@ That command depends on command in Target 'agg2' (project \'aProject\'): script
73147315 }
73157316 }
73167317
7317- try await test ( buildSettings: [ " ENABLE_POINTER_AUTHENTICATION " : " YES " ] , expectedArchs: [ " x86_64 " , " arm64 " , " arm64e " ] )
7318- try await test ( buildSettings: [ " ENABLE_POINTER_AUTHENTICATION " : " NO " ] , expectedArchs: [ " x86_64 " , " arm64 " ] )
7318+ try await test ( buildSettings: [ " ENABLE_POINTER_AUTHENTICATION " : " YES " , " MACOSX_DEPLOYMENT_TARGET " : " 26.0 " ] , expectedArchs: [ " x86_64 " , " arm64 " , " arm64e " ] )
7319+ try await test ( buildSettings: [ " ENABLE_POINTER_AUTHENTICATION " : " NO " , " MACOSX_DEPLOYMENT_TARGET " : " 26.0 " ] , expectedArchs: [ " x86_64 " , " arm64 " ] )
73197320
73207321 // ENABLE_ENHANCED_SECURITY enables pointer authentication unless ENABLE_POINTER_AUTHENTICATION is explicitly disabled.
7321- try await test ( buildSettings: [ " ENABLE_ENHANCED_SECURITY " : " YES " ] , expectedArchs: [ " x86_64 " , " arm64 " , " arm64e " ] )
7322- try await test ( buildSettings: [ " ENABLE_ENHANCED_SECURITY " : " NO " ] , expectedArchs: [ " x86_64 " , " arm64 " ] )
7323- try await test ( buildSettings: [ " ENABLE_ENHANCED_SECURITY " : " YES " , " ENABLE_POINTER_AUTHENTICATION " : " NO " ] , expectedArchs: [ " x86_64 " , " arm64 " ] )
7324- try await test ( buildSettings: [ " ENABLE_ENHANCED_SECURITY " : " NO " , " ENABLE_POINTER_AUTHENTICATION " : " YES " ] , expectedArchs: [ " x86_64 " , " arm64e " ] )
7322+ try await test ( buildSettings: [ " ENABLE_ENHANCED_SECURITY " : " YES " , " MACOSX_DEPLOYMENT_TARGET " : " 26.0 " ] , expectedArchs: [ " x86_64 " , " arm64 " , " arm64e " ] )
7323+ try await test ( buildSettings: [ " ENABLE_ENHANCED_SECURITY " : " NO " , " MACOSX_DEPLOYMENT_TARGET " : " 26.0 " ] , expectedArchs: [ " x86_64 " , " arm64 " ] )
7324+ try await test ( buildSettings: [ " ENABLE_ENHANCED_SECURITY " : " YES " , " ENABLE_POINTER_AUTHENTICATION " : " NO " , " MACOSX_DEPLOYMENT_TARGET " : " 26.0 " ] , expectedArchs: [ " x86_64 " , " arm64 " ] )
7325+ try await test ( buildSettings: [ " ENABLE_ENHANCED_SECURITY " : " NO " , " ENABLE_POINTER_AUTHENTICATION " : " YES " , " MACOSX_DEPLOYMENT_TARGET " : " 26.0 " ] , expectedArchs: [ " x86_64 " , " arm64e " ] )
73257326 }
73267327
73277328 @Test ( . requireSDKs( . macOS) )
0 commit comments