kyber-sdk-ios/Package.swift

61 行
2.9 KiB
Swift

2026-05-06 22:28:00 +08:00
// swift-tools-version: 5.9
// KyberSDK CRYSTALS-KyberML-KEM Swift Package
//
//
// CKyber C target Kyber512 / 768 / 1024
// KyberSDK Swift Swift API
//
// ".inc "
// kyber512/768/1024.c #define KYBER_K
// #include internal/*.inc .c
// KYBER_NAMESPACE
// fips202
//
// iOS 14+ / macOS 11+
// arm64/ arm64-simulatorApple Silicon / x86_64-simulator
import PackageDescription
let package = Package(
name: "KyberSDK",
platforms: [
.iOS(.v14),
.macOS(.v11),
],
products: [
// KyberSDK Swift C
.library(name: "KyberSDK", targets: ["KyberSDK"]),
],
targets: [
// C
// internal/ .inc kyber512/768/1024.c
// exclude
.target(
name: "CKyber",
path: "Sources/CKyber",
exclude: ["internal"], // .inc
publicHeadersPath: "include", //
cSettings: [
.headerSearchPath("include"), // 使 #include "xxx.h" include/
.headerSearchPath("."), // 使
.unsafeFlags(["-O2", "-fomit-frame-pointer"]), //
]
),
// Swift
// CKyber @_silgen_name / C
.target(
name: "KyberSDK",
dependencies: ["CKyber"],
path: "Sources/KyberSDK"
),
//
// KEM
.testTarget(
name: "KyberSDKTests",
dependencies: ["KyberSDK"],
path: "Tests/KyberSDKTests"
),
]
)