8
8
9
9
See http://swift.org/LICENSE.txt for license information
10
10
See http://swift.org/CONTRIBUTORS.txt for Swift project authors
11
- */
11
+ */
12
12
13
- import PackageDescription
14
13
import class Foundation. ProcessInfo
14
+ import PackageDescription
15
15
16
16
// We default to a 10.10 minimum deployment target for clients of libSwiftPM,
17
17
// but allow overriding it when building for a toolchain.
@@ -46,7 +46,7 @@ let package = Package(
46
46
" PackageGraph " ,
47
47
" Build " ,
48
48
" Xcodeproj " ,
49
- " Workspace "
49
+ " Workspace " ,
50
50
]
51
51
) ,
52
52
. library(
@@ -62,7 +62,7 @@ let package = Package(
62
62
" PackageGraph " ,
63
63
" Build " ,
64
64
" Xcodeproj " ,
65
- " Workspace "
65
+ " Workspace " ,
66
66
]
67
67
) ,
68
68
. library(
@@ -76,7 +76,7 @@ let package = Package(
76
76
" PackageLoading " ,
77
77
" PackageGraph " ,
78
78
" Xcodeproj " ,
79
- " Workspace "
79
+ " Workspace " ,
80
80
]
81
81
) ,
82
82
@@ -90,11 +90,21 @@ let package = Package(
90
90
type: . dynamic,
91
91
targets: [ " PackageDescription " ]
92
92
) ,
93
-
93
+
94
94
. library(
95
95
name: " PackageCollectionsModel " ,
96
96
targets: [ " PackageCollectionsModel " ]
97
97
) ,
98
+
99
+ . library(
100
+ name: " SwiftPMPackageCollections " ,
101
+ targets: [
102
+ " PackageCollections " ,
103
+ " PackageCollectionsModel " ,
104
+ " PackageCollectionsSigning " ,
105
+ " PackageModel " ,
106
+ ]
107
+ ) ,
98
108
] ,
99
109
targets: [
100
110
// The `PackageDescription` targets define the API which is available to
@@ -106,195 +116,238 @@ let package = Package(
106
116
name: " PackageDescription " ,
107
117
swiftSettings: [
108
118
. define( " PACKAGE_DESCRIPTION_4_2 " ) ,
109
- ] ) ,
119
+ ]
120
+ ) ,
110
121
111
122
// MARK: SwiftPM specific support libraries
112
123
113
124
. target(
114
125
name: " Basics " ,
115
- dependencies: [ " SwiftToolsSupport-auto " ] ) ,
126
+ dependencies: [ " SwiftToolsSupport-auto " ]
127
+ ) ,
116
128
117
129
. target(
118
130
/** The llbuild manifest model */
119
131
name: " LLBuildManifest " ,
120
- dependencies: [ " SwiftToolsSupport-auto " , " Basics " ] ) ,
132
+ dependencies: [ " SwiftToolsSupport-auto " , " Basics " ]
133
+ ) ,
121
134
122
135
. target(
123
136
/** Source control operations */
124
137
name: " SourceControl " ,
125
- dependencies: [ " SwiftToolsSupport-auto " , " Basics " ] ) ,
138
+ dependencies: [ " SwiftToolsSupport-auto " , " Basics " ]
139
+ ) ,
126
140
. target(
127
141
/** Shim for llbuild library */
128
142
name: " SPMLLBuild " ,
129
- dependencies: [ " SwiftToolsSupport-auto " , " Basics " ] ) ,
143
+ dependencies: [ " SwiftToolsSupport-auto " , " Basics " ]
144
+ ) ,
130
145
131
146
// MARK: Project Model
132
147
133
148
. target(
134
149
/** Primitive Package model objects */
135
150
name: " PackageModel " ,
136
- dependencies: [ " SwiftToolsSupport-auto " , " Basics " ] ) ,
151
+ dependencies: [ " SwiftToolsSupport-auto " , " Basics " ]
152
+ ) ,
137
153
. target(
138
154
/** Package model conventions and loading support */
139
155
name: " PackageLoading " ,
140
- dependencies: [ " SwiftToolsSupport-auto " , " Basics " , " PackageModel " , " SourceControl " ] ) ,
156
+ dependencies: [ " SwiftToolsSupport-auto " , " Basics " , " PackageModel " , " SourceControl " ]
157
+ ) ,
141
158
142
159
// MARK: Package Dependency Resolution
143
160
144
161
. target(
145
162
/** Data structures and support for complete package graphs */
146
163
name: " PackageGraph " ,
147
- dependencies: [ " SwiftToolsSupport-auto " , " Basics " , " PackageLoading " , " PackageModel " , " SourceControl " ] ) ,
164
+ dependencies: [ " SwiftToolsSupport-auto " , " Basics " , " PackageLoading " , " PackageModel " , " SourceControl " ]
165
+ ) ,
148
166
149
167
// MARK: Package Collections
150
-
168
+
151
169
. target(
152
170
/** Package collections models */
153
171
name: " PackageCollectionsModel " ,
154
- dependencies: [ ] ) ,
155
-
172
+ dependencies: [ ]
173
+ ) ,
174
+
156
175
. target(
157
- /** Package collections signing */
158
- name: " PackageCollectionsSigning " ,
159
- dependencies: [ " PackageCollectionsModel " , " Crypto " , " Basics " ] ) ,
176
+ /** Package collections signing */
177
+ name: " PackageCollectionsSigning " ,
178
+ dependencies: [ " PackageCollectionsModel " , " Crypto " , " Basics " ]
179
+ ) ,
160
180
161
181
. target(
162
182
/** Data structures and support for package collections */
163
183
name: " PackageCollections " ,
164
- dependencies: [ " SwiftToolsSupport-auto " , " Basics " , " PackageModel " , " SourceControl " , " PackageCollectionsModel " ] ) ,
184
+ dependencies: [ " SwiftToolsSupport-auto " , " Basics " , " PackageModel " , " SourceControl " , " PackageCollectionsModel " ]
185
+ ) ,
165
186
166
187
// MARK: Package Manager Functionality
167
188
168
189
. target(
169
190
/** Builds Modules and Products */
170
191
name: " SPMBuildCore " ,
171
- dependencies: [ " SwiftToolsSupport-auto " , " Basics " , " PackageGraph " ] ) ,
192
+ dependencies: [ " SwiftToolsSupport-auto " , " Basics " , " PackageGraph " ]
193
+ ) ,
172
194
. target(
173
195
/** Builds Modules and Products */
174
196
name: " Build " ,
175
- dependencies: [ " SwiftToolsSupport-auto " , " Basics " , " SPMBuildCore " , " PackageGraph " , " LLBuildManifest " , " SwiftDriver " , " SPMLLBuild " ] ) ,
197
+ dependencies: [ " SwiftToolsSupport-auto " , " Basics " , " SPMBuildCore " , " PackageGraph " , " LLBuildManifest " , " SwiftDriver " , " SPMLLBuild " ]
198
+ ) ,
176
199
. target(
177
200
/** Support for building using Xcode's build system */
178
201
name: " XCBuildSupport " ,
179
- dependencies: [ " SPMBuildCore " , " PackageGraph " ] ) ,
202
+ dependencies: [ " SPMBuildCore " , " PackageGraph " ]
203
+ ) ,
180
204
181
205
. target(
182
206
/** Generates Xcode projects */
183
207
name: " Xcodeproj " ,
184
- dependencies: [ " SwiftToolsSupport-auto " , " Basics " , " PackageGraph " ] ) ,
208
+ dependencies: [ " SwiftToolsSupport-auto " , " Basics " , " PackageGraph " ]
209
+ ) ,
185
210
. target(
186
211
/** High level functionality */
187
212
name: " Workspace " ,
188
- dependencies: [ " SwiftToolsSupport-auto " , " Basics " , " SPMBuildCore " , " PackageGraph " , " PackageModel " , " SourceControl " , " Xcodeproj " ] ) ,
213
+ dependencies: [ " SwiftToolsSupport-auto " , " Basics " , " SPMBuildCore " , " PackageGraph " , " PackageModel " , " SourceControl " , " Xcodeproj " ]
214
+ ) ,
189
215
190
216
// MARK: Commands
191
217
192
218
. target(
193
219
/** High-level commands */
194
220
name: " Commands " ,
195
- dependencies: [ " SwiftToolsSupport-auto " , " Basics " , " Build " , " PackageGraph " , " SourceControl " , " Xcodeproj " , " Workspace " , " XCBuildSupport " , " ArgumentParser " , " PackageCollections " ] ) ,
221
+ dependencies: [ " SwiftToolsSupport-auto " , " Basics " , " Build " , " PackageGraph " , " SourceControl " , " Xcodeproj " , " Workspace " , " XCBuildSupport " , " ArgumentParser " , " PackageCollections " ]
222
+ ) ,
196
223
. target(
197
224
/** The main executable provided by SwiftPM */
198
225
name: " swift-package " ,
199
- dependencies: [ " Commands " ] ) ,
226
+ dependencies: [ " Commands " ]
227
+ ) ,
200
228
. target(
201
229
/** Builds packages */
202
230
name: " swift-build " ,
203
- dependencies: [ " Commands " ] ) ,
231
+ dependencies: [ " Commands " ]
232
+ ) ,
204
233
. target(
205
234
/** Runs package tests */
206
235
name: " swift-test " ,
207
- dependencies: [ " Commands " ] ) ,
236
+ dependencies: [ " Commands " ]
237
+ ) ,
208
238
. target(
209
239
/** Runs an executable product */
210
240
name: " swift-run " ,
211
- dependencies: [ " Commands " ] ) ,
241
+ dependencies: [ " Commands " ]
242
+ ) ,
212
243
. target(
213
244
/** Interacts with package collections */
214
245
name: " swift-package-collection " ,
215
- dependencies: [ " Commands " ] ) ,
246
+ dependencies: [ " Commands " ]
247
+ ) ,
216
248
. target(
217
249
/** Shim tool to find test names on OS X */
218
250
name: " swiftpm-xctest-helper " ,
219
251
dependencies: [ ] ,
220
252
linkerSettings: [
221
253
. unsafeFlags( [ " -Xlinker " , " -rpath " , " -Xlinker " , " @executable_path/../../../lib/swift/macosx " ] , . when( platforms: [ . macOS] ) ) ,
222
- ] ) ,
254
+ ]
255
+ ) ,
223
256
224
257
// MARK: Additional Test Dependencies
225
258
226
259
. target(
227
260
/** SwiftPM test support library */
228
261
name: " SPMTestSupport " ,
229
- dependencies: [ " SwiftToolsSupport-auto " , " Basics " , " TSCTestSupport " , " PackageGraph " , " PackageLoading " , " SourceControl " , " Workspace " , " Xcodeproj " , " XCBuildSupport " ] ) ,
262
+ dependencies: [ " SwiftToolsSupport-auto " , " Basics " , " TSCTestSupport " , " PackageGraph " , " PackageLoading " , " SourceControl " , " Workspace " , " Xcodeproj " , " XCBuildSupport " ]
263
+ ) ,
230
264
231
265
// MARK: SwiftPM tests
232
266
233
267
. testTarget(
234
268
name: " BasicsTests " ,
235
- dependencies: [ " Basics " , " SPMTestSupport " ] ) ,
269
+ dependencies: [ " Basics " , " SPMTestSupport " ]
270
+ ) ,
236
271
. testTarget(
237
272
name: " BuildTests " ,
238
- dependencies: [ " Build " , " SPMTestSupport " ] ) ,
273
+ dependencies: [ " Build " , " SPMTestSupport " ]
274
+ ) ,
239
275
. testTarget(
240
276
name: " CommandsTests " ,
241
- dependencies: [ " swift-build " , " swift-package " , " swift-test " , " swift-run " , " Commands " , " Workspace " , " SPMTestSupport " ] ) ,
277
+ dependencies: [ " swift-build " , " swift-package " , " swift-test " , " swift-run " , " Commands " , " Workspace " , " SPMTestSupport " ]
278
+ ) ,
242
279
. testTarget(
243
280
name: " WorkspaceTests " ,
244
- dependencies: [ " Workspace " , " SPMTestSupport " ] ) ,
281
+ dependencies: [ " Workspace " , " SPMTestSupport " ]
282
+ ) ,
245
283
. testTarget(
246
284
name: " FunctionalTests " ,
247
- dependencies: [ " swift-build " , " swift-package " , " swift-test " , " PackageModel " , " SPMTestSupport " ] ) ,
285
+ dependencies: [ " swift-build " , " swift-package " , " swift-test " , " PackageModel " , " SPMTestSupport " ]
286
+ ) ,
248
287
. testTarget(
249
288
name: " FunctionalPerformanceTests " ,
250
- dependencies: [ " swift-build " , " swift-package " , " swift-test " , " SPMTestSupport " ] ) ,
289
+ dependencies: [ " swift-build " , " swift-package " , " swift-test " , " SPMTestSupport " ]
290
+ ) ,
251
291
. testTarget(
252
292
name: " PackageDescription4Tests " ,
253
- dependencies: [ " PackageDescription " ] ) ,
293
+ dependencies: [ " PackageDescription " ]
294
+ ) ,
254
295
. testTarget(
255
296
name: " SPMBuildCoreTests " ,
256
- dependencies: [ " SPMBuildCore " , " SPMTestSupport " ] ) ,
297
+ dependencies: [ " SPMBuildCore " , " SPMTestSupport " ]
298
+ ) ,
257
299
. testTarget(
258
300
name: " PackageLoadingTests " ,
259
301
dependencies: [ " PackageLoading " , " SPMTestSupport " ] ,
260
- exclude: [ " Inputs " ] ) ,
302
+ exclude: [ " Inputs " ]
303
+ ) ,
261
304
. testTarget(
262
305
name: " PackageLoadingPerformanceTests " ,
263
- dependencies: [ " PackageLoading " , " SPMTestSupport " ] ) ,
306
+ dependencies: [ " PackageLoading " , " SPMTestSupport " ]
307
+ ) ,
264
308
. testTarget(
265
309
name: " PackageModelTests " ,
266
- dependencies: [ " PackageModel " , " SPMTestSupport " ] ) ,
310
+ dependencies: [ " PackageModel " , " SPMTestSupport " ]
311
+ ) ,
267
312
. testTarget(
268
313
name: " PackageGraphTests " ,
269
- dependencies: [ " PackageGraph " , " SPMTestSupport " ] ) ,
314
+ dependencies: [ " PackageGraph " , " SPMTestSupport " ]
315
+ ) ,
270
316
. testTarget(
271
317
name: " PackageGraphPerformanceTests " ,
272
- dependencies: [ " PackageGraph " , " SPMTestSupport " ] ) ,
318
+ dependencies: [ " PackageGraph " , " SPMTestSupport " ]
319
+ ) ,
273
320
. testTarget(
274
321
name: " PackageCollectionsModelTests " ,
275
- dependencies: [ " PackageCollectionsModel " ] ) ,
322
+ dependencies: [ " PackageCollectionsModel " ]
323
+ ) ,
276
324
. testTarget(
277
325
name: " PackageCollectionsSigningTests " ,
278
- dependencies: [ " PackageCollectionsSigning " , " SPMTestSupport " ] ) ,
326
+ dependencies: [ " PackageCollectionsSigning " , " SPMTestSupport " ]
327
+ ) ,
279
328
. testTarget(
280
329
name: " PackageCollectionsTests " ,
281
- dependencies: [ " PackageCollections " , " SPMTestSupport " ] ) ,
330
+ dependencies: [ " PackageCollections " , " SPMTestSupport " ]
331
+ ) ,
282
332
. testTarget(
283
333
name: " SourceControlTests " ,
284
- dependencies: [ " SourceControl " , " SPMTestSupport " ] ) ,
334
+ dependencies: [ " SourceControl " , " SPMTestSupport " ]
335
+ ) ,
285
336
. testTarget(
286
337
name: " XcodeprojTests " ,
287
- dependencies: [ " Xcodeproj " , " SPMTestSupport " ] ) ,
338
+ dependencies: [ " Xcodeproj " , " SPMTestSupport " ]
339
+ ) ,
288
340
. testTarget(
289
341
name: " XCBuildSupportTests " ,
290
- dependencies: [ " XCBuildSupport " , " SPMTestSupport " ] ) ,
342
+ dependencies: [ " XCBuildSupport " , " SPMTestSupport " ]
343
+ ) ,
291
344
292
345
// Examples (These are built to ensure they stay up to date with the API.)
293
346
. target(
294
347
name: " package-info " ,
295
348
dependencies: [ " PackageModel " , " PackageLoading " , " PackageGraph " , " Workspace " ] ,
296
349
path: " Examples/package-info/Sources/package-info "
297
- )
350
+ ) ,
298
351
] ,
299
352
swiftLanguageVersions: [ . v5]
300
353
)
0 commit comments