Fist part is to change CMakeLists.txt and doxygen.cfg.in by following reasons:
In llvm/docs/CmakeLists.txt, it was
- set(abs_top_srcdir ${LLVM_MAIN_SRC_DIR})
- set(abs_top_builddir ${LLVM_BINARY_DIR})
However, ${LLVM_MAIN_SRC_DIR} is not an environmental variable but just a normal local PATH, which is substituted by llvm/CmakeLists.txt as follows:
297 set(LLVM_MAIN_SRC_DIR ${CMAKE_CURRENT_SOURCE_DIR} ) # --src-root
298 set(LLVM_MAIN_INCLUDE_DIR ${LLVM_MAIN_SRC_DIR}/include ) # --includedir
299 set(LLVM_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR} ) # --prefix
In clang/docs/CmakeLists.txt, ${CMAKE_CURRENT_FOO_DIR} is used, so it is good to follow its way.
Also, I added README.txt how to generate llvm doxygen.
Second part is to change #include <Foo.h> to #include "Foo/Foo.h" as we did in clang [1].
It will change #include <jitprofiling.h> to #include "ExecutionEngine/IntelJITEvents/jitprofiling.h"
cmake cmake => cmake and I guess -DDOXYGEN_FOUND =>-DLLVM_ENABLE_DOXYGEN=On.
And we really need documentation for building this. The only search results I find for this are instructions for the pre-CMake era.
Anyway, the intended way is (at least from what I can see) to just run:
instead of invoking doxygen by yourself. Could you change this?