Build LLVM/Clang Docset
-
Modify LLVM/Clang doxygen.config.in
- GENERATE_DOCSET = YES
- DISABLE_INDEX = YES
- SEARCHENGINE = NO
- GENERATE_TREEVIEW = NO
- GENERATE_TAGFILE =
- LLVM: @abs_top_builddir@/doxygen/llvm(clang).tag
- Clang: @abs_builddir@/doxygen/llvm(clang).tag
- Disable dot, optional (all options with "_GRAPH" suffix)
-
CMake:
- LLVM_ENABLE_DOXYGEN
- LLVM_INCLUDE_DOCS
- CLANG_INCLUDE_DOCS
-
make
- make doxygen-llvm(clang)
- cd doxygen/html && make
- git clone doxytag2zealdb
-
Zealdoc
-
link Contents under doxygen/html to Zeal/Docsets/LLVM.docset
-
python3 -m doxytag2zealdb --tag $TAG_FILE_LOCATION
--db LLVM.docset/Contents/Resources/docSet.dsidx
--include-parent-scopes
--include-function-signatures -
Modify plist:
- CFBundleName: llvm
- DocSetPlatformFamily: llvm
- isJavaScriptEnabled: true (https://kapeli.com/docsets#enableJavascript)
-
Copy javascript:
- wget https://clang.llvm.org/doxygen/dynsections.js to Clang.docset/Contents/Resources/Documents
- wget https://llvm.org/doxygen/dynsections.js to LLVM.docset/Contents/Resources/Documents
-
Reference: