I have a source repository in C++ (and some CUDA), which I want to doxygenate. I've added doxygen comments to some - but not all - of the code; generated a Doxygen config file, and ran doxygen with it to see some partial output.
What I get is: Nothing. Empty.
A main page is generated, it just doesn't show anything - even though I specifically set EXTRACT_ALL = YES (after getting empty results with EXTRACT_ALL = NO.
Why is nothing being generated and how can I fix it?
Notes:
- All header files have
@filecomments. - I've added CUDA-related extensions to the allowed patterns
- I had an earlier version of this question, with no answers following which the situation changed somewhat (so I deleted that one).
- Even when removing most lines out of the
doxygen.cfg(see below), the problem persists.
doxygen.cfg (shorter version, with comments filtered out):
DOXYFILE_ENCODING = UTF-8 PROJECT_NAME = "cuda-api-wrappers" PROJECT_BRIEF = "Thin C++-flavored wrappers for the CUDA Runtime API" OUTPUT_DIRECTORY = docs ALLOW_UNICODE_NAMES = YES OUTPUT_LANGUAGE = English BRIEF_MEMBER_DESC = YES REPEAT_BRIEF = YES FULL_PATH_NAMES = YES JAVADOC_AUTOBRIEF = YES QT_AUTOBRIEF = NO MULTILINE_CPP_IS_BRIEF = NO INHERIT_DOCS = YES SEPARATE_MEMBER_PAGES = NO TAB_SIZE = 4 EXTENSION_MAPPING = cu=C++ cuh=C++ cuhpp=C++ hpp=C++ MARKDOWN_SUPPORT = YES AUTOLINK_SUPPORT = YES BUILTIN_STL_SUPPORT = YES SUBGROUPING = YES LOOKUP_CACHE_SIZE = 2 EXTRACT_ALL = YES EXTRACT_LOCAL_CLASSES = YES HIDE_UNDOC_MEMBERS = NO HIDE_UNDOC_CLASSES = NO HIDE_FRIEND_COMPOUNDS = NO CASE_SENSE_NAMES = YES HIDE_SCOPE_NAMES = NO HIDE_COMPOUND_REFERENCE= NO SHOW_INCLUDE_FILES = YES SHOW_GROUPED_MEMB_INC = NO FORCE_LOCAL_INCLUDES = NO INLINE_INFO = YES SORT_MEMBER_DOCS = YES STRICT_PROTO_MATCHING = NO MAX_INITIALIZER_LINES = 30 SHOW_USED_FILES = YES SHOW_FILES = YES SHOW_NAMESPACES = YES QUIET = NO WARNINGS = YES WARN_IF_UNDOCUMENTED = YES WARN_IF_DOC_ERROR = YES WARN_NO_PARAMDOC = NO WARN_AS_ERROR = NO WARN_FORMAT = "$file:$line: $text" INPUT = src INPUT_ENCODING = UTF-8 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, *.f, *.for, *.tcl, *.vhd, *.vhdl, *.ucf, *.qsf, *.as *.js, *.cuh, *.cu, *.cuhpp RECURSIVE = YES Doxygen console output:
Adding custom extension mapping: .cu will be treated as language c++ Adding custom extension mapping: .cuh will be treated as language c++ Adding custom extension mapping: .cuhpp will be treated as language c++ Adding custom extension mapping: .hpp will be treated as language c++ Searching for include files... Searching for example files... Searching for images... Searching for dot files... Searching for msc files... Searching for dia files... Searching for files to exclude Searching INPUT for files to process... Searching for files in directory /home/eyalroz/src/mine/cuda-api-wrappers/src Searching for files in directory /home/eyalroz/src/mine/cuda-api-wrappers/src/cuda Searching for files in directory /home/eyalroz/src/mine/cuda-api-wrappers/src/cuda/api Reading and parsing tag files Parsing files Building group list... Building directory list... Building namespace list... Building file list... Building class list... Associating documentation with classes... Computing nesting relations for classes... Building example list... Searching for enumerations... Searching for documented typedefs... Searching for members imported via using declarations... Searching for included using directives... Searching for documented variables... Building interface member list... Building member list... Searching for friends... Searching for documented defines... Computing class inheritance relations... Computing class usage relations... Flushing cached template relations that have become invalid... Creating members for template instances... Computing class relations... Add enum values to enums... Searching for member function documentation... Building page list... Search for main page... Computing page relations... Determining the scope of groups... Sorting lists... Freeing entry tree Determining which enums are documented Computing member relations... Building full member lists recursively... Adding members to member groups. Computing member references... Inheriting documentation... Generating disk names... Adding source references... Adding xrefitems... Sorting member lists... Computing dependencies between directories... Generating citations page... Counting data structures... Resolving user defined references... Finding anchors and sections in the documentation... Transferring function references... Combining using relations... Adding members to index pages... Generating style sheet... Generating search indices... Generating example documentation... Generating file sources... Generating file documentation... Generating page documentation... Generating group documentation... Generating class documentation... Generating namespace index... Generating graph info page... Generating directory documentation... Generating index page... Generating page index... Generating module index... Generating namespace index... Generating namespace member index... Generating annotated compound index... Generating alphabetical compound index... Generating hierarchical class index... Generating graphical class hierarchy... Generating member index... Generating file index... Generating file member index... Generating example index... finalizing index lists... writing tag file... Running dot... lookup cache used 127/262144 hits=628 misses=194 finished...