2022-10-08 09:16:10 +02:00
|
|
|
// swift-tools-version:5.7
|
2021-01-22 07:27:37 +01:00
|
|
|
// The swift-tools-version declares the minimum version of Swift required to build this package.
|
|
|
|
|
|
|
|
import PackageDescription
|
|
|
|
|
2022-12-20 19:59:40 +01:00
|
|
|
let publicLibraryTargets = [
|
|
|
|
"CoreDataStack",
|
|
|
|
"MastodonAsset",
|
|
|
|
"MastodonCommon",
|
|
|
|
"MastodonCore",
|
|
|
|
"MastodonExtension",
|
|
|
|
"MastodonLocalization",
|
|
|
|
"MastodonSDK",
|
|
|
|
"MastodonUI",
|
|
|
|
]
|
|
|
|
|
2021-01-22 07:27:37 +01:00
|
|
|
let package = Package(
|
|
|
|
name: "MastodonSDK",
|
2022-01-27 14:23:39 +01:00
|
|
|
defaultLocalization: "en",
|
2021-01-22 07:27:37 +01:00
|
|
|
platforms: [
|
2023-09-29 19:31:22 +02:00
|
|
|
.iOS(.v16),
|
2021-01-22 07:27:37 +01:00
|
|
|
],
|
|
|
|
products: [
|
2022-12-20 19:59:40 +01:00
|
|
|
// Static Library
|
2021-01-22 07:27:37 +01:00
|
|
|
.library(
|
|
|
|
name: "MastodonSDK",
|
2022-12-20 19:59:40 +01:00
|
|
|
targets: publicLibraryTargets
|
|
|
|
),
|
|
|
|
// Dynamic Library
|
|
|
|
.library(
|
|
|
|
name: "MastodonSDKDynamic",
|
2022-12-20 18:49:55 +01:00
|
|
|
type: .dynamic,
|
2022-12-20 19:59:40 +01:00
|
|
|
targets: publicLibraryTargets
|
2022-12-20 18:49:55 +01:00
|
|
|
)
|
2021-01-22 07:27:37 +01:00
|
|
|
],
|
|
|
|
dependencies: [
|
2022-09-30 13:28:09 +02:00
|
|
|
.package(name: "ArkanaKeys", path: "../dependencies/ArkanaKeys"),
|
2022-11-11 16:33:18 +01:00
|
|
|
.package(url: "https://github.com/will-lumley/FaviconFinder.git", from: "3.2.2"),
|
|
|
|
.package(url: "https://github.com/MainasuK/UITextView-Placeholder.git", from: "1.4.1"),
|
2022-09-30 13:28:09 +02:00
|
|
|
.package(url: "https://github.com/Alamofire/Alamofire.git", from: "5.4.0"),
|
|
|
|
.package(url: "https://github.com/Alamofire/AlamofireImage.git", from: "4.1.0"),
|
|
|
|
.package(url: "https://github.com/apple/swift-collections.git", from: "1.0.3"),
|
2023-09-21 13:10:29 +02:00
|
|
|
.package(url: "https://github.com/apple/swift-nio.git", from: "2.0.0"),
|
2022-01-27 14:23:39 +01:00
|
|
|
.package(url: "https://github.com/Flipboard/FLAnimatedImage.git", from: "1.0.0"),
|
2022-09-30 13:28:09 +02:00
|
|
|
.package(url: "https://github.com/kean/Nuke.git", from: "10.3.1"),
|
|
|
|
.package(url: "https://github.com/kishikawakatsumi/KeychainAccess.git", from: "4.2.2"),
|
|
|
|
.package(url: "https://github.com/slackhq/PanModal.git", from: "1.2.7"),
|
|
|
|
.package(url: "https://github.com/TimOliver/TOCropViewController.git", from: "2.6.1"),
|
2022-10-09 15:40:02 +02:00
|
|
|
.package(url: "https://github.com/TwidereProject/MetaTextKit.git", exact: "2.2.5"),
|
2022-09-30 13:28:09 +02:00
|
|
|
.package(url: "https://github.com/TwidereProject/TabBarPager.git", from: "0.1.0"),
|
|
|
|
.package(url: "https://github.com/uias/Tabman", from: "2.13.0"),
|
|
|
|
.package(url: "https://github.com/woxtu/UIHostingConfigurationBackport.git", from: "0.1.0"),
|
|
|
|
.package(url: "https://github.com/SDWebImage/SDWebImage.git", from: "5.12.0"),
|
2022-10-28 13:06:18 +02:00
|
|
|
.package(url: "https://github.com/eneko/Stripes.git", from: "0.2.0"),
|
2022-11-11 14:28:19 +01:00
|
|
|
.package(url: "https://github.com/NextLevel/NextLevelSessionExporter.git", from: "0.4.6"),
|
2023-10-09 00:10:52 +02:00
|
|
|
.package(url: "https://github.com/xmartlabs/XLPagerTabStrip.git", from: "9.1.0"),
|
2021-01-22 07:27:37 +01:00
|
|
|
],
|
|
|
|
targets: [
|
|
|
|
// Targets are the basic building blocks of a package. A target can define a module or a test suite.
|
|
|
|
// Targets can depend on other targets in this package, and on products in packages this package depends on.
|
|
|
|
.target(
|
2022-01-28 05:09:28 +01:00
|
|
|
name: "CoreDataStack",
|
2021-01-26 10:38:30 +01:00
|
|
|
dependencies: [
|
2022-01-28 05:09:28 +01:00
|
|
|
"MastodonCommon",
|
2022-01-29 10:02:30 +01:00
|
|
|
],
|
|
|
|
exclude: [
|
|
|
|
"Template/Stencil"
|
2021-01-26 10:38:30 +01:00
|
|
|
]
|
2021-01-22 07:27:37 +01:00
|
|
|
),
|
2022-01-27 14:23:39 +01:00
|
|
|
.target(
|
2022-01-28 05:09:28 +01:00
|
|
|
name: "MastodonAsset",
|
2022-01-29 10:02:30 +01:00
|
|
|
dependencies: [],
|
|
|
|
resources: [
|
|
|
|
.process("Font"),
|
|
|
|
]
|
2022-01-27 14:23:39 +01:00
|
|
|
),
|
|
|
|
.target(
|
2022-01-28 05:09:28 +01:00
|
|
|
name: "MastodonCommon",
|
2022-04-13 14:54:34 +02:00
|
|
|
dependencies: [
|
2022-07-15 05:34:16 +02:00
|
|
|
"MastodonExtension",
|
2022-04-13 14:54:34 +02:00
|
|
|
]
|
2022-01-28 05:09:28 +01:00
|
|
|
),
|
2022-09-30 13:28:09 +02:00
|
|
|
.target(
|
|
|
|
name: "MastodonCore",
|
|
|
|
dependencies: [
|
|
|
|
"CoreDataStack",
|
|
|
|
"MastodonAsset",
|
|
|
|
"MastodonCommon",
|
|
|
|
"MastodonLocalization",
|
|
|
|
"MastodonSDK",
|
|
|
|
.product(name: "Alamofire", package: "Alamofire"),
|
|
|
|
.product(name: "AlamofireImage", package: "AlamofireImage"),
|
|
|
|
.product(name: "ArkanaKeys", package: "ArkanaKeys"),
|
|
|
|
.product(name: "KeychainAccess", package: "KeychainAccess"),
|
|
|
|
.product(name: "MetaTextKit", package: "MetaTextKit")
|
|
|
|
]
|
|
|
|
),
|
2022-01-28 05:09:28 +01:00
|
|
|
.target(
|
|
|
|
name: "MastodonExtension",
|
2022-01-27 14:23:39 +01:00
|
|
|
dependencies: []
|
|
|
|
),
|
|
|
|
.target(
|
|
|
|
name: "MastodonLocalization",
|
|
|
|
dependencies: []
|
|
|
|
),
|
2022-01-28 05:09:28 +01:00
|
|
|
.target(
|
|
|
|
name: "MastodonSDK",
|
|
|
|
dependencies: [
|
|
|
|
.product(name: "NIOHTTP1", package: "swift-nio"),
|
2023-11-16 10:03:33 +01:00
|
|
|
"MastodonCommon"
|
2022-01-28 05:09:28 +01:00
|
|
|
]
|
|
|
|
),
|
2021-07-16 10:21:47 +02:00
|
|
|
.target(
|
|
|
|
name: "MastodonUI",
|
2021-07-16 15:21:18 +02:00
|
|
|
dependencies: [
|
2022-09-30 13:28:09 +02:00
|
|
|
"MastodonCore",
|
2022-01-27 14:23:39 +01:00
|
|
|
.product(name: "FLAnimatedImage", package: "FLAnimatedImage"),
|
2022-04-18 11:14:49 +02:00
|
|
|
.product(name: "FaviconFinder", package: "FaviconFinder"),
|
2022-04-29 08:38:18 +02:00
|
|
|
.product(name: "Nuke", package: "Nuke"),
|
2022-11-11 16:33:18 +01:00
|
|
|
.product(name: "UITextView+Placeholder", package: "UITextView-Placeholder"),
|
2022-09-30 13:28:09 +02:00
|
|
|
.product(name: "UIHostingConfigurationBackport", package: "UIHostingConfigurationBackport"),
|
|
|
|
.product(name: "TabBarPager", package: "TabBarPager"),
|
|
|
|
.product(name: "OrderedCollections", package: "swift-collections"),
|
|
|
|
.product(name: "Tabman", package: "Tabman"),
|
|
|
|
.product(name: "MetaTextKit", package: "MetaTextKit"),
|
|
|
|
.product(name: "CropViewController", package: "TOCropViewController"),
|
|
|
|
.product(name: "PanModal", package: "PanModal"),
|
2022-10-28 13:06:18 +02:00
|
|
|
.product(name: "Stripes", package: "Stripes"),
|
2022-11-11 14:28:19 +01:00
|
|
|
.product(name: "NextLevelSessionExporter", package: "NextLevelSessionExporter"),
|
2023-10-04 10:03:06 +02:00
|
|
|
.product(name: "SDWebImage", package: "SDWebImage"),
|
2023-10-09 00:10:52 +02:00
|
|
|
.product(name: "XLPagerTabStrip", package: "XLPagerTabStrip"),
|
2021-07-16 15:21:18 +02:00
|
|
|
]
|
2021-07-16 10:21:47 +02:00
|
|
|
),
|
2021-01-22 07:27:37 +01:00
|
|
|
.testTarget(
|
|
|
|
name: "MastodonSDKTests",
|
|
|
|
dependencies: ["MastodonSDK"]
|
|
|
|
),
|
|
|
|
]
|
|
|
|
)
|