forked from hylo-lang/hylo
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathPackage.swift
53 lines (45 loc) · 1.53 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
// swift-tools-version:5.3
import PackageDescription
let OrderedCollections = Target.Dependency.product(
name: "OrderedCollections", package: "swift-collections")
let DequeModule = Target.Dependency.product(
name: "DequeModule", package: "swift-collections")
let package = Package(
name: "Val",
products: [
.executable(name: "val", targets: ["CLI"]),
],
dependencies: [
.package(
name: "swift-argument-parser",
url: "https://github.com/apple/swift-argument-parser.git",
from: "0.4.0"),
.package(
url: "https://github.com/apple/swift-collections",
from: "0.0.1"),
],
targets: [
// The compiler's executable target.
.target(
name: "CLI",
dependencies: [
"Compiler", "Driver", "Eval",
.product(name: "ArgumentParser", package: "swift-argument-parser"),
]),
// Targets related to the compiler's internal library.
.target(
name: "Compiler",
dependencies: ["Utils", OrderedCollections],
resources: [.copy("Builtins.json")]),
.target(name: "Utils"),
.target(name: "Driver", dependencies: ["Compiler", "Utils", "ValLibrary"]),
.target(name: "Eval", dependencies: ["Compiler", DequeModule]),
// Val sources.
.target(name: "ValLibrary", path: "Library", resources: [.copy("Public")]),
// Test targets.
.testTarget(name: "ParseTests", dependencies: ["Compiler", DequeModule]),
.testTarget(
name: "ValTests",
dependencies: ["Compiler", "Driver", "Eval"],
resources: [.copy("TestCases")]),
])