@@ -327,12 +327,13 @@ final class ExplicitModuleBuildTests: XCTestCase {
327
327
let testInputsPath = packageRootPath + " /TestInputs "
328
328
let cHeadersPath : String = testInputsPath + " /ExplicitModuleBuilds/CHeaders "
329
329
let swiftModuleInterfacesPath : String = testInputsPath + " /ExplicitModuleBuilds/Swift "
330
+ let sdkArgumentsForTesting = ( try ? Driver . sdkArgumentsForTesting ( ) ) ?? [ ]
330
331
var driver = try Driver ( args: [ " swiftc " ,
331
332
" -target " , " x86_64-apple-macosx11.0 " ,
332
333
" -I " , cHeadersPath,
333
334
" -I " , swiftModuleInterfacesPath,
334
335
" -experimental-explicit-module-build " ,
335
- main. pathString] )
336
+ main. pathString] + sdkArgumentsForTesting )
336
337
337
338
let jobs = try driver. planBuild ( )
338
339
// Figure out which Triples to use.
@@ -346,8 +347,10 @@ final class ExplicitModuleBuildTests: XCTestCase {
346
347
347
348
let pcmArgsCurrent = mainModuleSwiftDetails. extraPcmArgs
348
349
var pcmArgs9 = [ " -Xcc " , " -target " , " -Xcc " , " x86_64-apple-macosx10.9 " ]
350
+ var pcmArgs15 = [ " -Xcc " , " -target " , " -Xcc " , " x86_64-apple-macosx10.15 " ]
349
351
if driver. targetTriple. isDarwin {
350
352
pcmArgs9. append ( contentsOf: [ " -Xcc " , " -fapinotes-swift-version=5 " ] )
353
+ pcmArgs15. append ( contentsOf: [ " -Xcc " , " -fapinotes-swift-version=5 " ] )
351
354
}
352
355
let pcmFileEncoder = { ( moduleInfo: ModuleInfo , hashParts: [ String ] ) -> VirtualPath . Handle in
353
356
try ! driver. explicitDependencyBuildPlanner!. targetEncodedClangModuleFilePath ( for: moduleInfo,
@@ -436,6 +439,11 @@ final class ExplicitModuleBuildTests: XCTestCase {
436
439
try checkExplicitModuleBuildJob ( job: job, pcmArgs: pcmArgs9, moduleId: . clang( " SwiftShims " ) ,
437
440
dependencyOracle: dependencyOracle,
438
441
pcmFileEncoder: pcmFileEncoder)
442
+ case . relative( pcmArgsEncodedRelativeModulePath ( for: " SwiftShims " , with: pcmArgs15,
443
+ pcmModuleNameEncoder: pcmModuleNameEncoder) ) :
444
+ try checkExplicitModuleBuildJob ( job: job, pcmArgs: pcmArgs15, moduleId: . clang( " SwiftShims " ) ,
445
+ dependencyOracle: dependencyOracle,
446
+ pcmFileEncoder: pcmFileEncoder)
439
447
case . relative( pcmArgsEncodedRelativeModulePath ( for: " SwiftShims " , with: pcmArgsCurrent,
440
448
pcmModuleNameEncoder: pcmModuleNameEncoder) ) :
441
449
try checkExplicitModuleBuildJob ( job: job, pcmArgs: pcmArgsCurrent, moduleId: . clang( " SwiftShims " ) ,
@@ -473,12 +481,13 @@ final class ExplicitModuleBuildTests: XCTestCase {
473
481
let testInputsPath = packageRootPath + " /TestInputs "
474
482
let cHeadersPath : String = testInputsPath + " /ExplicitModuleBuilds/CHeaders "
475
483
let swiftModuleInterfacesPath : String = testInputsPath + " /ExplicitModuleBuilds/Swift "
484
+ let sdkArgumentsForTesting = ( try ? Driver . sdkArgumentsForTesting ( ) ) ?? [ ]
476
485
var driver = try Driver ( args: [ " swift " ,
477
486
" -target " , " x86_64-apple-macosx11.0 " ,
478
487
" -I " , cHeadersPath,
479
488
" -I " , swiftModuleInterfacesPath,
480
489
" -experimental-explicit-module-build " ,
481
- main. pathString] )
490
+ main. pathString] + sdkArgumentsForTesting )
482
491
483
492
let jobs = try driver. planBuild ( )
484
493
@@ -501,8 +510,10 @@ final class ExplicitModuleBuildTests: XCTestCase {
501
510
502
511
let pcmArgsCurrent = mainModuleSwiftDetails. extraPcmArgs
503
512
var pcmArgs9 = [ " -Xcc " , " -target " , " -Xcc " , " x86_64-apple-macosx10.9 " ]
513
+ var pcmArgs15 = [ " -Xcc " , " -target " , " -Xcc " , " x86_64-apple-macosx10.15 " ]
504
514
if driver. targetTriple. isDarwin {
505
515
pcmArgs9. append ( contentsOf: [ " -Xcc " , " -fapinotes-swift-version=5 " ] )
516
+ pcmArgs15. append ( contentsOf: [ " -Xcc " , " -fapinotes-swift-version=5 " ] )
506
517
}
507
518
let pcmFileEncoder = { ( moduleInfo: ModuleInfo , hashParts: [ String ] ) -> VirtualPath . Handle in
508
519
try ! driver. explicitDependencyBuildPlanner!. targetEncodedClangModuleFilePath ( for: moduleInfo,
@@ -560,6 +571,11 @@ final class ExplicitModuleBuildTests: XCTestCase {
560
571
try checkExplicitModuleBuildJob ( job: job, pcmArgs: pcmArgs9, moduleId: . clang( " SwiftShims " ) ,
561
572
dependencyOracle: dependencyOracle,
562
573
pcmFileEncoder: pcmFileEncoder)
574
+ case . relative( pcmArgsEncodedRelativeModulePath ( for: " SwiftShims " , with: pcmArgs15,
575
+ pcmModuleNameEncoder: pcmModuleNameEncoder) ) :
576
+ try checkExplicitModuleBuildJob ( job: job, pcmArgs: pcmArgs15, moduleId: . clang( " SwiftShims " ) ,
577
+ dependencyOracle: dependencyOracle,
578
+ pcmFileEncoder: pcmFileEncoder)
563
579
case . relative( pcmArgsEncodedRelativeModulePath ( for: " SwiftShims " , with: pcmArgsCurrent,
564
580
pcmModuleNameEncoder: pcmModuleNameEncoder) ) :
565
581
try checkExplicitModuleBuildJob ( job: job, pcmArgs: pcmArgsCurrent, moduleId: . clang( " SwiftShims " ) ,
@@ -693,13 +709,14 @@ final class ExplicitModuleBuildTests: XCTestCase {
693
709
let testInputsPath = packageRootPath + " /TestInputs "
694
710
let cHeadersPath : String = testInputsPath + " /ExplicitModuleBuilds/CHeaders "
695
711
let swiftModuleInterfacesPath : String = testInputsPath + " /ExplicitModuleBuilds/Swift "
712
+ let sdkArgumentsForTesting = ( try ? Driver . sdkArgumentsForTesting ( ) ) ?? [ ]
696
713
let scannerCommand = [ " -scan-dependencies " ,
697
714
" -import-prescan " ,
698
715
" -I " , cHeadersPath,
699
716
" -I " , swiftModuleInterfacesPath,
700
717
" -I " , stdLibPath. description,
701
718
" -I " , shimsPath. description,
702
- main. pathString]
719
+ main. pathString] + sdkArgumentsForTesting
703
720
704
721
let imports =
705
722
try ! dependencyOracle. getImports ( workingDirectory: path,
@@ -741,12 +758,13 @@ final class ExplicitModuleBuildTests: XCTestCase {
741
758
let testInputsPath = packageRootPath + " /TestInputs "
742
759
let cHeadersPath : String = testInputsPath + " /ExplicitModuleBuilds/CHeaders "
743
760
let swiftModuleInterfacesPath : String = testInputsPath + " /ExplicitModuleBuilds/Swift "
761
+ let sdkArgumentsForTesting = ( try ? Driver . sdkArgumentsForTesting ( ) ) ?? [ ]
744
762
let scannerCommand = [ " -scan-dependencies " ,
745
763
" -I " , cHeadersPath,
746
764
" -I " , swiftModuleInterfacesPath,
747
765
" -I " , stdLibPath. description,
748
766
" -I " , shimsPath. description,
749
- main. pathString]
767
+ main. pathString] + sdkArgumentsForTesting
750
768
751
769
// Here purely to dump diagnostic output in a reasonable fashion when things go wrong.
752
770
let lock = NSLock ( )
@@ -810,12 +828,14 @@ final class ExplicitModuleBuildTests: XCTestCase {
810
828
let testInputsPath = packageRootPath + " /TestInputs "
811
829
let cHeadersPath : String = testInputsPath + " /ExplicitModuleBuilds/CHeaders "
812
830
let swiftModuleInterfacesPath : String = testInputsPath + " /ExplicitModuleBuilds/Swift "
831
+ let sdkArgumentsForTesting = ( try ? Driver . sdkArgumentsForTesting ( ) ) ?? [ ]
813
832
let scannerCommand = [ " -scan-dependencies " ,
833
+ " -disable-implicit-concurrency-module-import " ,
814
834
" -I " , cHeadersPath,
815
835
" -I " , swiftModuleInterfacesPath,
816
836
" -I " , stdLibPath. description,
817
837
" -I " , shimsPath. description,
818
- main. pathString]
838
+ main. pathString] + sdkArgumentsForTesting
819
839
820
840
let scanLibPath = try Driver . getScanLibPath ( of: toolchain,
821
841
hostTriple: hostTriple,
0 commit comments