@@ -2579,46 +2579,53 @@ function Build-ToolsSupportCore($Arch) {
2579
2579
}
2580
2580
}
2581
2581
2582
- function Build-LLBuild ($Arch , [switch ]$Test = $false ) {
2582
+ function Build-LLBuild ($Arch ) {
2583
+ Build-CMakeProject `
2584
+ - Src $SourceCache \llbuild `
2585
+ - Bin (Get-ProjectBinaryCache $Arch LLBuild) `
2586
+ - InstallTo " $ ( $Arch.ToolchainInstallRoot ) \usr" `
2587
+ - Arch $Arch `
2588
+ - Platform Windows `
2589
+ - UseMSVCCompilers CXX `
2590
+ - UseBuiltCompilers Swift `
2591
+ - SwiftSDK (Get-SwiftSDK Windows) `
2592
+ - Defines @ {
2593
+ BUILD_SHARED_LIBS = " YES" ;
2594
+ LLBUILD_SUPPORT_BINDINGS = " Swift" ;
2595
+ SQLite3_INCLUDE_DIR = " $LibraryRoot \sqlite-3.46.0\usr\include" ;
2596
+ SQLite3_LIBRARY = " $LibraryRoot \sqlite-3.46.0\usr\lib\SQLite3.lib" ;
2597
+ }
2598
+ }
2599
+
2600
+ function Test-LLBuild {
2601
+ # Build additional llvm executables needed by tests
2583
2602
Invoke-IsolatingEnvVars {
2584
- if ($Test ) {
2585
- # Build additional llvm executables needed by tests
2586
- Invoke-IsolatingEnvVars {
2587
- Invoke-VsDevShell $BuildArch
2588
- Invoke-Program ninja.exe - C (Get-ProjectBinaryCache $BuildArch BuildTools) FileCheck not
2589
- }
2603
+ Invoke-VsDevShell $BuildArch
2604
+ Invoke-Program ninja.exe - C (Get-ProjectBinaryCache $BuildArch BuildTools) FileCheck not
2605
+ }
2590
2606
2591
- $Targets = @ (" default" , " test-llbuild" )
2592
- $TestingDefines = @ {
2593
- FILECHECK_EXECUTABLE = ([IO.Path ]::Combine((Get-ProjectBinaryCache $BuildArch BuildTools), " bin" , " FileCheck.exe" ));
2594
- LIT_EXECUTABLE = " $SourceCache \llvm-project\llvm\utils\lit\lit.py" ;
2595
- }
2596
- $env: Path = " $env: Path ;$UnixToolsBinDir "
2597
- $env: AR = ([IO.Path ]::Combine((Get-ProjectBinaryCache $BuildArch Compilers), " bin" , " llvm-ar.exe" ))
2598
- $env: CLANG = ([IO.Path ]::Combine((Get-ProjectBinaryCache $BuildArch Compilers), " bin" , " clang.exe" ))
2599
- $InstallPath = " "
2600
- } else {
2601
- $Targets = @ ()
2602
- $TestingDefines = @ {}
2603
- $InstallPath = " $ ( $Arch.ToolchainInstallRoot ) \usr"
2604
- }
2607
+ Invoke-IsolatingEnvVars {
2608
+ $env: Path = " $env: Path ;$UnixToolsBinDir "
2609
+ $env: AR = ([IO.Path ]::Combine((Get-ProjectBinaryCache $BuildArch Compilers), " bin" , " llvm-ar.exe" ))
2610
+ $env: CLANG = ([IO.Path ]::Combine((Get-ProjectBinaryCache $BuildArch Compilers), " bin" , " clang.exe" ))
2605
2611
2606
2612
Build-CMakeProject `
2607
2613
- Src $SourceCache \llbuild `
2608
- - Bin (Get-ProjectBinaryCache $Arch LLBuild) `
2609
- - InstallTo $InstallPath `
2610
- - Arch $Arch `
2614
+ - Bin (Get-ProjectBinaryCache $BuildArch LLBuild) `
2615
+ - Arch $BuildArch `
2611
2616
- Platform Windows `
2612
2617
- UseMSVCCompilers CXX `
2613
2618
- UseBuiltCompilers Swift `
2614
2619
- SwiftSDK (Get-SwiftSDK Windows) `
2615
- - BuildTargets $Targets `
2616
- - Defines ( $TestingDefines + @ {
2620
+ - BuildTargets default , test-llbuild `
2621
+ - Defines = @ {
2617
2622
BUILD_SHARED_LIBS = " YES" ;
2623
+ FILECHECK_EXECUTABLE = ([IO.Path ]::Combine((Get-ProjectBinaryCache $BuildArch BuildTools), " bin" , " FileCheck.exe" ));
2624
+ LIT_EXECUTABLE = " $SourceCache \llvm-project\llvm\utils\lit\lit.py" ;
2618
2625
LLBUILD_SUPPORT_BINDINGS = " Swift" ;
2619
2626
SQLite3_INCLUDE_DIR = " $LibraryRoot \sqlite-3.46.0\usr\include" ;
2620
2627
SQLite3_LIBRARY = " $LibraryRoot \sqlite-3.46.0\usr\lib\SQLite3.lib" ;
2621
- })
2628
+ }
2622
2629
}
2623
2630
}
2624
2631
@@ -3292,7 +3299,7 @@ if (-not $IsCrossCompiling) {
3292
3299
if ($Test -contains " testing" ) {
3293
3300
Build-Testing Windows $HostArch - Test
3294
3301
}
3295
- if ($Test -contains " llbuild" ) { Build -LLBuild $HostArch - Test }
3302
+ if ($Test -contains " llbuild" ) { Test -LLBuild }
3296
3303
if ($Test -contains " swiftpm" ) { Test-PackageManager }
3297
3304
if ($Test -contains " swift-format" ) { Test-Format }
3298
3305
if ($Test -contains " sourcekit-lsp" ) { Test-SourceKitLSP }
0 commit comments