// swift-tools-version: 6.2 import PackageDescription let swiftSettings: [SwiftSetting] = [ .enableExperimentalFeature("StrictConcurrency=complete"), .defaultIsolation(MainActor.self), ] let package = Package( name: "portico", platforms: [.macOS(.v15)], 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", .product(name: "Adw", package: "gtk-swift"), ], swiftSettings: swiftSettings ), .testTarget( name: "PorticoTests", dependencies: [ "Portico", "PorticoGtk", .product(name: "Adw", package: "gtk-swift"), .product(name: "Gio", package: "gtk-swift"), .product(name: "Gtk", package: "gtk-swift"), ], swiftSettings: swiftSettings ), ] )