【发布时间】:2020-11-23 14:20:31
【问题描述】:
我正在使用 doxygen 1.8.20
相关配置:
INPUT = @CMAKE_CURRENT_SOURCE_DIR@
ENABLE_PREPROCESSING = YES
MACRO_EXPANSION = YES
EXPAND_ONLY_PREDEF = NO
SEARCH_INCLUDES = YES
INCLUDE_PATH = @CMAKE_CURRENT_SOURCE_DIR@/../include\
@CMAKE_CURRENT_SOURCE_DIR@/include\
@CMAKE_CURRENT_SOURCE_DIR@/src
INCLUDE_FILE_PATTERNS =
PREDEFINED =
EXPAND_AS_DEFINED =
SKIP_FUNCTION_MACROS = NO
定义的宏:
#define BEGIN_NS(NS) namespace NS {
#define END_NS(NS) /* NS */ }
宏观用法:
BEGIN_NS(xyz::core)
class X { ... };
END_NS(xyz::core)
- 文档中未生成命名空间
- X 类页面没有显示 X 类的命名空间
- 许多这样的警告:警告:找到';'在解析初始化列表时! (doxygen 可能会被不带分号的宏调用混淆)
- 函数宏调用被记录为函数定义,而不是被正确扩展和记录
** 编辑 **
doxygen -x 的结果
# Difference with default Doxyfile 1.8.20
PROJECT_NAME = "XXXX Library"
OUTPUT_DIRECTORY = project/../build/docs
TOC_INCLUDE_HEADINGS = 0
EXTRACT_ALL = YES
EXTRACT_PRIVATE = YES
EXTRACT_PACKAGE = YES
EXTRACT_STATIC = YES
WARN_IF_UNDOCUMENTED = NO
INPUT = project
FILE_PATTERNS = *.c \
*.cc \
*.cxx \
*.cpp \
*.c++ \
*.java \
*.ii \
*.ixx \
*.ipp \
*.i++ \
*.inl \
*.idl \
*.ddl \
*.odl \
*.h \
*.hh \
*.hxx \
*.hpp \
*.h++ \
*.cs \
*.d \
*.php \
*.php4 \
*.php5 \
*.phtml \
*.inc \
*.m \
*.markdown \
*.md \
*.mm \
*.dox \
*.py \
*.pyw \
*.f90 \
*.f95 \
*.f03 \
*.f08 \
*.f \
*.for \
*.tcl \
*.vhd \
*.vhdl \
*.ucf \
*.qsf
RECURSIVE = YES
VERBATIM_HEADERS = NO
MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest
GENERATE_LATEX = NO
LATEX_CMD_NAME = latex
GENERATE_XML = YES
MACRO_EXPANSION = YES
INCLUDE_PATH = project
SKIP_FUNCTION_MACROS = NO
HAVE_DOT = YES
【问题讨论】:
-
使用时很容易给出命令
doxygen -x,因此您可以了解标准 doxygen 设置和使用的设置之间的差异,请发布此列表。此外,请创建一个完整的小示例,以便我们尝试重现问题。
标签: doxygen