SPM Test target + Github Action to build and test (#596)

* SPM Test target + Github Action to build and test

Because the tests are XCTests `swift test` runs them first and then runs another batch of empty tests which results in "0 tests" at the end of the report - https://github.com/swiftlang/swift-package-manager/issues/8529#issuecomment-2815711345

* Fix dependency and library issues + handle mixed languages

`include` folder has to be next to the `*.c` file for it to work
This commit is contained in:
Islam
2025-09-13 15:01:30 +02:00
committed by GitHub
parent 2870acdcc7
commit efb9a5070d
4 changed files with 53 additions and 3 deletions
+26 -3
View File
@@ -15,13 +15,15 @@ let package = Package(
),
],
dependencies:[
.package(url: "https://github.com/21-DOT-DEV/swift-secp256k1", exact: "0.21.1"),
.package(url: "https://github.com/21-DOT-DEV/swift-secp256k1", exact: "0.21.1")
],
targets: [
.executableTarget(
name: "bitchat",
dependencies: [
.product(name: "P256K", package: "swift-secp256k1")
.product(name: "P256K", package: "swift-secp256k1"),
.target(name: "TorC"),
.target(name: "tor-nolzma")
],
path: "bitchat",
exclude: [
@@ -29,8 +31,29 @@ let package = Package(
"Assets.xcassets",
"bitchat.entitlements",
"bitchat-macOS.entitlements",
"LaunchScreen.storyboard"
"LaunchScreen.storyboard",
"Services/Tor/C/"
],
linkerSettings: [
.linkedLibrary("z")
]
),
.target(
name: "TorC",
path: "bitchat/Services/Tor/C"
),
.binaryTarget(
name: "tor-nolzma",
path: "Frameworks/tor-nolzma.xcframework"
),
.testTarget(
name: "bitchatTests",
dependencies: ["bitchat"],
path: "bitchatTests",
exclude: [
"Info.plist",
"README.md"
]
)
]
)