Skip to content

Commit de5da07

Browse files
committed
utils: further refinements to LibraryRoot-less builds
Further refine the build after the `LibraryRoot` removal. The alterations here support the build to be generalised for cross-compilation without worrying about a central installation for the dependencies.
1 parent 1bff8cd commit de5da07

File tree

1 file changed

+27
-27
lines changed

1 file changed

+27
-27
lines changed

utils/build.ps1

Lines changed: 27 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1748,7 +1748,7 @@ function Get-CompilersDefines([Hashtable] $Platform, [switch] $Test) {
17481748
CLANG_TIDY_CONFUSABLE_CHARS_GEN = (Join-Path -Path $BuildTools -ChildPath "clang-tidy-confusable-chars-gen.exe");
17491749
CMAKE_FIND_PACKAGE_PREFER_CONFIG = "YES";
17501750
CMAKE_Swift_FLAGS = $SwiftFlags;
1751-
LibXml2_DIR = "$(Get-InstallDir $Platform)\Toolchains\$ProductVersion+$Variant\usr\lib\cmake\libxml2-2.11.5";
1751+
LibXml2_DIR = "$BinaryCache\$($Platform.Triple)\usr\lib\cmake\libxml2-2.11.5";
17521752
LLDB_PYTHON_EXE_RELATIVE_PATH = "python.exe";
17531753
LLDB_PYTHON_EXT_SUFFIX = ".pyd";
17541754
LLDB_PYTHON_RELATIVE_PATH = "lib/site-packages";
@@ -2006,7 +2006,7 @@ function Build-ZLib([Hashtable] $Platform) {
20062006
Build-CMakeProject `
20072007
-Src $SourceCache\zlib `
20082008
-Bin "$BinaryCache\$($Platform.Triple)\zlib" `
2009-
-InstallTo "$(Get-InstallDir $Platform)\Toolchains\$ProductVersion+$Variant\usr" `
2009+
-InstallTo "$BinaryCache\$($Platform.Triple)\usr" `
20102010
-Platform $Platform `
20112011
-UseMSVCCompilers C `
20122012
-Defines @{
@@ -2020,7 +2020,7 @@ function Build-XML2([Hashtable] $Platform) {
20202020
Build-CMakeProject `
20212021
-Src $SourceCache\libxml2 `
20222022
-Bin "$BinaryCache\$($Platform.Triple)\libxml2-2.11.5" `
2023-
-InstallTo "$(Get-InstallDir $Platform)\Toolchains\$ProductVersion+$Variant\usr" `
2023+
-InstallTo "$BinaryCache\$($Platform.Triple)\usr" `
20242024
-Platform $Platform `
20252025
-UseMSVCCompilers C,CXX `
20262026
-Defines @{
@@ -2076,7 +2076,7 @@ function Build-CURL([Hashtable] $Platform) {
20762076
Build-CMakeProject `
20772077
-Src $SourceCache\curl `
20782078
-Bin "$BinaryCache\$($Platform.Triple)\curl" `
2079-
-InstallTo "$(Get-InstallDir $Platform)\Toolchains\$ProductVersion+$Variant\usr" `
2079+
-InstallTo "$BinaryCache\$($Platform.Triple)\usr" `
20802080
-Platform $Platform `
20812081
-UseMSVCCompilers C `
20822082
-Defines ($PlatformDefines + @{
@@ -2166,8 +2166,8 @@ function Build-CURL([Hashtable] $Platform) {
21662166
USE_WIN32_IDN = if ($Platform.OS -eq [OS]::Windows) { "YES" } else { "NO" };
21672167
USE_WIN32_LARGE_FILES = if ($Platform.OS -eq [OS]::Windows) { "YES" } else { "NO" };
21682168
USE_WIN32_LDAP = "NO";
2169-
ZLIB_ROOT = "$(Get-InstallDir $Platform)\Toolchains\$ProductVersion+$Variant\usr";
2170-
ZLIB_LIBRARY = "$(Get-InstallDir $Platform)\Toolchains\$ProductVersion+$Variant\usr\lib\zlibstatic.lib";
2169+
ZLIB_ROOT = "$BinaryCache\$($Platform.Triple)\usr";
2170+
ZLIB_LIBRARY = "$BinaryCache\$($Platform.Triple)\usr\lib\zlibstatic.lib";
21712171
})
21722172
}
21732173

@@ -2391,14 +2391,14 @@ function Build-Foundation {
23912391
CMAKE_STATIC_LIBRARY_PREFIX_Swift = "lib";
23922392
ENABLE_TESTING = "NO";
23932393
FOUNDATION_BUILD_TOOLS = if ($Platform.OS -eq [OS]::Windows) { "YES" } else { "NO" };
2394-
CURL_DIR = "$(Get-InstallDir $Platform)\Toolchains\$ProductVersion+$Variant\usr\lib\cmake\CURL";
2395-
LibXml2_DIR = "$(Get-InstallDir $Platform)\Toolchains\$ProductVersion+$Variant\usr\lib\cmake\libxml2-2.11.5";
2394+
CURL_DIR = "$BinaryCache\$($Platform.Triple)\usr\lib\cmake\CURL";
2395+
LibXml2_DIR = "$BinaryCache\$($Platform.Triple)\usr\lib\cmake\libxml2-2.11.5";
23962396
ZLIB_LIBRARY = if ($Platform.OS -eq [OS]::Windows) {
2397-
"$(Get-InstallDir $Platform)\Toolchains\$ProductVersion+$Variant\usr\lib\zlibstatic.lib"
2397+
"$BinaryCache\$($Platform.Triple)\usr\lib\zlibstatic.lib"
23982398
} else {
2399-
"$(Get-InstallDir $Platform)\Toolchains\$ProductVersion+$Variant\usr\lib\libz.a"
2399+
"$BinaryCache\$($Platform.Triple)\usr\lib\libz.a"
24002400
};
2401-
ZLIB_INCLUDE_DIR = "$(Get-InstallDir $Platform)\Toolchains\$ProductVersion+$Variant\usr\include";
2401+
ZLIB_INCLUDE_DIR = "$BinaryCache\$($Platform.Triple)\usr\include";
24022402
dispatch_DIR = (Get-ProjectCMakeModules $Platform Dispatch);
24032403
SwiftSyntax_DIR = (Get-ProjectBinaryCache $HostPlatform Compilers);
24042404
_SwiftFoundation_SourceDIR = "$SourceCache\swift-foundation";
@@ -2418,11 +2418,11 @@ function Test-Foundation {
24182418

24192419
Invoke-IsolatingEnvVars {
24202420
$env:DISPATCH_INCLUDE_PATH="$(Get-SwiftSDK Windows)/usr/include"
2421-
$env:LIBXML_LIBRARY_PATH="$(Get-InstallDir $Platform)/Toolchains/$ProductVersion+$Variant/usr/lib"
2422-
$env:LIBXML_INCLUDE_PATH="$(Get-InstallDir $Platform)/Toolchains/$ProductVersion+$Variant/usr/include/libxml2"
2423-
$env:ZLIB_LIBRARY_PATH="$(Get-InstallDir $Platform)/Toolchains/$ProductVersion+$Variant/usr/lib"
2424-
$env:CURL_LIBRARY_PATH="$(Get-InstallDir $Platform)/Toolchains/$ProductVersion+$Variant/usr/lib"
2425-
$env:CURL_INCLUDE_PATH="$(Get-InstallDir $Platform)/Toolchains/$ProductVersion+$Variant/usr/include"
2421+
$env:LIBXML_LIBRARY_PATH="$BinaryCache/$($Platform.Triple)/usr/lib"
2422+
$env:LIBXML_INCLUDE_PATH="$BinaryCache/$($Platform.Triple)/usr/include/libxml2"
2423+
$env:ZLIB_LIBRARY_PATH="$BinaryCache/$($Platform.Triple)/usr/lib"
2424+
$env:CURL_LIBRARY_PATH="$BinaryCache/$($Platform.Triple)/usr/lib"
2425+
$env:CURL_INCLUDE_PATH="$BinaryCache/$($Platform.Triple)/usr/include"
24262426
Build-SPMProject `
24272427
-Action Test `
24282428
-Src $SourceCache\swift-corelibs-foundation `
@@ -2589,7 +2589,7 @@ function Build-SQLite([Hashtable] $Platform) {
25892589
Build-CMakeProject `
25902590
-Src $SourceCache\swift-toolchain-sqlite `
25912591
-Bin "$BinaryCache\$($Platform.Triple)\sqlite" `
2592-
-InstallTo "$(Get-InstallDir $Platform)\Toolchains\$ProductVersion+$Variant\usr" `
2592+
-InstallTo "$BinaryCache\$($Platform.Triple)\usr" `
25932593
-Platform $Platform `
25942594
-UseMSVCCompilers C `
25952595
-Defines @{
@@ -2631,8 +2631,8 @@ function Build-Build([Hashtable] $Platform) {
26312631
SwiftDriver_DIR = (Get-ProjectCMakeModules $Platform Driver);
26322632
SwiftSystem_DIR = (Get-ProjectCMakeModules $Platform System);
26332633
TSC_DIR = (Get-ProjectCMakeModules $Platform ToolsSupportCore);
2634-
SQLite3_INCLUDE_DIR = "$(Get-InstallDir $Platform)\Toolchains\$ProductVersion+$Variant\usr\include";
2635-
SQLite3_LIBRARY = "$(Get-InstallDir $Platform)\Toolchains\$ProductVersion+$Variant\usr\lib\SQLite3.lib";
2634+
SQLite3_INCLUDE_DIR = "$BinaryCache\$($Platform.Triple)\usr\include";
2635+
SQLite3_LIBRARY = "$BinaryCache\$($Platform.Triple)\usr\lib\SQLite3.lib";
26362636
} + $ArchSpecificOptions)
26372637
}
26382638

@@ -2662,8 +2662,8 @@ function Build-LLBuild([Hashtable] $Platform) {
26622662
-Defines @{
26632663
BUILD_SHARED_LIBS = "YES";
26642664
LLBUILD_SUPPORT_BINDINGS = "Swift";
2665-
SQLite3_INCLUDE_DIR = "$(Get-InstallDir $Platform)\Toolchains\$ProductVersion+$Variant\usr\include";
2666-
SQLite3_LIBRARY = "$(Get-InstallDir $Platform)\Toolchains\$ProductVersion+$Variant\usr\lib\SQLite3.lib";
2665+
SQLite3_INCLUDE_DIR = "$BinaryCache\$($Platform.Triple)\usr\include";
2666+
SQLite3_LIBRARY = "$BinaryCache\$($Platform.Triple)\usr\lib\SQLite3.lib";
26672667
}
26682668
}
26692669

@@ -2692,8 +2692,8 @@ function Test-LLBuild {
26922692
FILECHECK_EXECUTABLE = ([IO.Path]::Combine((Get-ProjectBinaryCache $BuildPlatform BuildTools), "bin", "FileCheck.exe"));
26932693
LIT_EXECUTABLE = "$SourceCache\llvm-project\llvm\utils\lit\lit.py";
26942694
LLBUILD_SUPPORT_BINDINGS = "Swift";
2695-
SQLite3_INCLUDE_DIR = "$(Get-InstallDir $Platform)\Toolchains\$ProductVersion+$Variant\usr\include";
2696-
SQLite3_LIBRARY = "$(Get-InstallDir $Platform)\Toolchains\$ProductVersion+$Variant\usr\lib\SQLite3.lib";
2695+
SQLite3_INCLUDE_DIR = "$BinaryCache\$($Platform.Triple)\usr\include";
2696+
SQLite3_LIBRARY = "$BinaryCache\$($Platform.Triple)\usr\lib\SQLite3.lib";
26972697
}
26982698
}
26992699
}
@@ -2727,8 +2727,8 @@ function Build-Driver([Hashtable] $Platform) {
27272727
TSC_DIR = (Get-ProjectCMakeModules $Platform ToolsSupportCore);
27282728
LLBuild_DIR = (Get-ProjectCMakeModules $Platform LLBuild);
27292729
ArgumentParser_DIR = (Get-ProjectCMakeModules $Platform ArgumentParser);
2730-
SQLite3_INCLUDE_DIR = "$(Get-InstallDir $Platform)\Toolchains\$ProductVersion+$Variant\usr\include";
2731-
SQLite3_LIBRARY = "$(Get-InstallDir $Platform)\Toolchains\$ProductVersion+$Variant\usr\lib\SQLite3.lib";
2730+
SQLite3_INCLUDE_DIR = "$BinaryCache\$($Platform.Triple)\usr\include";
2731+
SQLite3_LIBRARY = "$BinaryCache\$($Platform.Triple)\usr\lib\SQLite3.lib";
27322732
SWIFT_DRIVER_BUILD_TOOLS = "YES";
27332733
LLVM_DIR = "$(Get-ProjectBinaryCache $Platform Compilers)\lib\cmake\llvm";
27342734
Clang_DIR = "$(Get-ProjectBinaryCache $Platform Compilers)\lib\cmake\clang";
@@ -2822,8 +2822,8 @@ function Build-PackageManager([Hashtable] $Platform) {
28222822
SwiftASN1_DIR = (Get-ProjectCMakeModules $Platform ASN1);
28232823
SwiftCertificates_DIR = (Get-ProjectCMakeModules $Platform Certificates);
28242824
SwiftSyntax_DIR = (Get-ProjectCMakeModules $Platform Compilers);
2825-
SQLite3_INCLUDE_DIR = "$(Get-InstallDir $Platform)\Toolchains\$ProductVersion+$Variant\usr\include";
2826-
SQLite3_LIBRARY = "$(Get-InstallDir $Platform)\Toolchains\$ProductVersion+$Variant\usr\lib\SQLite3.lib";
2825+
SQLite3_INCLUDE_DIR = "$BinaryCache\$($Platform.Triple)\usr\include";
2826+
SQLite3_LIBRARY = "$BinaryCache\$($Platform.Triple)\usr\lib\SQLite3.lib";
28272827
}
28282828
}
28292829

0 commit comments

Comments
 (0)