Skip to content

Commit 14482e0

Browse files
committed
Fix build issues after conflicts resolution
1 parent d069f29 commit 14482e0

17 files changed

+110
-146
lines changed

Sources/Build/BuildDescription/ClangTargetBuildDescription.swift

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,6 @@ import struct SPMBuildCore.BuildParameters
1919
import struct SPMBuildCore.BuildToolPluginInvocationResult
2020
import struct SPMBuildCore.PrebuildCommandResult
2121

22-
@_spi(SwiftPMInternal)
23-
import SPMBuildCore
24-
2522
import enum TSCBasic.ProcessEnv
2623

2724
/// Target description for a Clang target i.e. C language family target.

Sources/Build/BuildDescription/ResolvedTarget+BuildDescription.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,11 @@
1313
import struct Basics.AbsolutePath
1414
import struct PackageGraph.ResolvedTarget
1515

16-
@_spi(SwiftPMInternal)
1716
import SPMBuildCore
1817

1918
extension ResolvedTarget {
2019
func tempsPath(_ buildParameters: BuildParameters) -> AbsolutePath {
21-
buildParameters.buildPath.appending(component: self.c99name + "\(self.buildTriple.suffix).build")
20+
let suffix = buildParameters.suffix(triple: self.buildTriple)
21+
return buildParameters.buildPath.appending(component: self.c99name + "\(suffix).build")
2222
}
2323
}

Sources/Build/BuildDescription/SwiftTargetBuildDescription.swift

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,8 @@ package final class SwiftTargetBuildDescription {
111111
}
112112

113113
var modulesPath: AbsolutePath {
114-
return self.defaultBuildParameters.buildPath.appending(component: "Modules\(self.target.buildTriple.suffix)")
114+
let suffix = self.defaultBuildParameters.suffix(triple: self.target.buildTriple)
115+
return self.defaultBuildParameters.buildPath.appending(component: "Modules\(suffix)")
115116
}
116117

