Simplify AddSphinxTarget.cmake by just including `GNUInstallDirs`
See the discussion in D30906 for how it must be robust to downstream projects that might not use `GNUInstallDirs`. I think an easier approach is just to include `GNUInstallDirs` so that we can always rely on it. Looking at its definition in https://gitlab.kitware.com/cmake/cmake/-/blob/master/Modules/GNUInstallDirs.cmake it appears safe to include multiple times. I am trying this out because we will face the same problem many times over if we use `GNUInstallDirs` more widely, as proposed in D99484 and its parent revisions, since we do not know what downstream projects do and rather not break them. Reviewed By: phosek Differential Revision: https://reviews.llvm.org/D115601
This commit is contained in:
parent
a6a07a514b
commit
5f7afa9607
|
@ -1,3 +1,4 @@
|
|||
include(GNUInstallDirs)
|
||||
|
||||
# Create sphinx target
|
||||
if (LLVM_ENABLE_SPHINX)
|
||||
|
@ -73,15 +74,10 @@ function (add_sphinx_target builder project)
|
|||
# Handle installation
|
||||
if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
|
||||
if (builder STREQUAL man)
|
||||
if (CMAKE_INSTALL_MANDIR)
|
||||
set(INSTALL_MANDIR "${CMAKE_INSTALL_MANDIR}/")
|
||||
else()
|
||||
set(INSTALL_MANDIR share/man/)
|
||||
endif()
|
||||
# FIXME: We might not ship all the tools that these man pages describe
|
||||
install(DIRECTORY "${SPHINX_BUILD_DIR}/" # Slash indicates contents of
|
||||
COMPONENT "${project}-sphinx-man"
|
||||
DESTINATION ${INSTALL_MANDIR}man1)
|
||||
DESTINATION "${CMAKE_INSTALL_MANDIR}/man1")
|
||||
|
||||
if(NOT LLVM_ENABLE_IDE)
|
||||
add_llvm_install_targets("install-${SPHINX_TARGET_NAME}"
|
||||
|
|
Loading…
Reference in New Issue