|
4 | 4 | import Foundation |
5 | 5 | import PackageDescription |
6 | 6 |
|
| 7 | +let darwinPlatforms: [Platform] = [ |
| 8 | + .iOS, |
| 9 | + .macOS, |
| 10 | + .macCatalyst, |
| 11 | + .tvOS, |
| 12 | + .visionOS, |
| 13 | + .watchOS, |
| 14 | +] |
7 | 15 | var swiftSettings: [SwiftSetting] = [ |
8 | 16 | .define("SQLITE_ENABLE_FTS5"), |
| 17 | + // SQLite snapshots are available on the system SQLite on Darwin platforms. |
| 18 | + .define("SQLITE_ENABLE_SNAPSHOT", .when(platforms: darwinPlatforms, traits: ["GRDBSQLite"])), |
9 | 19 | ] |
10 | 20 | var cSettings: [CSetting] = [] |
11 | 21 | var dependencies: [PackageDescription.Package.Dependency] = [] |
@@ -41,19 +51,19 @@ let package = Package( |
41 | 51 | .library(name: "GRDB", targets: ["GRDB"]), |
42 | 52 | .library(name: "GRDB-dynamic", type: .dynamic, targets: ["GRDB"]), |
43 | 53 | ], |
44 | | - dependencies: dependencies, |
45 | 54 | traits: [ |
46 | 55 | "GRDBSQLite", |
47 | 56 | .default(enabledTraits: ["GRDBSQLite"]), |
48 | 57 | ], |
| 58 | + dependencies: dependencies, |
49 | 59 | targets: [ |
50 | 60 | .systemLibrary( |
51 | 61 | name: "GRDBSQLite", |
52 | 62 | providers: [.apt(["libsqlite3-dev"])]), |
53 | 63 | .target( |
54 | 64 | name: "GRDB", |
55 | 65 | dependencies: [ |
56 | | - .target("GRDBSQLite", traits: ["GRDBSQLite"]), |
| 66 | + .target(name: "GRDBSQLite", condition: .when(traits: ["GRDBSQLite"])), |
57 | 67 | ], |
58 | 68 | path: "GRDB", |
59 | 69 | resources: [.copy("PrivacyInfo.xcprivacy")], |
|
0 commit comments