portico/Package.swift

68 lines
2.3 KiB
Swift

// swift-tools-version: 6.2
import PackageDescription
let swiftSettings: [SwiftSetting] = [
.enableExperimentalFeature("StrictConcurrency=complete"),
.defaultIsolation(MainActor.self),
]
let package = Package(
name: "portico",
platforms: [.macOS(.v14)],
products: [
.library(name: "Portico", targets: ["Portico"]),
.library(name: "PorticoGtk", targets: ["PorticoGtk"]),
],
dependencies: [
.package(url: "https://github.com/swiftlang/swift-syntax.git", from: "601.0.0"),
.package(url: "https://git.bscubed.dev/gtk-swift/gtk-swift.git", branch: "main"),
],
targets: [
.target(
name: "Portico",
dependencies: [
.product(name: "Adw", package: "gtk-swift"),
.product(name: "Gtk", package: "gtk-swift"),
.product(name: "Gio", package: "gtk-swift"),
.product(name: "GLib", package: "gtk-swift"),
.product(name: "GObject", package: "gtk-swift"),
.product(name: "Gdk", package: "gtk-swift"),
],
swiftSettings: swiftSettings
),
.executableTarget(
name: "PorticoGen",
dependencies: [
.product(name: "SwiftSyntax", package: "swift-syntax"),
.product(name: "SwiftParser", package: "swift-syntax"),
],
swiftSettings: swiftSettings
),
.target(
name: "PorticoGtk",
dependencies: [
"Portico",
.product(name: "Adw", package: "gtk-swift"),
.product(name: "Gtk", package: "gtk-swift"),
.product(name: "Gio", package: "gtk-swift"),
.product(name: "Gdk", package: "gtk-swift"),
],
swiftSettings: swiftSettings
),
.executableTarget(
name: "Example",
dependencies: ["Portico"],
swiftSettings: swiftSettings
),
.testTarget(
name: "PorticoTests",
dependencies: [
"Portico",
"PorticoGtk",
.product(name: "Adw", package: "gtk-swift"),
.product(name: "Gtk", package: "gtk-swift"),
],
swiftSettings: swiftSettings
),
]
)