117118
/// The path to the swiftmodule file after compilation.
@@ -644,7 +645,7 @@ package final class SwiftTargetBuildDescription {
644645

645646
args += self.package.packageNameArgument(
646647
target: self.target,
647-
isPackageNameSupported: self.buildParameters.driverParameters.isPackageAccessModifierSupported
648+
isPackageNameSupported: self.defaultBuildParameters.driverParameters.isPackageAccessModifierSupported
648649
)
649650
args += try self.macroArguments()
650651

@@ -673,7 +674,7 @@ package final class SwiftTargetBuildDescription {
673674
result.append(
674675
contentsOf: self.package.packageNameArgument(
675676
target: self.target,
676-
isPackageNameSupported: self.buildParameters.driverParameters.isPackageAccessModifierSupported
677+
isPackageNameSupported: self.defaultBuildParameters.driverParameters.isPackageAccessModifierSupported
677678
)
678679
)
679680
if !scanInvocation {

Sources/Build/BuildManifest/LLBuildManifestBuilder+Clang.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ extension LLBuildManifestBuilder {
9393
let additionalInputs = try addBuildToolPlugins(.clang(target))
9494

9595
// Create a phony node to represent the entire target.
96-
let targetName = target.target.getLLBuildTargetName(config: target.buildParameters.buildConfig)
96+
let targetName = target.target.getLLBuildTargetName(buildParameters: target.buildParameters)
9797
let output: Node = .virtual(targetName)
9898

9999
self.manifest.addNode(output, toTarget: targetName)

Sources/Build/BuildManifest/LLBuildManifestBuilder+Product.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ import struct LLBuildManifest.Node
1515

1616
extension LLBuildManifestBuilder {
1717
func createProductCommand(_ buildProduct: ProductBuildDescription) throws {
18-
let cmdName = try buildProduct.product.getCommandName(config: buildProduct.buildParameters.buildConfig)
18+
let cmdName = try buildProduct.product.getCommandName(buildParameters: buildProduct.buildParameters)
1919

2020
// Add dependency on Info.plist generation on Darwin platforms.
2121
let testInputs: [AbsolutePath]
@@ -34,7 +34,7 @@ extension LLBuildManifestBuilder {
3434
}
3535

3636
// Create a phony node to represent the entire target.
37-
let targetName = try buildProduct.product.getLLBuildTargetName(config: buildProduct.buildParameters.buildConfig)
37+
let targetName = try buildProduct.product.getLLBuildTargetName(buildParameters: buildProduct.buildParameters)
3838
let output: Node = .virtual(targetName)
3939

4040
let finalProductNode: Node
@@ -85,7 +85,7 @@ extension LLBuildManifestBuilder {
8585
outputPath: plistPath
8686
)
8787

88-
let cmdName = try buildProduct.product.getCommandName(config: buildProduct.buildParameters.buildConfig)
88+
let cmdName = try buildProduct.product.getCommandName(buildParameters: buildProduct.buildParameters)
8989
let codeSigningOutput = Node.virtual(targetName + "-CodeSigning")
9090
try self.manifest.addShellCmd(
9191
name: "\(cmdName)-entitlements",

Sources/Build/BuildManifest/LLBuildManifestBuilder+Swift.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -378,7 +378,7 @@ extension LLBuildManifestBuilder {
378378
cmdOutputs: [Node]
379379
) throws {
380380
let isLibrary = target.target.type == .library || target.target.type == .test
381-
let cmdName = target.target.getCommandName(config: target.defaultBuildParameters.buildConfig)
381+
let cmdName = target.target.getCommandName(buildParameters: target.defaultBuildParameters)
382382

383383
self.manifest.addWriteSourcesFileListCommand(sources: target.sources, sourcesFileListPath: target.sourcesFileListPath)
384384
self.manifest.addSwiftCmd(
@@ -491,7 +491,7 @@ extension LLBuildManifestBuilder {
491491

492492
// Depend on any required macro product's output.
493493
try target.requiredMacroProducts.forEach { macro in
494-
try inputs.append(.virtual(macro.getLLBuildTargetName(config: target.defaultBuildParameters.buildConfig)))
494+
try inputs.append(.virtual(macro.getLLBuildTargetName(buildParameters: target.defaultBuildParameters)))
495495
}
496496

497497
return inputs + additionalInputs
@@ -500,7 +500,7 @@ extension LLBuildManifestBuilder {
500500
/// Adds a top-level phony command that builds the entire target.
501501
private func addTargetCmd(_ target: SwiftTargetBuildDescription, cmdOutputs: [Node]) {
502502
// Create a phony node to represent the entire target.
503-
let targetName = target.target.getLLBuildTargetName(config: target.defaultBuildParameters.buildConfig)
503+
let targetName = target.target.getLLBuildTargetName(buildParameters: target.defaultBuildParameters)
504504
let targetOutput: Node = .virtual(targetName)
505505

506506
self.manifest.addNode(targetOutput, toTarget: targetName)

Sources/Build/BuildManifest/LLBuildManifestBuilder.swift

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,6 @@ import Basics
1414
import LLBuildManifest
1515
import PackageGraph
1616
import PackageModel
17-
18-
@_spi(SwiftPMInternal)
1917
import SPMBuildCore
2018

2119
#if USE_IMPL_ONLY_IMPORTS
@@ -319,31 +317,33 @@ extension TargetBuildDescription {
319317
}
320318

321319
extension ResolvedTarget {
322-
package func getCommandName(config: String) -> String {
323-
"C." + self.getLLBuildTargetName(config: config)
320+
package func getCommandName(buildParameters: BuildParameters) -> String {
321+
"C." + self.getLLBuildTargetName(buildParameters: buildParameters)
324322
}
325323

326-
public func getLLBuildTargetName(config: String) -> String {
327-
"\(self.name)-\(config)\(self.buildTriple.suffix).module"
324+
package func getLLBuildTargetName(buildParameters: BuildParameters) -> String {
325+
"\(self.name)-\(buildParameters.buildConfig)\(buildParameters.suffix(triple: self.buildTriple)).module"
328326
}
329327

330-
public func getLLBuildResourcesCmdName(config: String) -> String {
328+
package func getLLBuildResourcesCmdName(config: String) -> String {
331329
"\(self.name)-\(config).module-resources"
332330
}
333331
}
334332

335333
extension ResolvedProduct {
336-
public func getLLBuildTargetName(config: String) throws -> String {
337-
let potentialExecutableTargetName = "\(name)-\(config)\(self.buildTriple.suffix).exe"
338-
let potentialLibraryTargetName = "\(name)-\(config)\(self.buildTriple.suffix).dylib"
334+
package func getLLBuildTargetName(buildParameters: BuildParameters) throws -> String {
335+
let config = buildParameters.buildConfig
336+
let suffix = buildParameters.suffix(triple: self.buildTriple)
337+
let potentialExecutableTargetName = "\(name)-\(config)\(suffix).exe"
338+
let potentialLibraryTargetName = "\(name)-\(config)\(suffix).dylib"
339339

340340
switch type {
341341
case .library(.dynamic):
342342
return potentialLibraryTargetName
343343
case .test:
344-
return "\(name)-\(config)\(self.buildTriple.suffix).test"
344+
return "\(name)-\(config)\(suffix).test"
345345
case .library(.static):
346-
return "\(name)-\(config)\(self.buildTriple.suffix).a"
346+
return "\(name)-\(config)\(suffix).a"
347347
case .library(.automatic):
348348
throw InternalError("automatic library not supported")
349349
case .executable, .snippet:
@@ -359,8 +359,8 @@ extension ResolvedProduct {
359359
}
360360
}
361361

362-
public func getCommandName(config: String) throws -> String {
363-
try "C.\(self.getLLBuildTargetName(config: config))\(self.buildTriple.suffix)"
362+
public func getCommandName(buildParameters: BuildParameters) throws -> String {
363+
try "C.\(self.getLLBuildTargetName(buildParameters: buildParameters))\(buildParameters.suffix(triple: self.buildTriple))"
364364
}
365365
}
366366

Sources/Build/BuildOperation.swift

Lines changed: 8 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -11,19 +11,11 @@
1111
//===----------------------------------------------------------------------===//
1212

1313
import Basics
14-
15-
import Build
16-
1714
import LLBuildManifest
18-
19-
@_spi(SwiftPMInternal)
2015
import PackageGraph
21-
2216
import PackageLoading
2317
import PackageModel
24-
2518
import SPMBuildCore
26-
2719
import SPMLLBuild
2820
import Foundation
2921

@@ -529,7 +521,7 @@ package final class BuildOperation: PackageStructureDelegate, SPMBuildCore.Build
529521
let graph = try getPackageGraph()
530522
if let result = subset.llbuildTargetName(
531523
for: graph,
532-
config: self.productsBuildParameters.configuration.dirname,
524+
buildParameters: self.productsBuildParameters,
533525
observabilityScope: self.observabilityScope
534526
) {
535527
return result
@@ -910,9 +902,11 @@ extension BuildSubset {
910902
}
911903

912904
/// Returns the name of the llbuild target that corresponds to the build subset.
913-
func llbuildTargetName(for graph: ModulesGraph, config: String, observabilityScope: ObservabilityScope)
914-
-> String?
915-
{
905+
func llbuildTargetName(
906+
for graph: ModulesGraph,
907+
buildParameters: BuildParameters,
908+
observabilityScope: ObservabilityScope
909+
) -> String? {
916910
switch self {
917911
case .allExcludingTests:
918912
return LLBuildManifestBuilder.TargetKind.main.targetName
@@ -933,14 +927,14 @@ extension BuildSubset {
933927
return LLBuildManifestBuilder.TargetKind.main.targetName
934928
}
935929
return observabilityScope.trap {
936-
try product.getLLBuildTargetName(config: config)
930+
try product.getLLBuildTargetName(buildParameters: buildParameters)
937931
}
938932
case .target(let targetName):
939933
guard let target = graph.allTargets.first(where: { $0.name == targetName }) else {
940934
observabilityScope.emit(error: "no target named '\(targetName)'")
941935
return nil
942936
}
943-
return target.getLLBuildTargetName(config: config)
937+
return target.getLLBuildTargetName(buildParameters: buildParameters)
944938
}
945939
}
946940
}

Sources/Build/BuildPlan/BuildPlan+Test.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ extension BuildPlan {
2828
static func makeDerivedTestTargets(
2929
destinationBuildParameters: BuildParameters,
3030
toolsBuildParameters: BuildParameters,
31-
_ graph: PackageGraph,
31+
_ graph: ModulesGraph,
3232
shouldDisableSandbox: Bool,
3333
_ fileSystem: FileSystem,
3434
_ observabilityScope: ObservabilityScope

Sources/Commands/PackageCommands/PluginCommand.swift

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ import SPMBuildCore
1919

2020
import Dispatch
2121

22-
@_spi(SwiftPMInternal)
2322
import PackageGraph
2423

2524
import PackageModel
@@ -325,7 +324,7 @@ struct PluginCommand: SwiftCommand {
325324
var buildToolsGraph = packageGraph
326325
try buildToolsGraph.updateBuildTripleRecursively(.tools)
327326

328-
let buildParameters = try swiftTool.toolsBuildParameters
327+
let buildParameters = try swiftCommandState.toolsBuildParameters
329328
// Build or bring up-to-date any executable host-side tools on which this plugin depends. Add them and any binary dependencies to the tool-names-to-path map.
330329
let buildSystem = try swiftCommandState.createBuildSystem(
331330
explicitBuildSystem: .native,
@@ -339,7 +338,7 @@ struct PluginCommand: SwiftCommand {
339338

340339
let accessibleTools = try plugin.processAccessibleTools(
341340
packageGraph: buildToolsGraph,
342-
fileSystem: swiftTool.fileSystem,
341+
fileSystem: swiftCommandState.fileSystem,
343342
environment: buildParameters.buildEnvironment,
344343
for: try pluginScriptRunner.hostTriple
345344
) { name, _ in

0 commit comments

Comments
 (0)