forked from Carthage/Carthage
-
Notifications
You must be signed in to change notification settings - Fork 0
/
BuildOptions.swift
39 lines (37 loc) · 1.16 KB
/
BuildOptions.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
import XCDBLD
import Result
import ReactiveSwift
/// The build options used for building `xcodebuild` command.
public struct BuildOptions {
/// The Xcode configuration to build.
public var configuration: String
/// The platforms to build for.
public var platforms: Set<SDK>?
/// The toolchain to build with.
public var toolchain: String?
/// The path to the custom derived data folder.
public var derivedDataPath: String?
/// Whether to skip building if valid cached builds exist.
public var cacheBuilds: Bool
/// Whether to use downloaded binaries if possible.
public var useBinaries: Bool
/// Whether to create an XCFramework instead of lipoing built products.
public var useXCFrameworks: Bool
public init(
configuration: String,
platforms: Set<SDK>? = nil,
toolchain: String? = nil,
derivedDataPath: String? = nil,
cacheBuilds: Bool = true,
useBinaries: Bool = true,
useXCFrameworks: Bool = false
) {
self.configuration = configuration
self.platforms = platforms
self.toolchain = toolchain
self.derivedDataPath = derivedDataPath
self.cacheBuilds = cacheBuilds
self.useBinaries = useBinaries
self.useXCFrameworks = useXCFrameworks
}
}