Xcode: Add support of Swift Package Manager

Made by Johennes at https://github.com/matrix-org/olm/issues/51#issuecomment-809128833
This commit is contained in:
manuroe 2021-04-02 19:05:09 +02:00
parent 3745ea57bb
commit 09fbb9e966
3 changed files with 69 additions and 0 deletions

52
Package.swift Normal file
View file

@ -0,0 +1,52 @@
// swift-tools-version:5.3
import PackageDescription
let major = 3, minor = 2, patch = 2
let package = Package(
name: "Olm",
platforms: [.iOS(.v8), .macOS(.v10_10)],
products: [
.library(name: "libolm", targets: ["libolm"]),
.library(name: "OLMKit", targets: ["OLMKit"])
],
targets: [
.target(
name: "libolm",
path: ".",
sources: [
"src",
"lib/crypto-algorithms/aes.c",
"lib/crypto-algorithms/sha256.c",
"lib/curve25519-donna/curve25519-donna.c"
],
cSettings: [
.headerSearchPath("lib"),
.define("OLMLIB_VERSION_MAJOR", to: "\(major)"),
.define("OLMLIB_VERSION_MINOR", to: "\(minor)"),
.define("OLMLIB_VERSION_PATCH", to: "\(patch)")
]
),
.target(
name: "OLMKit",
dependencies: ["libolm"],
path: "xcode/OLMKit",
exclude: ["Info.plist"],
cSettings: [
.headerSearchPath("..")
]
),
.testTarget(
name: "OLMKitTests",
dependencies: ["OLMKit"],
path: "xcode/OLMKitTests",
exclude: ["Info.plist"],
cSettings: [
.headerSearchPath("..")
]
)
],
cLanguageStandard: .c99,
cxxLanguageStandard: .cxx11
)

4
include/module.modulemap Normal file
View file

@ -0,0 +1,4 @@
module libolm {
header "olm/olm.h"
export *
}

View file

@ -0,0 +1,13 @@
module OLMKit {
header "../OLMAccount.h"
header "../OLMSession.h"
header "../OLMMessage.h"
header "../OLMUtility.h"
header "../OLMInboundGroupSession.h"
header "../OLMOutboundGroupSession.h"
header "../OLMPkEncryption.h"
header "../OLMPkDecryption.h"
header "../OLMPkSigning.h"
header "../OLMSAS.h"
export *
}