This is an archive of the discontinued LLVM Phabricator instance.

[cmake] Support overriding remaining HTML doc install directories
ClosedPublic

Authored by mgorny on Sep 26 2016, 12:50 PM.

Details

Summary

Support overriding the Doxygen & OCamldoc install directories, and provide a more FHS-compliant defaults for both of them. This extends r282240 that added this override for Sphinx-built documentation.

LLVM_INSTALL_DOXYGEN_HTML_DIR and LLVM_INSTALL_OCAMLDOC_HTML_DIR are added, to control the location where Doxygen-generated and OCamldoc-generated HTML docs are installed appropriately. They both specify CMake-style install paths, and therefore can either by relative to the install prefix or absolute.

The new defaults are subdirectories of share/doc/llvm, and replace the previous directories of 'docs/html' and 'docs/ocaml/html' that resulted in creating invalid '/usr/docs' that furthermore lacked proper namespacing for the LLVM package. The new defaults are consistent with the ones used for Sphinx HTML documentation, differing only in the last component. Since the 'html' subdirectory is already used for Sphinx docs, the 'doxygen-html' and 'ocaml-html' directories are used instead.

Diff Detail

Repository
rL LLVM

Event Timeline

mgorny updated this revision to Diff 72541.Sep 26 2016, 12:50 PM
mgorny retitled this revision from to [cmake] Support overriding remaining HTML doc install directories .
mgorny updated this object.
mgorny added reviewers: delcypher, gottesmm, whitequark.
mgorny added a subscriber: llvm-commits.
beanz accepted this revision.Sep 27 2016, 10:52 AM
beanz added a reviewer: beanz.

Small nit below, otherwise LGTM! Thanks!

docs/CMakeLists.txt
99 ↗(On Diff #72541)

Can you add a COMPONENT to the install commands, maybe something like "doxygen-html"?

162 ↗(On Diff #72541)

Here too.

This revision is now accepted and ready to land.Sep 27 2016, 10:52 AM
This revision was automatically updated to reflect the committed changes.
mgorny marked 2 inline comments as done.

Thanks for the review. Added components and committed. I will also prepare a quick PR to add components to the Sphinx-installed documentation.