diff --git a/Package.swift b/Package.swift index d632c08..5026c61 100644 --- a/Package.swift +++ b/Package.swift @@ -4,18 +4,43 @@ import PackageDescription let package = Package( name: "Colibri", + products: [ + .executable( + name: "colibri", + targets: ["Colibri"] + ), + .library( + name: "ColibriLibrary", + targets: ["ColibriLibrary"] + ) + ], dependencies: [ - .package(url: "https://github.com/apple/swift-argument-parser", - from: "1.0.0") + .package( + url: "https://github.com/apple/swift-argument-parser", + from: "1.0.0" + ) ], targets: [ .executableTarget( name: "Colibri", dependencies: [ - .product(name: "ArgumentParser", - package: "swift-argument-parser") + .product( + name: "ArgumentParser", + package: "swift-argument-parser" + ), + .target(name: "ColibriLibrary") ], - path: "Sources" + path: "Sources/Executable" ), + .target( + name: "ColibriLibrary", + dependencies: [], + path: "Sources/Library" + ), + .testTarget( + name: "ColibriTests", + dependencies: ["ColibriLibrary"], + path: "Tests/Library" + ) ] ) diff --git a/Sources/Colibri.swift b/Sources/Executable/Colibri.swift similarity index 87% rename from Sources/Colibri.swift rename to Sources/Executable/Colibri.swift index a9a5b9f..02690d1 100644 --- a/Sources/Colibri.swift +++ b/Sources/Executable/Colibri.swift @@ -1,4 +1,5 @@ import ArgumentParser +import ColibriLibrary @main struct Colibri: AsyncParsableCommand { diff --git a/Sources/Library/ColibriLibrary.swift b/Sources/Library/ColibriLibrary.swift new file mode 100644 index 0000000..fecc4ab --- /dev/null +++ b/Sources/Library/ColibriLibrary.swift @@ -0,0 +1 @@ +import Foundation diff --git a/Tests/Library/ColibriLibraryTests.swift b/Tests/Library/ColibriLibraryTests.swift new file mode 100644 index 0000000..5cfd2da --- /dev/null +++ b/Tests/Library/ColibriLibraryTests.swift @@ -0,0 +1,3 @@ +import Testing + +struct ColibriLibraryTests {}