-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathPackage.swift
111 lines (107 loc) · 3.03 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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
// swift-tools-version:5.9
import PackageDescription
let swiftSettings: [SwiftSetting] = [
.enableExperimentalFeature("AccessLevelOnImport")
]
let compatibilityShims: (products: [PackageDescription.Product], targets: [PackageDescription.Target]) = (
products: [
.library(name: "BasePublic", targets: ["BasePublic"]),
.library(name: "BaseTinyPublic", targets: ["BaseTinyPublic"]),
.library(name: "BaseUIPublic", targets: ["BaseUIPublic"]),
.library(name: "CommonCorePublic", targets: ["CommonCorePublic"]),
.library(name: "NetworkingPublic", targets: ["NetworkingPublic"]),
.library(name: "VGSL_Fundamentals", targets: ["VGSL_Fundamentals"]),
.library(name: "VGSL_Fundamentals_Tiny", targets: ["VGSL_Fundamentals_Tiny"]),
],
targets: [
.target(
name: "BasePublic",
dependencies: ["VGSL", "BaseUIPublic", "NetworkingPublic"],
path: "CompatibilityShims/BasePublic",
swiftSettings: swiftSettings
),
.target(
name: "BaseTinyPublic",
dependencies: ["VGSL"],
path: "CompatibilityShims/BaseTinyPublic",
swiftSettings: swiftSettings
),
.target(
name: "BaseUIPublic",
dependencies: ["VGSL"],
path: "CompatibilityShims/BaseUIPublic",
swiftSettings: swiftSettings
),
.target(
name: "CommonCorePublic",
dependencies: ["VGSL", "BaseUIPublic"],
path: "CompatibilityShims/CommonCorePublic",
swiftSettings: swiftSettings
),
.target(
name: "NetworkingPublic",
dependencies: ["VGSL", "BaseUIPublic"],
path: "CompatibilityShims/NetworkingPublic",
swiftSettings: swiftSettings
),
.target(
name: "VGSL_Fundamentals",
dependencies: ["VGSL"],
path: "CompatibilityShims/VGSL_Fundamentals",
swiftSettings: swiftSettings
),
.target(
name: "VGSL_Fundamentals_Tiny",
dependencies: ["VGSL"],
path: "CompatibilityShims/VGSL_Fundamentals_Tiny",
swiftSettings: swiftSettings
),
]
)
let package = Package(
name: "vgsl",
platforms: [
.iOS(.v12),
.tvOS(.v12),
],
products: [
.library(name: "VGSLFundamentals", targets: ["VGSLFundamentals"]),
.library(name: "VGSLUI", targets: ["VGSLUI"]),
.library(name: "VGSLNetworking", targets: ["VGSLNetworking"]),
.library(name: "VGSL", targets: ["VGSL"]),
] + compatibilityShims.products,
targets: [
.target(
name: "VGSLFundamentals",
path: "VGSLFundamentals",
swiftSettings: swiftSettings
),
.target(
name: "VGSLUI",
dependencies: [
"VGSLFundamentals",
],
path: "VGSLUI",
swiftSettings: swiftSettings
),
.target(
name: "VGSLNetworking",
dependencies: [
"VGSLFundamentals",
"VGSLUI"
],
path: "VGSLNetworking",
swiftSettings: swiftSettings
),
.target(
name: "VGSL",
dependencies: [
"VGSLFundamentals",
"VGSLNetworking",
"VGSLUI"
],
path: "VGSL",
swiftSettings: swiftSettings
),
] + compatibilityShims.targets
)