[PATCH] Added doxygen support for the tools of clang-tools-extra repo

Vane, Edwin edwin.vane at intel.com
Wed Feb 27 11:04:00 PST 2013


I'm a little confused about these various documentation threads. Let me recap my understanding.

The goal is to get sphinx and doxygen being generated for clang-tools-extra. Currently, none of llvm/clang/extra can generate these docs via cmake and are using the autoconf system to generate docs into the source tree. Llvm/clang are generating doxygen docs in a way  silvas doesn't like (referring to the thread about not having Doxygen.intro, and non-standard CSS, etc.) and would like tools-extra to generate Doxygen in a better way as a trailblazer. Is this all correct?

Silvas says generating docs to the build dir is a big deal that requires lots of input. Shall we begin a discussion on cfe-dev then? 

Does it still make sense to add cmake docs support for llvm/clang/extra or should we wait on outcome of discussion?

-----Original Message-----
From: Sean Silva [mailto:silvas at purdue.edu] 
Sent: Wednesday, February 27, 2013 1:18 PM
To: Vane, Edwin; silvas at purdue.edu; gribozavr at gmail.com; Bernal, Ariel J
Cc: cfe-commits at cs.uiuc.edu
Subject: Re: [PATCH] Added doxygen support for the tools of clang-tools-extra repo


  > Does anyone know if there is any limitation on moving the sphinx docs to the build tree?

  I would really prefer that the doxygen docs not be in the build tree in the first place, since that makes them dependent on the build system. For now, keep all build products for the documentation inside the `_build` directory that Sphinx uses. If we want to tie in the build system, it will need a concerted effort to be done right (e.g. work with both build systems, install things in the right places pages (which will probably need input from package maintainers), actually build the man pages, work cleanly across LLVM/Clang/clang-tools-extra, etc.).

  Basically, <http://clang.llvm.org/extra/> hosts the files that are in the `docs/_build/html/` directory after executing `make html` (or maybe just `make`, which defaults to `make html` I think; ddunbar would know the exact details). So basically `docs/_build/html/foo.html` becomes <http://clang.llvm.org/extra/foo.html>.

  I would recommend mimicking <https://github.com/chisophugis/klang/tree/master/docs> as closely as possible. What it does is to tell doxygen to generate the HTML output in `docs/_build/html/doxygen/`. You can diff the Doxyfile there against the default one to see what changes I made to make that happen. In particular, <https://github.com/chisophugis/klang/blob/master/docs/Doxyfile#L55> and <https://github.com/chisophugis/klang/blob/master/docs/Doxyfile#L898>.

http://llvm-reviews.chandlerc.com/D451




More information about the cfe-commits mailing list