zcash-light-client-ffi

这个项目的目标有两个:

  1. rust 目录下的 zcash rust 库提供语言绑定。
  2. 为这些语言生态系统中的常见依赖管理器提供打包。

目前已实现为 Apple 平台构建 xcframework,并通过 Swift Package Manager 进行分发。

导入包

将包添加为依赖项

dependencies: [
  .package(url: "https://github.com/Electric-Coin-Company/zcash-light-client-ffi", from: "0.1.2")
  // other dependencies
]

并在将要使用它的目标中将其作为产品引用

targets: [
        .target(
            name: "MyTarget",
            dependencies: [
                .product(name: "libzcashlc", package: "zcash-light-client-ffi")
            ],

构建

先决条件

大部分构建都是使用 rust 编译器完成的,并且根据目标的不同,需要不同的工具链。要安装这些工具链,您需要安装 rustup。 安装完成后,可以通过运行 make install 来安装其余依赖项。

XCFramework

目前唯一支持的构建产物。 可以使用 make xcframework 构建它,结果将在 releases/XCFramework/libzcashlc.xcframework 中。

根据中间构建产物可能所处的状态,您可能首先需要执行 make clean 来进行干净构建。

发布

Swift Package Manager

  1. 如上所述构建框架。
  2. 提交结果。
  3. 使用新的发布版本(遵循语义版本控制)标记此提交。
  4. 将提交和标签推送到远程仓库。

许可

基于 MIT 许可 (LICENSEhttps://open-source.org.cn/licenses/MIT)。