我在Windows机器上使用氧分体1.8.6,并尝试使用通配符添加输入目录。
我有一个包含源代码的几个子目录的目录,但我只想添加特定的目录。在下面的示例中,我只想让氧原子解析以字符串"own_"开头的子目录。
目前我分别添加每个目录,但这是非常不方便的,因为版本可以改变,甚至包含的模块/库(目录内容是由另一个程序生成的)。
modules
lib_x
mod_ab
ext_mod_ab
ext_lib_cde
own_module_foo_1v1
own_module_bar_2v0
own_library_foo_1v0
own_library_bar_1v0
提前感谢。
解决方案是使用
@include {filename}
在doxyfile中。所引用的文件必须使用脚本生成。我的doxyfile看起来像这样
INPUT = .
@INCLUDE = temp_path_file
获取所有匹配目录所需的命令脚本在Windows下看起来像这样(屏蔽,例如path1_*,也可以工作):
for /d %%a in ("%USER_PATH%*") do echo INPUT += %%~fa >> %FILE_NAME%
使用批处理脚本创建氧气手册。在氧气手册后面加上以下行:
INPUT += %directory%
通过Windows Shell命令echo
。
我的解决方案是使用oxygen对扩展环境变量的支持:
INPUT = $(SPACE_SEPARATED_LIST)
如示例变量名所示,变量的值需要是一个以空格分隔的文件或目录名列表。
当然,您需要导出SPACE_SEPARATED_lIST
变量,以便氧知道它。
截至2023年2月,接受的答案对我不起作用。我在基于debian的操作系统上运行氧气1.9.6。被接受的答案是这样做的:
INPUT = .
@INCLUDE = temp_path_file
氧似乎仍然搜索所有目录由于INPUT = .
行
小例子(由@KayceBasques在https://stackoverflow.com/a/75495328/1657886的评论中要求)
Doxyfile
INPUT = .
QUIET = YES
@INCLUDE my_incl
my_incl
INPUT =
INPUT += my_first_dir
INPUT += my_second_dir