#build-script #script #build #cfg #macro

build build_cfg

在构建脚本中评估 cfg() 指令

2 个版本 (1 个稳定版)

1.1.0 2022年1月13日
0.1.0 2021年9月26日

FFI 中排名 330

Download history 86/week @ 2024-03-04 73/week @ 2024-03-11 79/week @ 2024-03-18 182/week @ 2024-03-25 91/week @ 2024-04-01 67/week @ 2024-04-08 96/week @ 2024-04-15 172/week @ 2024-04-22 59/week @ 2024-04-29 66/week @ 2024-05-06 62/week @ 2024-05-13 98/week @ 2024-05-20 103/week @ 2024-05-27 73/week @ 2024-06-03 57/week @ 2024-06-10 58/week @ 2024-06-17

每月下载量 299
5 crates 中使用(4 个直接使用)

MIT 许可证

9KB
177

../README.md


lib.rs:

crates.io

build_cfg

在构建时测试 cfg 指令!

目前,cfg 指令在构建脚本中不“正确”工作。这是因为构建脚本 必须 为宿主机器编译以执行。因此,它总是编译为目标本地环境。

这意味着我们无法根据通过 --target 传递的目标平台有条件地编译构建脚本中的内容。这个 crate 通过在构建脚本运行时收集和评估 cfg 指令来解决这个问题。

示例

#[macro_use]
extern crate build_cfg;

#[build_cfg_main]
fn main() {
    if build_cfg!(all(target_os = "windows", target_pointer_width = "64")) {
        println!("Building for Windows 64-bit");
    } else {
        println!("Not building for Windows 64-bit");
    }
}

依赖

~315–770KB
~18K SLoC