89 lines
3.3 KiB
Swift
89 lines
3.3 KiB
Swift
import CompilerPluginSupport
|
|
// swift-tools-version: 6.0
|
|
import PackageDescription
|
|
|
|
let package = Package(
|
|
name: "Luminate",
|
|
platforms: [.macOS(.v13)],
|
|
dependencies: [
|
|
.package(url: "https://git.aparoksha.dev/aparoksha/adwaita-swift", branch: "main"),
|
|
.package(url: "https://git.aparoksha.dev/aparoksha/localized", branch: "main"),
|
|
.package(url: "https://github.com/apple/swift-openapi-generator", from: "1.0.0"),
|
|
.package(url: "https://github.com/apple/swift-openapi-runtime", from: "1.0.0"),
|
|
.package(url: "https://github.com/apple/swift-openapi-urlsession", from: "1.0.0"),
|
|
.package(url: "https://github.com/stephencelis/SQLite.swift", from: "0.16.0"),
|
|
.package(url: "https://github.com/apple/swift-syntax", from: "603.0.0"),
|
|
],
|
|
targets: [
|
|
.target(
|
|
name: "LuminateAPI",
|
|
dependencies: [
|
|
.product(name: "OpenAPIRuntime", package: "swift-openapi-runtime"),
|
|
.product(name: "OpenAPIURLSession", package: "swift-openapi-urlsession"),
|
|
],
|
|
plugins: [
|
|
.plugin(name: "OpenAPIGenerator", package: "swift-openapi-generator")
|
|
]
|
|
),
|
|
.target(
|
|
name: "LuminateCore",
|
|
dependencies: [
|
|
"LuminateAPI",
|
|
"LuminateObservationMacros",
|
|
.product(name: "OpenAPIRuntime", package: "swift-openapi-runtime"),
|
|
.product(name: "OpenAPIURLSession", package: "swift-openapi-urlsession"),
|
|
.product(name: "SQLite", package: "SQLite.swift"),
|
|
]
|
|
),
|
|
.macro(
|
|
name: "LuminateObservationMacros",
|
|
dependencies: [
|
|
.product(name: "SwiftSyntax", package: "swift-syntax"),
|
|
.product(name: "SwiftSyntaxMacros", package: "swift-syntax"),
|
|
.product(name: "SwiftCompilerPlugin", package: "swift-syntax"),
|
|
]
|
|
),
|
|
.target(
|
|
name: "LuminateDI",
|
|
dependencies: [
|
|
"LuminateCore",
|
|
.product(name: "Adwaita", package: "adwaita-swift"),
|
|
]
|
|
),
|
|
.target(
|
|
name: "LuminateUI",
|
|
dependencies: [
|
|
"LuminateCore",
|
|
"LuminateDI",
|
|
"LuminateObservationMacros",
|
|
.product(name: "Adwaita", package: "adwaita-swift"),
|
|
]
|
|
),
|
|
|
|
.target(
|
|
name: "LuminatePlayer",
|
|
dependencies: [
|
|
"LuminateCore",
|
|
"LuminateDI",
|
|
"LuminateUI",
|
|
"LuminateObservationMacros",
|
|
.product(name: "Adwaita", package: "adwaita-swift"),
|
|
]
|
|
),
|
|
.executableTarget(
|
|
name: "Luminate",
|
|
dependencies: [
|
|
"LuminatePlayer",
|
|
"LuminateUI",
|
|
"LuminateDI",
|
|
"LuminateObservationMacros",
|
|
.product(name: "Adwaita", package: "adwaita-swift"),
|
|
.product(name: "Localized", package: "localized"),
|
|
],
|
|
path: "Sources/Luminate",
|
|
resources: [.process("Localized.yml")],
|
|
plugins: [.plugin(name: "GenerateLocalized", package: "localized")]
|
|
),
|
|
],
|
|
swiftLanguageModes: [.v5]
|
|
)
|