File tree Expand file tree Collapse file tree 10 files changed +45
-31
lines changed Expand file tree Collapse file tree 10 files changed +45
-31
lines changed Original file line number Diff line number Diff line change @@ -37,4 +37,3 @@ add_subdirectory(swift-package)
3737add_subdirectory (swift-run)
3838add_subdirectory (swift-test )
3939add_subdirectory (Workspace)
40- add_subdirectory (XCBuildSupport)
Original file line number Diff line number Diff line change @@ -59,8 +59,11 @@ target_link_libraries(Commands PUBLIC
5959 SourceControl
6060 TSCBasic
6161 TSCUtility
62- Workspace
63- XCBuildSupport)
62+ Workspace)
63+
64+ target_compile_definitions (Commands
65+ PRIVATE DISABLE_XCBUILD_SUPPORT)
66+
6467target_link_libraries (Commands PRIVATE
6568 DriverSupport
6669 $<$<NOT :$<PLATFORM_ID:Darwin>>:FoundationXML>)
Original file line number Diff line number Diff line change @@ -15,7 +15,10 @@ import Basics
1515import CoreCommands
1616import Foundation
1717import PackageModel
18+
19+ #if !DISABLE_XCBUILD_SUPPORT
1820import XCBuildSupport
21+ #endif
1922
2023struct DumpSymbolGraph : SwiftCommand {
2124 static let configuration = CommandConfiguration (
@@ -136,6 +139,7 @@ struct DumpPIF: SwiftCommand {
136139 var preserveStructure : Bool = false
137140
138141 func run( _ swiftTool: SwiftTool ) throws {
142+ #if !DISABLE_XCBUILD_SUPPORT
139143 let graph = try swiftTool. loadPackageGraph ( )
140144 let pif = try PIFBuilder . generatePIF (
141145 buildParameters: swiftTool. productsBuildParameters,
@@ -144,6 +148,9 @@ struct DumpPIF: SwiftCommand {
144148 observabilityScope: swiftTool. observabilityScope,
145149 preservePIFModelStructure: preserveStructure)
146150 print ( pif)
151+ #else
152+ fatalError ( " This subcommand is not available on the current platform " )
153+ #endif
147154 }
148155
149156 var toolWorkspaceConfiguration : ToolWorkspaceConfiguration {
Original file line number Diff line number Diff line change @@ -20,7 +20,10 @@ import PackageModel
2020import SourceControl
2121import SPMBuildCore
2222import Workspace
23+
24+ #if !DISABLE_XCBUILD_SUPPORT
2325import XCBuildSupport
26+ #endif
2427
2528import enum TSCUtility. Diagnostics
2629
Original file line number Diff line number Diff line change @@ -16,7 +16,10 @@ import Build
1616import CoreCommands
1717import PackageGraph
1818import SPMBuildCore
19+
20+ #if !DISABLE_XCBUILD_SUPPORT
1921import XCBuildSupport
22+ #endif
2023
2124import class TSCBasic. Process
2225import var TSCBasic. stdoutStream
Original file line number Diff line number Diff line change 1212
1313import Build
1414import SPMBuildCore
15+
16+ #if !DISABLE_XCBUILD_SUPPORT
1517import XCBuildSupport
18+ #endif
1619
1720import class Basics. ObservabilityScope
1821import struct PackageGraph. PackageGraph
@@ -60,6 +63,7 @@ private struct NativeBuildSystemFactory: BuildSystemFactory {
6063 }
6164}
6265
66+ #if !DISABLE_XCBUILD_SUPPORT
6367private struct XcodeBuildSystemFactory : BuildSystemFactory {
6468 let swiftTool : SwiftTool
6569
@@ -87,12 +91,19 @@ private struct XcodeBuildSystemFactory: BuildSystemFactory {
8791 )
8892 }
8993}
94+ #endif
9095
9196extension SwiftTool {
9297 public var defaultBuildSystemProvider : BuildSystemProvider {
98+ #if !DISABLE_XCBUILD_SUPPORT
9399 . init( providers: [
94100 . native: NativeBuildSystemFactory ( swiftTool: self ) ,
95101 . xcode: XcodeBuildSystemFactory ( swiftTool: self )
96102 ] )
103+ #else
104+ . init( providers: [
105+ . native: NativeBuildSystemFactory ( swiftTool: self ) ,
106+ ] )
107+ #endif
97108 }
98109}
Original file line number Diff line number Diff line change @@ -18,8 +18,11 @@ target_link_libraries(CoreCommands PUBLIC
1818 PackageGraph
1919 TSCBasic
2020 TSCUtility
21- Workspace
22- XCBuildSupport)
21+ Workspace)
22+
23+ target_compile_definitions (CoreCommands
24+ PRIVATE DISABLE_XCBUILD_SUPPORT)
25+
2326target_link_libraries (CoreCommands PRIVATE
2427 DriverSupport
2528 $<$<NOT :$<PLATFORM_ID:Darwin>>:FoundationXML>)
Load Diff This file was deleted.
Original file line number Diff line number Diff line change @@ -16,5 +16,7 @@ target_link_libraries(swift-bootstrap PRIVATE
1616 PackageLoading
1717 PackageModel
1818 TSCBasic
19- TSCUtility
20- XCBuildSupport)
19+ TSCUtility)
20+
21+ target_compile_definitions (swift-bootstrap
22+ PRIVATE DISABLE_XCBUILD_SUPPORT)
Original file line number Diff line number Diff line change @@ -20,7 +20,10 @@ import PackageGraph
2020import PackageLoading
2121import PackageModel
2222import SPMBuildCore
23+
24+ #if !DISABLE_XCBUILD_SUPPORT
2325import XCBuildSupport
26+ #endif
2427
2528import struct TSCBasic. KeyedPair
2629import func TSCBasic. topologicalSort
@@ -322,6 +325,7 @@ struct SwiftBootstrapBuildTool: ParsableCommand {
322325 observabilityScope: self . observabilityScope
323326 )
324327 case . xcode:
328+ #if !DISABLE_XCBUILD_SUPPORT
325329 return try XcodeBuildSystem (
326330 buildParameters: buildParameters,
327331 packageGraphLoader: packageGraphLoader,
@@ -330,6 +334,9 @@ struct SwiftBootstrapBuildTool: ParsableCommand {
330334 fileSystem: self . fileSystem,
331335 observabilityScope: self . observabilityScope
332336 )
337+ #else
338+ fatalError ( " SwiftPM was built without XCBuild support " )
339+ #endif
333340 }
334341 }
335342
You can’t perform that action at this time.
0 commit comments