-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathProject.swift
63 lines (58 loc) · 2.03 KB
/
Project.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
import ProjectDescription
// change all this to fullfill your needs
let appName = "TestCLI"
let bundleId = "com.freniche"
let organizationName = "Diego Freniche"
// the compiled binary will be copied in this directory ($HOME by default)
// there's a Run Script phase added to the target that does that
let destinationFolder = "~"
let project = Project(
name: appName,
organizationName: organizationName,
targets: [
Target(
name: appName,
platform: .macOS,
product: .commandLineTool,
bundleId: bundleId,
deploymentTarget: .macOS(targetVersion: "10.14"),
infoPlist: .default,
sources: ["Sources/**"],
resources: [
],
scripts: [
// Script that will run after building and will copy our binary to ``destinationFolder``
TargetScript.post(script: "cp $BUILT_PRODUCTS_DIR/\(appName) \(destinationFolder)",
name: "Copy Binary",
shellPath: "/bin/bash")
],
dependencies: [
// add your packages here, also review Tuist/Dependencies.swift
.external(name: "ANSITerminal"),
.external(name: "ArgumentParser"),
.external(name: "SwiftFigletKit"),
.external(name: "Files")
]
)
]
// schemes: [
// Scheme(
// name: appName,
// shared: true,
// buildAction: .buildAction(targets: [appName]),
// testAction: .targets(["AppTests"]),
// runAction: .runAction(executable: appName)
// ),
// Scheme(
// name: "App-Release",
// shared: true,
// buildAction: .buildAction(targets: [appName]),
// runAction: .runAction(executable: appName)
// )
// ],
// additionalFiles: [
// "Dangerfile.swift",
// "Documentation/**",
// .folderReference(path: "Website")
// ]
)