-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathPackage.swift
48 lines (47 loc) · 1.38 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
// swift-tools-version: 5.6
import PackageDescription
let package = Package(
name: "SwiftGenPlugin",
defaultLocalization: "en",
products: [
.plugin(name: "SwiftGenBuildPlugin", targets: ["BuildTool"]),
.plugin(name: "SwiftGenCommandPlugin", targets: ["Run SwiftGen"])
],
dependencies: [],
targets: [
.plugin(
name: "BuildTool",
capability: .buildTool(),
dependencies: [
"swiftgen"
]
),
.plugin(
name: "Run SwiftGen",
capability: .command(
intent: .custom(
verb: "swiftgen",
description: "Generate Swift code for this package's resources."
),
permissions: [
.writeToPackageDirectory(reason: "To generate Swift code for this package's resources.")
]
),
dependencies: ["swiftgen"]
),
.executableTarget(
name: "BuildToolExample",
exclude: ["swiftgen.yml"],
plugins: ["BuildTool"]
),
.executableTarget(
name: "CommandExample",
exclude: ["swiftgen.yml"],
plugins: ["Run SwiftGen"]
),
.binaryTarget(
name: "swiftgen",
path: "bin/swiftgen.artifactbundle"
),
]
)