跳转到主要内容

适用于现代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.pypyproject.tomlrequirements.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扩展的本地副本。henryiiijcfrslurps-mad-rips 合作,制定了一个过渡计划,在scikit-build组织内共同维护该项目。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源代码分发

sphinxcontrib_moderncmakedomain-3.29.0.tar.gz (16.5 kB 查看哈希)

上传时间 源代码

构建分发

sphinxcontrib_moderncmakedomain-3.29.0-py3-none-any.whl (13.1 kB 查看哈希)

上传时间 Python 3

支持者

AWSAWS云计算和安全赞助商DatadogDatadog监控FastlyFastlyCDNGoogleGoogle下载分析MicrosoftMicrosoftPSF赞助商PingdomPingdom监控SentrySentry错误日志StatusPageStatusPage状态页面