rust-zw3d-build

Crates.iorust-zw3d-build
lib.rsrust-zw3d-build
version0.1.0-alpha.12
created_at2025-11-04 15:18:46.35182+00
updated_at2025-12-11 03:03:22.723231+00
descriptionZW3D SDK 配置解析与构建辅助工具
homepage
repositoryhttps://gitee.com/rust-cad/rust-zw3d
max_upload_size
id1916390
size34,923
hailoong (ytianxia6)

documentation

README

rust-zw3d-build

rust-zw3d 及其插件提供通用的构建辅助工具:

  • zw3d.toml 载入 SDK 配置
  • 校验 ZW3D.lib 与头文件路径
  • 向构建脚本返回可用的 SDK 版本/路径信息

配置文件默认位于:

~/.zw3d/zw3d.toml

或通过环境变量覆盖:

set ZW3D_TOML=C:\\Path\\To\\zw3d.toml

示例 zw3d.toml

[zw3d]
# 支持 ${ENV_VAR} 形式的环境变量占位符
# path 指向包含 ZW3D.lib 的目录
path = "${ZW3D_DIR}"
# 可选,未设置时默认使用 ${ZW3D_DIR}/api/inc
include = "${ZW3D_INCLUDE}"
# 可选,未设置时默认 26,可使用 ${ZW3D_VERSION}
version = "26"

build.rs 中:

fn main() {
    let sdk = rust_zw3d_build::ensure_sdk();

    println!("cargo:rustc-link-search=native={}", sdk.lib_dir.display());
    println!("cargo:rustc-link-lib=ZW3D");
    if let Some(path) = &sdk.config_path {
        println!("cargo:rerun-if-changed={}", path.display());
    }
}

若不存在 zw3d.toml,构建脚本会退回读取环境变量:

  • ZW3D_DIR(必填):包含 ZW3D.lib 的目录

  • ZW3D_INCLUDE(可选):头文件目录,默认为 ${ZW3D_DIR}/api/inc

  • ZW3D_VERSION(可选):SDK 版本号,默认为 26

Commit count: 0

cargo fmt