@@ -3626,20 +3626,24 @@ final class SwiftDriverTests: XCTestCase {
36263626
36273627 func testClangTargetForExplicitModule( ) throws {
36283628 #if os(macOS)
3629+ let sdkRoot = testInputsPath. appending ( component: " SDKChecks " ) . appending ( component: " iPhoneOS.sdk " )
3630+
36293631 // Check -clang-target is on by default when explicit module is on.
36303632 try withTemporaryDirectory { path in
36313633 let main = path. appending ( component: " Foo.swift " )
36323634 try localFileSystem. writeFileContents ( main) {
36333635 $0 <<< " import Swift "
36343636 }
3635- var driver = try Driver ( args: [ " swiftc " , " -explicit-module-build " , " -target " ,
3636- " x86_64-apple-macosx10.14 " , main. pathString] )
3637+ var driver = try Driver ( args: [ " swiftc " , " -explicit-module-build " ,
3638+ " -target " , " arm64-apple-ios14.0 " ,
3639+ " -sdk " , sdkRoot. pathString,
3640+ main. pathString] )
36373641 guard driver. isFrontendArgSupported ( . clangTarget) else {
36383642 throw XCTSkip ( " Skipping: compiler does not support '-clang-target' " )
36393643 }
36403644 let plannedJobs = try driver. planBuild ( )
36413645 XCTAssertTrue ( plannedJobs. contains { job in
3642- job. commandLine. contains ( . flag( " -clang-target " ) )
3646+ job. commandLine. contains ( subsequence : [ . flag( " -clang-target " ) , . flag ( " arm64-apple-ios13.0 " ) ] )
36433647 } )
36443648 }
36453649 // Check -disable-clang-target works
@@ -3649,8 +3653,10 @@ final class SwiftDriverTests: XCTestCase {
36493653 $0 <<< " import Swift "
36503654 }
36513655 var driver = try Driver ( args: [ " swiftc " , " -disable-clang-target " ,
3652- " -explicit-module-build " , " -target " ,
3653- " x86_64-apple-macosx10.14 " , main. pathString] )
3656+ " -explicit-module-build " ,
3657+ " -target " , " arm64-apple-ios14.0 " ,
3658+ " -sdk " , sdkRoot. pathString,
3659+ main. pathString] )
36543660 guard driver. isFrontendArgSupported ( . clangTarget) else {
36553661 throw XCTSkip ( " Skipping: compiler does not support '-clang-target' " )
36563662 }
@@ -3663,16 +3669,20 @@ final class SwiftDriverTests: XCTestCase {
36633669 }
36643670
36653671 func testDisableClangTargetForImplicitModule( ) throws {
3672+ #if os(macOS)
36663673 var envVars = ProcessEnv . vars
36673674 envVars [ " SWIFT_DRIVER_LD_EXEC " ] = ld. nativePathString ( escaped: false )
36683675
3676+ let sdkRoot = testInputsPath. appending ( component: " SDKChecks " ) . appending ( component: " iPhoneOS.sdk " )
36693677 var driver = try Driver ( args: [ " swiftc " , " -target " ,
3670- " x86_64-apple-macosx10.14 " , " foo.swift " ] ,
3678+ " arm64-apple-ios12.0 " , " foo.swift " ,
3679+ " -sdk " , sdkRoot. pathString] ,
36713680 env: envVars)
36723681 let plannedJobs = try driver. planBuild ( )
36733682 XCTAssertEqual ( plannedJobs. count, 2 )
3674- XCTAssert ( plannedJobs [ 0 ] . commandLine. contains ( . flag( " -target " ) ) )
3683+ XCTAssertTrue ( plannedJobs [ 0 ] . commandLine. contains ( . flag( " -target " ) ) )
36753684 XCTAssertFalse ( plannedJobs [ 0 ] . commandLine. contains ( . flag( " -clang-target " ) ) )
3685+ #endif
36763686 }
36773687
36783688 func testPCHasCompileInput( ) throws {
0 commit comments