我正在解决同样的问题,到目前为止,我使用 QMAKE_EXTRA_TARGETS 变量构建文档目标的成功有限,如下所示:
docs.depends = $(SOURCES)
docs.commands = (cat Doxyfile; echo "INPUT = $?") | doxygen -
QMAKE_EXTRA_TARGETS += docs
其中 Doxyfile 具有基本的 doxygen 配置设置减去 INPUT 符号,我通过“echo”附加该符号以仅包含 $(SOURCES) 中不满意的 Makefile 依赖项。
这种方法似乎有效,因为它只为已更改的源文件重新创建文档,这很好,但我遇到了另一个问题,即我的 qmake 项目文件是使用 debug_and_release CONFIG 选项构建的,因此它生成 Makefile、Makefile.Debug 和Makefile.Release 但 SOURCES 仅在调试和发布 Makefile 中定义,这迫使我明确地做 amake -f Makefile.Debug docs
而不是更简单直观make docs
的构建文档。
以前有人从 QMAKE_EXTRA_TARGETS 的角度解决过这个问题吗?