Zum Inhalt

apple/PhysarumEngine/Package.swift

// swift-tools-version: 6.0
import PackageDescription

// The `EngineCheck` executable remains a headless `swift run` gate (works under
// the CLT-only toolchain and as a CI smoke). With Xcode installed, the
// `PhysarumEngineTests` XCTest target now covers the same contracts as proper
// unit tests (`swift test`).
let package = Package(
    name: "PhysarumEngine",
    platforms: [.macOS(.v14), .iOS(.v17), .tvOS(.v17)],
    products: [
        .library(name: "PhysarumEngine", targets: ["PhysarumEngine"]),
        .executable(name: "EngineCheck", targets: ["EngineCheck"]),
    ],
    targets: [
        .target(
            name: "PhysarumEngine",
            resources: [.copy("Resources/Shaders")]
        ),
        .executableTarget(
            name: "EngineCheck",
            dependencies: ["PhysarumEngine"]
        ),
        .executableTarget(
            name: "PresetGallery",
            dependencies: ["PhysarumEngine"]
        ),
        .executableTarget(
            name: "PhysarumViewer",
            dependencies: ["PhysarumEngine"],
            resources: [.copy("Presets")],
            swiftSettings: [.swiftLanguageMode(.v5)]
        ),
        .testTarget(
            name: "PhysarumEngineTests",
            dependencies: ["PhysarumEngine"],
            swiftSettings: [.swiftLanguageMode(.v5)]
        ),
    ]
)