Skip to content

Commit d9197cd

Browse files
committed
Rename Build module to NativeBuildSupport
This module is intended to contain code exclusive to the native build system, in order to help more clearly identify the delineation between the three build system backends, and identify layering violations and new higher-level abstractions that will need to be created to delegate to the appropriate backend (SourceKit support is one major example).
1 parent ed31e6e commit d9197cd

File tree

54 files changed

+85
-87
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

54 files changed

+85
-87
lines changed

Package.swift

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ let swiftPMDataModelProduct = (
7777
let swiftPMProduct = (
7878
name: "SwiftPM",
7979
targets: swiftPMDataModelProduct.targets + [
80-
"Build",
80+
"NativeBuildSupport",
8181
"LLBuildManifest",
8282
"SourceKitLSPAPI",
8383
"SPMLLBuild",
@@ -205,11 +205,11 @@ let package = Package(
205205
name: "SourceKitLSPAPI",
206206
dependencies: [
207207
"Basics",
208-
"Build",
209208
"PackageGraph",
210209
"PackageLoading",
211210
"PackageModel",
212211
"SPMBuildCore",
212+
"NativeBuildSupport",
213213
],
214214
exclude: ["CMakeLists.txt"],
215215
swiftSettings: commonExperimentalFeatures + [
@@ -451,29 +451,28 @@ let package = Package(
451451
]
452452
),
453453
.target(
454-
/** Builds Modules and Products */
455-
name: "Build",
454+
name: "DriverSupport",
456455
dependencies: [
457456
"Basics",
458-
"LLBuildManifest",
459-
"PackageGraph",
460-
"SPMBuildCore",
461-
"SPMLLBuild",
457+
"PackageModel",
462458
.product(name: "SwiftDriver", package: "swift-driver"),
463-
.product(name: "OrderedCollections", package: "swift-collections"),
464-
"DriverSupport",
465459
],
466460
exclude: ["CMakeLists.txt"],
467461
swiftSettings: commonExperimentalFeatures + [
468462
.unsafeFlags(["-static"]),
469463
]
470464
),
471465
.target(
472-
name: "DriverSupport",
466+
name: "NativeBuildSupport",
473467
dependencies: [
474468
"Basics",
475-
"PackageModel",
469+
"LLBuildManifest",
470+
"PackageGraph",
471+
"SPMBuildCore",
472+
"SPMLLBuild",
476473
.product(name: "SwiftDriver", package: "swift-driver"),
474+
.product(name: "OrderedCollections", package: "swift-collections"),
475+
"DriverSupport",
477476
],
478477
exclude: ["CMakeLists.txt"],
479478
swiftSettings: commonExperimentalFeatures + [
@@ -500,7 +499,9 @@ let package = Package(
500499
"PackageGraph",
501500
],
502501
exclude: ["CMakeLists.txt", "README.md"],
503-
swiftSettings: commonExperimentalFeatures
502+
swiftSettings: commonExperimentalFeatures + [
503+
.unsafeFlags(["-static"]),
504+
]
504505
),
505506
.target(
506507
/** High level functionality */
@@ -544,11 +545,11 @@ let package = Package(
544545
dependencies: [
545546
.product(name: "ArgumentParser", package: "swift-argument-parser"),
546547
"Basics",
547-
"Build",
548548
"PackageLoading",
549549
"PackageModel",
550550
"PackageGraph",
551551
"Workspace",
552+
"NativeBuildSupport",
552553
"XCBuildSupport",
553554
"SwiftBuildSupport",
554555
],
@@ -565,12 +566,12 @@ let package = Package(
565566
.product(name: "ArgumentParser", package: "swift-argument-parser"),
566567
.product(name: "OrderedCollections", package: "swift-collections"),
567568
"Basics",
568-
"Build",
569569
"CoreCommands",
570570
"PackageGraph",
571571
"PackageModelSyntax",
572572
"SourceControl",
573573
"Workspace",
574+
"NativeBuildSupport",
574575
"XCBuildSupport",
575576
"SwiftBuildSupport",
576577
] + swiftSyntaxDependencies(["SwiftIDEUtils"]),
@@ -666,10 +667,10 @@ let package = Package(
666667
.product(name: "ArgumentParser", package: "swift-argument-parser"),
667668
.product(name: "OrderedCollections", package: "swift-collections"),
668669
"Basics",
669-
"Build",
670670
"PackageGraph",
671671
"PackageLoading",
672672
"PackageModel",
673+
"NativeBuildSupport",
673674
"XCBuildSupport",
674675
"SwiftBuildSupport",
675676
],
@@ -749,7 +750,7 @@ let package = Package(
749750
/** SwiftPM internal build test suite support library */
750751
name: "_InternalBuildTestSupport",
751752
dependencies: [
752-
"Build",
753+
"NativeBuildSupport",
753754
"XCBuildSupport",
754755
"SwiftBuildSupport",
755756
"_InternalTestSupport"
@@ -830,7 +831,7 @@ let package = Package(
830831
),
831832
.testTarget(
832833
name: "BuildTests",
833-
dependencies: ["Build", "PackageModel", "Commands", "_InternalTestSupport", "_InternalBuildTestSupport"]
834+
dependencies: ["NativeBuildSupport", "PackageModel", "Commands", "_InternalTestSupport", "_InternalBuildTestSupport"]
834835
),
835836
.testTarget(
836837
name: "LLBuildManifestTests",
@@ -982,7 +983,7 @@ if ProcessInfo.processInfo.environment["SWIFTCI_DISABLE_SDK_DEPENDENT_TESTS"] ==
982983
dependencies: [
983984
"swift-package-manager",
984985
"Basics",
985-
"Build",
986+
"NativeBuildSupport",
986987
"Commands",
987988
"PackageModel",
988989
"PackageModelSyntax",

Sources/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,12 @@ add_compile_definitions(USE_IMPL_ONLY_IMPORTS)
1010

1111
add_subdirectory(_AsyncFileSystem)
1212
add_subdirectory(Basics)
13-
add_subdirectory(Build)
1413
add_subdirectory(Commands)
1514
add_subdirectory(CompilerPluginSupport)
1615
add_subdirectory(CoreCommands)
1716
add_subdirectory(DriverSupport)
1817
add_subdirectory(LLBuildManifest)
18+
add_subdirectory(NativeBuildSupport)
1919
add_subdirectory(PackageDescription)
2020
add_subdirectory(PackageFingerprint)
2121
add_subdirectory(PackageGraph)

Sources/Commands/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,9 +58,9 @@ target_link_libraries(Commands PUBLIC
5858
SwiftCollections::OrderedCollections
5959
ArgumentParser
6060
Basics
61-
Build
6261
CoreCommands
6362
LLBuildManifest
63+
NativeBuildSupport
6464
PackageGraph
6565
PackageModelSyntax
6666
SourceControl

Sources/Commands/PackageCommands/SwiftPackageCommand.swift

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ import PackageModel
2020
import SourceControl
2121
import SPMBuildCore
2222
import Workspace
23-
import XCBuildSupport
2423

2524
import enum TSCUtility.Diagnostics
2625

Sources/Commands/SwiftBuildCommand.swift

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,16 +13,15 @@
1313
import ArgumentParser
1414
import Basics
1515

16-
import Build
17-
1816
@_spi(SwiftPMInternal)
1917
import CoreCommands
2018

2119
import PackageGraph
2220

2321
import SPMBuildCore
24-
import XCBuildSupport
25-
import SwiftBuildSupport
22+
23+
private import NativeBuildSupport
24+
private import SwiftBuildSupport
2625

2726
import class Basics.AsyncProcess
2827
import var TSCBasic.stdoutStream

Sources/CoreCommands/BuildSystemSupport.swift

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

1313
import Basics
14-
import Build
1514
import SPMBuildCore
16-
import XCBuildSupport
17-
import SwiftBuildSupport
1815
import PackageGraph
1916
import Workspace
2017

18+
private import NativeBuildSupport
19+
private import XCBuildSupport
20+
private import SwiftBuildSupport
21+
2122
import class Basics.ObservabilityScope
2223
import struct PackageGraph.ModulesGraph
2324
import struct PackageLoading.FileRuleDescription

Sources/CoreCommands/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ add_library(CoreCommands
1414
target_link_libraries(CoreCommands PUBLIC
1515
ArgumentParser
1616
Basics
17-
Build
17+
NativeBuildSupport
1818
PackageGraph
1919
TSCBasic
2020
TSCUtility

Sources/Build/BuildManifest/LLBuildManifestBuilder+Product.swift renamed to Sources/NativeBuildSupport/BuildManifest/LLBuildManifestBuilder+Product.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -205,7 +205,7 @@ extension ResolvedProduct {
205205
guard let macroModule = self.modules.first else {
206206
throw InternalError("macro product \(self.name) has no targets")
207207
}
208-
return Build.getLLBuildTargetName(macro: macroModule, buildParameters: buildParameters)
208+
return NativeBuildSupport.getLLBuildTargetName(macro: macroModule, buildParameters: buildParameters)
209209
case .plugin:
210210
throw InternalError("unexpectedly asked for the llbuild target name of a plugin product")
211211
}

Sources/Build/CMakeLists.txt renamed to Sources/NativeBuildSupport/CMakeLists.txt

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
# See http://swift.org/LICENSE.txt for license information
77
# See http://swift.org/CONTRIBUTORS.txt for Swift project authors
88

9-
add_library(Build
9+
add_library(NativeBuildSupport
1010
BuildDescription/ClangModuleBuildDescription.swift
1111
BuildDescription/PluginBuildDescription.swift
1212
BuildDescription/ProductBuildDescription.swift
@@ -30,26 +30,26 @@ add_library(Build
3030
LLBuildProgressTracker.swift
3131
SwiftCompilerOutputParser.swift
3232
TestObservation.swift)
33-
target_link_libraries(Build PUBLIC
33+
target_link_libraries(NativeBuildSupport PUBLIC
3434
TSCBasic
3535
Basics
3636
SwiftCollections::OrderedCollections
3737
PackageGraph
3838
SPMBuildCore)
39-
target_link_libraries(Build PRIVATE
39+
target_link_libraries(NativeBuildSupport PRIVATE
4040
DriverSupport
4141
LLBuildManifest
4242
SPMLLBuild
4343
SwiftDriver)
44-
target_link_libraries(Build INTERFACE
44+
target_link_libraries(NativeBuildSupport INTERFACE
4545
llbuildSwift)
4646

4747
# NOTE(compnerd) workaround for CMake not setting up include flags yet
48-
set_target_properties(Build PROPERTIES
48+
set_target_properties(NativeBuildSupport PROPERTIES
4949
INTERFACE_INCLUDE_DIRECTORIES ${CMAKE_Swift_MODULE_DIRECTORY})
5050

51-
install(TARGETS Build
51+
install(TARGETS NativeBuildSupport
5252
ARCHIVE DESTINATION lib
5353
LIBRARY DESTINATION lib
5454
RUNTIME DESTINATION bin)
55-
set_property(GLOBAL APPEND PROPERTY SwiftPM_EXPORTS Build)
55+
set_property(GLOBAL APPEND PROPERTY SwiftPM_EXPORTS NativeBuildSupport)

Sources/SourceKitLSPAPI/BuildDescription.swift

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import TSCBasic
1616
// Ideally wouldn't expose these (it defeats the purpose of this module), but we should replace this entire API with
1717
// a BSP server, so this is good enough for now (and LSP is using all these types internally anyway).
1818
import Basics
19-
import Build
19+
import NativeBuildSupport
2020
import PackageGraph
2121
internal import PackageLoading
2222
internal import PackageModel
@@ -201,14 +201,14 @@ private struct WrappedSwiftTargetBuildDescription: BuildTarget {
201201
}
202202

203203
public struct BuildDescription {
204-
private let buildPlan: Build.BuildPlan
204+
private let buildPlan: NativeBuildSupport.BuildPlan
205205

206206
/// The inputs of the build plan so we don't need to re-compute them on every call to
207207
/// `fileAffectsSwiftOrClangBuildSettings`.
208-
private let inputs: [Build.BuildPlan.Input]
208+
private let inputs: [NativeBuildSupport.BuildPlan.Input]
209209

210210
/// Wrap an already constructed build plan.
211-
public init(buildPlan: Build.BuildPlan) {
211+
public init(buildPlan: NativeBuildSupport.BuildPlan) {
212212
self.buildPlan = buildPlan
213213
self.inputs = buildPlan.inputs
214214
}

Sources/SourceKitLSPAPI/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ add_library(SourceKitLSPAPI STATIC
1111
PluginTargetBuildDescription.swift)
1212
target_link_libraries(SourceKitLSPAPI PUBLIC
1313
Basics
14-
Build
14+
NativeBuildSupport
1515
PackageGraph
1616
SPMBuildCore)
1717
target_link_libraries(SourceKitLSPAPI PRIVATE

Sources/SwiftBuildSupport/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@ add_library(SwiftBuildSupport STATIC
1818
PIFBuilder.swift
1919
SwiftBuildSystem.swift)
2020
target_link_libraries(SwiftBuildSupport PUBLIC
21-
Build
2221
DriverSupport
22+
SPMBuildCore
2323
TSCBasic
2424
TSCUtility
2525
PackageGraph

Sources/XCBuildSupport/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@ add_library(XCBuildSupport STATIC
1414
XCBuildOutputParser.swift
1515
XcodeBuildSystem.swift)
1616
target_link_libraries(XCBuildSupport PUBLIC
17-
Build
1817
DriverSupport
18+
SPMBuildCore
1919
TSCBasic
2020
TSCUtility
2121
SwiftCollections::OrderedCollections

0 commit comments

Comments
 (0)