Skip to content

Commit c96df8e

Browse files
committed
[SwiftPMBuildSystem] Adjust BuildParameters use to indicate a destination
The change is introduced by swiftlang/swift-package-manager#7593 (cherry picked from commit 12b848e)
1 parent 047c914 commit c96df8e

File tree

2 files changed

+22
-11
lines changed

2 files changed

+22
-11
lines changed

Sources/SKSwiftPMWorkspace/SwiftPMBuildSystem.swift

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,8 @@ public actor SwiftPMBuildSystem {
108108
public var projectRoot: TSCAbsolutePath
109109
private var modulesGraph: ModulesGraph
110110
private let workspace: Workspace
111-
@_spi(Testing) public let buildParameters: BuildParameters
111+
@_spi(Testing) public let toolsBuildParameters: BuildParameters
112+
@_spi(Testing) public let destinationBuildParameters: BuildParameters
112113
private let fileSystem: FileSystem
113114
private let toolchainRegistry: ToolchainRegistry
114115

@@ -215,7 +216,16 @@ public actor SwiftPMBuildSystem {
215216
buildConfiguration = .release
216217
}
217218

218-
self.buildParameters = try BuildParameters(
219+
self.toolsBuildParameters = try BuildParameters(
220+
destination: .host,
221+
dataPath: location.scratchDirectory.appending(component: toolchain.targetTriple.platformBuildPathComponent),
222+
configuration: buildConfiguration,
223+
toolchain: toolchain,
224+
flags: buildSetup.flags
225+
)
226+
227+
self.destinationBuildParameters = try BuildParameters(
228+
destination: .target,
219229
dataPath: location.scratchDirectory.appending(component: toolchain.targetTriple.platformBuildPathComponent),
220230
configuration: buildConfiguration,
221231
toolchain: toolchain,
@@ -296,7 +306,8 @@ extension SwiftPMBuildSystem {
296306
)
297307

298308
let plan = try BuildPlan(
299-
buildParameters: buildParameters,
309+
productsBuildParameters: destinationBuildParameters,
310+
toolsBuildParameters: toolsBuildParameters,
300311
graph: modulesGraph,
301312
fileSystem: fileSystem,
302313
observabilityScope: observabilitySystem.topScope
@@ -368,12 +379,12 @@ extension SwiftPMBuildSystem: SKCore.BuildSystem {
368379
public nonisolated var supportsPreparation: Bool { true }
369380

370381
public var buildPath: TSCAbsolutePath {
371-
return TSCAbsolutePath(buildParameters.buildPath)
382+
return TSCAbsolutePath(destinationBuildParameters.buildPath)
372383
}
373384

374385
public var indexStorePath: TSCAbsolutePath? {
375-
return buildParameters.indexStoreMode == .off
376-
? nil : TSCAbsolutePath(buildParameters.indexStore)
386+
return destinationBuildParameters.indexStoreMode == .off
387+
? nil : TSCAbsolutePath(destinationBuildParameters.indexStore)
377388
}
378389

379390
public var indexDatabasePath: TSCAbsolutePath? {

Tests/SKSwiftPMWorkspaceTests/SwiftPMBuildSystemTests.swift

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@ final class SwiftPMBuildSystemTests: XCTestCase {
147147
try await swiftpmBuildSystem.generateBuildGraph(allowFileSystemWrites: false)
148148

149149
let aswift = packageRoot.appending(components: "Sources", "lib", "a.swift")
150-
let hostTriple = await swiftpmBuildSystem.buildParameters.triple
150+
let hostTriple = await swiftpmBuildSystem.destinationBuildParameters.triple
151151
let build = buildPath(root: packageRoot, platform: hostTriple.platformBuildPathComponent)
152152

153153
assertEqual(await swiftpmBuildSystem.buildPath, build)
@@ -275,7 +275,7 @@ final class SwiftPMBuildSystemTests: XCTestCase {
275275
try await swiftpmBuildSystem.generateBuildGraph(allowFileSystemWrites: false)
276276

277277
let aswift = packageRoot.appending(components: "Sources", "lib", "a.swift")
278-
let hostTriple = await swiftpmBuildSystem.buildParameters.triple
278+
let hostTriple = await swiftpmBuildSystem.destinationBuildParameters.triple
279279
let build = buildPath(root: packageRoot, config: config, platform: hostTriple.platformBuildPathComponent)
280280

281281
assertEqual(await swiftpmBuildSystem.buildPath, build)
@@ -514,7 +514,7 @@ final class SwiftPMBuildSystemTests: XCTestCase {
514514
let acxx = packageRoot.appending(components: "Sources", "lib", "a.cpp")
515515
let bcxx = packageRoot.appending(components: "Sources", "lib", "b.cpp")
516516
let header = packageRoot.appending(components: "Sources", "lib", "include", "a.h")
517-
let hostTriple = await swiftpmBuildSystem.buildParameters.triple
517+
let hostTriple = await swiftpmBuildSystem.destinationBuildParameters.triple
518518
let build = buildPath(root: packageRoot, platform: hostTriple.platformBuildPathComponent)
519519

520520
assertEqual(await swiftpmBuildSystem.buildPath, build)
@@ -596,7 +596,7 @@ final class SwiftPMBuildSystemTests: XCTestCase {
596596
let arguments = try await unwrap(swiftpmBuildSystem.buildSettings(for: aswift.asURI, language: .swift))
597597
.compilerArguments
598598
assertArgumentsContain("-target", arguments: arguments) // Only one!
599-
let hostTriple = await swiftpmBuildSystem.buildParameters.triple
599+
let hostTriple = await swiftpmBuildSystem.destinationBuildParameters.triple
600600

601601
#if os(macOS)
602602
assertArgumentsContain(
@@ -829,7 +829,7 @@ final class SwiftPMBuildSystemTests: XCTestCase {
829829
try await swiftpmBuildSystem.generateBuildGraph(allowFileSystemWrites: false)
830830

831831
let aswift = packageRoot.appending(components: "Plugins", "MyPlugin", "a.swift")
832-
let hostTriple = await swiftpmBuildSystem.buildParameters.triple
832+
let hostTriple = await swiftpmBuildSystem.destinationBuildParameters.triple
833833
let build = buildPath(root: packageRoot, platform: hostTriple.platformBuildPathComponent)
834834

835835
assertEqual(await swiftpmBuildSystem.buildPath, build)

0 commit comments

Comments
 (0)