-
-
Notifications
You must be signed in to change notification settings - Fork 597
/
Package.swift
69 lines (68 loc) · 2.25 KB
/
Package.swift
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
// swift-tools-version:5.7
import PackageDescription
let package = Package(
name: "Nimble",
platforms: [
.macOS(.v10_15), .iOS(.v13), .tvOS(.v13), .watchOS(.v6)
],
products: [
.library(
name: "Nimble",
targets: {
var targets: [String] = ["Nimble"]
#if os(macOS)
targets.append("NimbleObjectiveC")
#endif
return targets
}()
),
],
dependencies: [
.package(url: "https://github.com/mattgallagher/CwlPreconditionTesting.git", .upToNextMajor(from: "2.1.0")),
.package(url: "https://github.com/apple/swift-docc-plugin", from: "1.0.0"),
],
targets: {
var testHelperDependencies: [PackageDescription.Target.Dependency] = ["Nimble"]
#if os(macOS)
testHelperDependencies.append("NimbleObjectiveC")
#endif
var targets: [Target] = [
.target(
name: "Nimble",
dependencies: [
.product(name: "CwlPreconditionTesting", package: "CwlPreconditionTesting",
condition: .when(platforms: [.macOS, .iOS, .macCatalyst])),
.product(name: "CwlPosixPreconditionTesting", package: "CwlPreconditionTesting",
condition: .when(platforms: [.tvOS, .watchOS]))
],
exclude: ["Info.plist"],
resources: [
.copy("PrivacyInfo.xcprivacy")
]
),
.target(
name: "NimbleSharedTestHelpers",
dependencies: testHelperDependencies
),
.testTarget(
name: "NimbleTests",
dependencies: ["Nimble", "NimbleSharedTestHelpers"],
exclude: ["Info.plist"]
),
]
#if os(macOS)
targets.append(contentsOf: [
.target(
name: "NimbleObjectiveC",
dependencies: ["Nimble"]
),
.testTarget(
name: "NimbleObjectiveCTests",
dependencies: ["NimbleObjectiveC", "Nimble", "NimbleSharedTestHelpers"]
)
])
#endif
return targets
}(),
swiftLanguageVersions: [.v5]
)