-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathPackage.swift
More file actions
83 lines (81 loc) · 2.38 KB
/
Package.swift
File metadata and controls
83 lines (81 loc) · 2.38 KB
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
// swift-tools-version: 6.1
// The swift-tools-version declares the minimum version of Swift required to build this package.
import PackageDescription
let package = Package(
name: "audio",
platforms: [.macOS(.v14), .iOS(.v17), .macCatalyst(.v17)],
products: [
.library(
name: "audio",
targets: ["audio-engine", "audio-processing", "audio-playing"]
),
],
dependencies: [
.package(url: "https://github.com/objective-audio/cpp_utils.git", branch: "master"),
],
targets: [
.target(
name: "audio-engine",
dependencies: [
.product(name: "cpp-utils", package: "cpp_utils")
],
cSettings: [
.define("ACCELERATE_NEW_LAPACK", to: "1"),
.define("ACCELERATE_LAPACK_ILP64", to: "1"),
],
linkerSettings: [
.linkedFramework("AVFoundation"),
.linkedFramework("AudioToolbox"),
.linkedFramework("Accelerate"),
.linkedFramework("CoreAudio", .when(platforms: [.macOS]))
]
),
.target(
name: "audio-processing",
dependencies: [
"audio-engine"
],
cSettings: [
.unsafeFlags(["-fmodules"]),
]
),
.target(
name: "audio-playing",
dependencies: [
"audio-processing"
],
cSettings: [
.unsafeFlags(["-fmodules"]),
]
),
.testTarget(
name: "audio-engine-tests",
dependencies: [
"audio-engine"
],
cxxSettings: [
.define("WAVEFILE_LIGHT_TEST", to: "1"),
.unsafeFlags(["-fcxx-modules"]),
]),
.testTarget(
name: "audio-processing-tests",
dependencies: [
"audio-processing",
],
cxxSettings: [
.unsafeFlags(["-fcxx-modules"]),
]
),
.testTarget(
name: "audio-playing-tests",
dependencies: [
"audio-playing",
],
cxxSettings: [
.unsafeFlags(["-fcxx-modules"]),
]
),
],
cLanguageStandard: .gnu2x,
cxxLanguageStandard: .gnucxx2b
)