Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Doxygen: Seamless documentation for project with C++ and VHDL

Tags:

c++

doxygen

vhdl

I'm setting up a documentation about some sort of Library which consists of a C/C++ part and a VHDL part, plus some instructive doxygen-only pages. They have to be put into one self-contained group. Everything works so far, nice and fluffy...

But what if I want to optimize the output in the vhdl-subdirectory by using OPTIMIZE_OUTPUT_VHDL = YES and optimize the output of the c-subdirectory by using OPTIMIZE_OUTPUT_C = YES at the same time?

As far as I understand, using doxygen-tags is not optimal in my case, since it introduces new doxyfile.conf-files in each subdirectory, with independent runs of doxygen in each subdirectory. So, doing this I can't put both parts (c+vhdl) in different subgroups of the same group anymore, and links between the two parts are not possible. Also, the whole module should be "selfcontained", to be includable into bigger documentations, without the special build-structure involved in this solution...

What would you do?

like image 988
marvin2k Avatar asked Feb 24 '11 09:02

marvin2k


1 Answers

I had the same problem - eventually what we did is:

  1. Create a different directory for C code and VHDL code (+ respective doxygen comment files - as we didn't want to spam the code with doxygen tags everywhere).
  2. Run Doxygen for each of these directories (each with it's own oprimization tag - OPTIMIZE_OUTPUT_VHDL or OPTIMIZE_OUTPUT_C )
  3. Combine (manually!!!- though you can create a script for it) the output of these two directories such that the main page would reference the two directories.

Eventually I decided to shorten the time it takes to generate the documentation, and I just ignore the optimization tags...

like image 191
Henry Aloni Avatar answered Sep 28 '22 02:09

Henry Aloni