适用于现代CMake的Sphinx域
项目描述
适用于现代CMake的Sphinx域
以下内容直接来自Kitware git仓库的Utilities目录。原始的sphinxcontrib-cmakedomain已经很久没有更新,因此它已经非常过时。在没有这个工具的情况下,在项目中记录CMake域实体是非常痛苦的。这个工具的工作方式与Kitware完全相同,因此可能需要一些时间来研究他们解决这些问题的方法。
此存储库的许可证与CMake的所有许可证相同,即BSD-3-Clause许可证。
🚨🚨🚨使用此插件遇到任何问题都必须报告给Kitware,除非它们涉及包装本身。Python文件与发布版本的CMake源代码完全匹配。🚨🚨🚨
安装
PyPI
此域可通过PyPI获取。您可以通过pip直接安装它
$ pip install sphinxcontrib-moderncmakedomain
或者,将其放在您的setup.py、pyproject.toml、requirements.txt或您用于声明和管理依赖项的任何系统中。通常只有当CMake中的此扩展发生变化时,才会发布新版本。
Git
此模块也可以通过pip和GitHub直接安装
$ pip install git+https://github.com/scikit-build/moderncmakedomain.git
用法
要启用moderncmakedomain的使用,请将sphinxcontrib.moderncmakedomain添加到您的conf.py文件中的extensions变量
extensions = [..., 'sphinxcontrib.moderncmakedomain', ...]
该插件目前提供了一些指令和引用。以下将进行说明。
指令
| 指令 | 描述 | 
|---|---|
| cmake:variable: | 用于基本变量 | 
| cmake:command: | 用于函数 | 
| cmake-module: | 自述文档风格提取器(接受相对文件路径) | 
| cmake:envvar: | 用于环境变量 | 
要声明以下任何引用,它们必须放置在sphinx SOURCEDIR/master doc下与同一名称的目录中。因此,prop_tgt/MY_PERSONAL_PROPERTY.rst可以通过:prop_tgt:`MY_PERSONAL_PROPERTY`进行引用。这是CMake目前允许声明新属性的唯一方式。
引用
以下每个引用都可以放置在与同一名称的目录中以记录您CMake库提供的自定义扩展。
| ref | 描述 | 
|---|---|
| :variable | 引用CMake变量 | 
| :command | 引用CMake命令 | 
| :envvar | 引用环境变量 | 
| :cpack_gen | 引用CPack生成器 | 
| :generator | 引用构建文件生成器 | 
| :genex | 引用生成器表达式 | 
| :guide | 用于引用“指南”页面 | 
| :manual | 用于引用“手册”页面(如 cmake(1)) | 
| :policy | 引用CMake策略 | 
| :module | 引用CMake模块 | 
| :prop_tgt | 用于目标属性 | 
| :prop_test | 用于测试属性 | 
| :prop_sf | 用于源文件属性 | 
| :prop_gbl | 用于全局属性 | 
| :prop_dir | 用于目录属性 | 
| :prop_inst | 用于已安装文件属性 | 
| :prop_cache | 用于缓存属性 | 
历史
sphinx-moderncmakedomain最初由slurps-mad-rips于2018年10月开发,旨在通过简单地发布一个相同的Python包来帮助编写CMake文档。这是简化基于sphinx的文档维护并避免系统性地复制CMake仓库中维护的关联Python模块的一个关键步骤。
2021年8月初,henryiii在处理scikit-build issue #574 时发现了 sphinx-moderncmakedomain 项目,旨在简化文档生成基础设施并避免更新sphinx扩展的本地副本。henryiii 和 jcfr 与 slurps-mad-rips 合作,制定了一个过渡计划,在scikit-build组织内共同维护该项目。
项目详情
sphinxcontrib_moderncmakedomain-3.29.0.tar.gz的哈希
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | 3587def241ff2577d0bbef11810a082e9dec1b78a3d4b4a066240b5f3dc1b5b2 | |
| MD5 | ffffa47c797b3260c3f9553900818cd3 | |
| BLAKE2b-256 | e813976a19b5b3d05189e57a8414eb433f571792318980f18dadc9cb1cde98a8 | 
sphinxcontrib_moderncmakedomain-3.29.0-py3-none-any.whl的哈希
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | 22385d9956e9565311eca41a09f26688312e4997a7366cb965fa610d1fd1436c | |
| MD5 | ed6eaf759ee7a4a82944a2ba79a576f1 | |
| BLAKE2b-256 | da30c5452a906ad513b0ae610351b96852187195af3deb023f686873a7c3e154 |