版本控制 – Doxygen:输出版本号

我想让Doxygen显示源代码版本号作为主页或标题标题的一部分.

目前,我们的代码的版本定义为文本文字:

/*!
 *  \brief  Text literal containing the build number portion of the
 *              ESG Application Version.
 */
static const char   build_version_text[] = "105";

我已经在互联网上搜索了一种方法,可以将上述语句中的105从Doxygen主页(或标题)中获取,但没有运气.

背景
我们有一个构建服务器,它在每晚构建操作中更新文本字符串.文件已更新,然后检入软件配置管理系统.构建服务器还能够生成文档.我们还希望让开发人员能够查看代码,在他们的工作站上构建Doxygen文档.

我们正在使用Doxygen版本1.8.11.

最佳答案 您要查找的是根据源中的值设置PROJECT_NUMBER配置选项.我不认为这可以做到,但我将如何实现相同的结果如下.

由于项目版本在构建脚本运行时更新,因此让构建脚本生成额外的文件,例如Doxyversion.该文件的内容是:

PROJECT_NUMBER = "<versiontext>"

更新主要的Doxyfile并替换

PROJECT_NUMBER =

@INCLUDE = "<pathToDoxyversion>"

编辑:

我能想到的解决方案不需要复制版本字符串,需要将版本字符串从文件解析为环境变量.然后你可以设置PROJECT_NUMBER

PROJECT_NUMBER=$(ENV_VAR)

另一个选择是你可以调用doxygen

( cat Doxyfile ; echo "PROJECT_NUMBER=$ENV_VAR" ) | doxygen

这两种解决方案都需要开发人员在生成文档时知道这样做,或者在脚本中包装整个doxygen调用.潜在的可移植性问题.

点赞