扩展¶
Conan 可以通过自定义用户代码进行扩展
python_requires允许将常用的配方代码放入一个配方包中,其他配方可以通过声明python_requires = "mypythoncode/version"来重用你可以创建自己的自定义 Conan 命令,以利用 Python 和 Conan 公共 API 的强大功能来解决自身需求。
如果使用的构建系统不受内置 Conan 工具的支持,也可以创建自己的自定义 Conan 生成器。这些生成器可以从
python_requires中使用,或全局安装。hooks是“预”和“后”配方方法(例如pre_build()和post_build())扩展,可用于通过正交功能补充配方,例如质量检查、二进制分析、日志记录等。二进制兼容性
compatibility.py扩展允许编写自定义规则,以定义不同设置和选项之间的自定义二进制兼容性cmd_wrapper.py扩展允许将任意命令包装器注入到任何self.run()配方命令调用中,这对于注入并行化工具等包装器非常有用包签名扩展允许在上传和安装时对包进行签名和验证
部署器是一种机制,用于促进从一个文件夹(通常是 Conan 缓存)到用户文件夹的文件复制
注意
除了本文档中列出的内置 Conan 扩展之外,还有一个包含 Conan 扩展(例如自定义命令和部署器)的仓库,这些扩展对于不同的目的很有用,例如 artifactory 任务、Conan Center Index 等。
你可以在 GitHub 仓库 中找到有关如何使用这些扩展的更多信息。
目录