@@ -269,6 +269,7 @@ $AndroidARM64 = @{
269
269
CMakeName = " aarch64" ;
270
270
LLVMName = " aarch64" ;
271
271
LLVMTarget = " aarch64-unknown-linux-android$AndroidAPILevel " ;
272
+ ShortName = " arm64" ;
272
273
BuildID = 400 ;
273
274
BinaryCache = " $BinaryCache \aarch64" ;
274
275
PlatformInstallRoot = " $BinaryCache \arm64\Android.platform" ;
@@ -283,6 +284,7 @@ $AndroidARMv7 = @{
283
284
CMakeName = " armv7-a" ;
284
285
LLVMName = " armv7" ;
285
286
LLVMTarget = " armv7-unknown-linux-androideabi$AndroidAPILevel " ;
287
+ ShortName = " armv7" ;
286
288
BuildID = 500 ;
287
289
BinaryCache = " $BinaryCache \armv7" ;
288
290
PlatformInstallRoot = " $BinaryCache \armv7\Android.platform" ;
@@ -297,6 +299,7 @@ $AndroidX86 = @{
297
299
CMakeName = " i686" ;
298
300
LLVMName = " i686" ;
299
301
LLVMTarget = " i686-unknown-linux-android$AndroidAPILevel " ;
302
+ ShortName = " i686" ;
300
303
BuildID = 600 ;
301
304
BinaryCache = " $BinaryCache \i686" ;
302
305
PlatformInstallRoot = " $BinaryCache \x86\Android.platform" ;
@@ -311,6 +314,7 @@ $AndroidX64 = @{
311
314
CMakeName = " x86_64" ;
312
315
LLVMName = " x86_64" ;
313
316
LLVMTarget = " x86_64-unknown-linux-android$AndroidAPILevel " ;
317
+ ShortName = " x86_64" ;
314
318
BuildID = 700 ;
315
319
BinaryCache = " $BinaryCache \x86_64" ;
316
320
PlatformInstallRoot = " $BinaryCache \x64\Android.platform" ;
@@ -1056,36 +1060,44 @@ function Build-CMakeProject {
1056
1060
}
1057
1061
TryAdd- KeyValue $Defines CMAKE_Swift_COMPILER_TARGET $Arch.LLVMTarget.Replace (" $AndroidAPILevel " , " " )
1058
1062
if ($UseBuiltCompilers.Contains (" Swift" )) {
1059
- if ( $SwiftSDK -ne " " ) {
1060
- $SwiftArgs += @ ( " -sdk " , $SwiftSDK )
1061
- } else {
1062
- $RuntimeBinaryCache = Get-TargetProjectBinaryCache $Arch Runtime
1063
- $SwiftResourceDir = " ${RuntimeBinaryCache} \lib\swift "
1064
-
1065
- switch ( $Platform ) {
1066
- Windows {
1063
+ $RuntimeBinaryCache = Get-TargetProjectBinaryCache $Arch Runtime
1064
+ $SwiftResourceDir = " ${RuntimeBinaryCache} \lib\swift "
1065
+
1066
+ switch ( $Platform ) {
1067
+ Windows {
1068
+ if ( $SwiftSDK -ne " " ) {
1069
+ $SwiftArgs += @ ( " -sdk " , $SwiftSDK )
1070
+ } else {
1067
1071
$SwiftArgs += @ (
1068
1072
" -vfsoverlay" , " $RuntimeBinaryCache \stdlib\windows-vfs-overlay.yaml" ,
1069
1073
" -strict-implicit-module-context" ,
1070
1074
" -Xcc" , " -Xclang" , " -Xcc" , " -fbuiltin-headers-in-system-modules"
1071
1075
)
1076
+ $SwiftArgs += @ (" -resource-dir" , " $SwiftResourceDir " )
1077
+ $SwiftArgs += @ (" -L" , " $SwiftResourceDir \$ ( $Platform.ToString ().ToLowerInvariant()) " )
1072
1078
}
1073
- Android {
1074
- $androidNDKPath = Get-AndroidNDKPath
1079
+ }
1080
+ Android {
1081
+ $androidNDKPath = Get-AndroidNDKPath
1082
+ if ($SwiftSDK -ne " " ) {
1083
+ $SwiftArgs += @ (" -sdk" , $SwiftSDK )
1084
+ $SwiftArgs += @ (" -sysroot" , " $androidNDKPath \toolchains\llvm\prebuilt\windows-x86_64\sysroot" )
1085
+ } else {
1075
1086
$SwiftArgs += @ (" -sdk" , " $androidNDKPath \toolchains\llvm\prebuilt\windows-x86_64\sysroot" )
1076
- $SwiftArgs += @ (
1077
- " -Xclang-linker" , " -target" ,
1078
- " -Xclang-linker" , $Arch.LLVMTarget ,
1079
- " -Xclang-linker" , " --sysroot" ,
1080
- " -Xclang-linker" , " $androidNDKPath \toolchains\llvm\prebuilt\windows-x86_64\sysroot" ,
1081
- " -Xclang-linker" , " -resource-dir" ,
1082
- " -Xclang-linker" , " $androidNDKPath \toolchains\llvm\prebuilt\windows-x86_64\lib\clang\17"
1083
- )
1087
+ $SwiftArgs += @ (" -resource-dir" , " $SwiftResourceDir " )
1088
+ $SwiftArgs += @ (" -L" , " $SwiftResourceDir \$ ( $Platform.ToString ().ToLowerInvariant()) " )
1084
1089
}
1090
+ $SwiftArgs += @ (
1091
+ " -Xclang-linker" , " -target" ,
1092
+ " -Xclang-linker" , $Arch.LLVMTarget ,
1093
+ " -Xclang-linker" , " --sysroot" ,
1094
+ " -Xclang-linker" , " $androidNDKPath \toolchains\llvm\prebuilt\windows-x86_64\sysroot" ,
1095
+ " -Xclang-linker" , " -resource-dir" ,
1096
+ " -Xclang-linker" , " $androidNDKPath \toolchains\llvm\prebuilt\windows-x86_64\lib\clang\17"
1097
+ )
1085
1098
}
1086
- $SwiftArgs += @ (" -resource-dir" , " $SwiftResourceDir " )
1087
- $SwiftArgs += @ (" -L" , " $SwiftResourceDir \$ ( $Platform.ToString ().ToLowerInvariant()) " )
1088
1099
}
1100
+
1089
1101
} else {
1090
1102
$SwiftArgs += @ (" -sdk" , (Get-PinnedToolchainSDK ))
1091
1103
}
@@ -1775,6 +1787,12 @@ function Build-Foundation([Platform]$Platform, $Arch, [switch]$Test = $false) {
1775
1787
$Targets = @ (" default" )
1776
1788
$InstallPath = " $ ( $Arch.SDKInstallRoot ) \usr"
1777
1789
1790
+ $SDKRoot = if ($Platform -eq " Windows" ) {
1791
+ " "
1792
+ } else {
1793
+ (Get-Variable " ${Platform} $ ( $Arch.ShortName ) " - ValueOnly).SDKInstallRoot
1794
+ }
1795
+
1778
1796
Build-CMakeProject `
1779
1797
- Src $SourceCache \swift- corelibs- foundation `
1780
1798
- Bin $FoundationBinaryCache `
0 commit comments