适用于现代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 |