|
|
@@ -49,6 +49,12 @@ else()
|
|
|
set(conf_copyright "Kitware, Inc.")
|
|
|
endif()
|
|
|
|
|
|
+if(CMake_SPHINX_CMAKE_ORG)
|
|
|
+ set(conf_baseurl "https://cmake.org/cmake/help/latest")
|
|
|
+else()
|
|
|
+ set(conf_baseurl "")
|
|
|
+endif()
|
|
|
+
|
|
|
set(conf_docs "${CMake_SOURCE_DIR}/Help")
|
|
|
set(conf_path "${CMAKE_CURRENT_SOURCE_DIR}")
|
|
|
set(conf_version "${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}.${CMake_VERSION_PATCH}")
|
|
|
@@ -129,11 +135,24 @@ if(SPHINX_LATEXPDF)
|
|
|
list(APPEND doc_formats latexpdf)
|
|
|
endif()
|
|
|
|
|
|
+set(doc_html_opts "")
|
|
|
+if(CMake_SPHINX_CMAKE_ORG)
|
|
|
+ list(APPEND doc_html_opts
|
|
|
+ -A googleanalytics=1
|
|
|
+ -A versionswitch=1
|
|
|
+ )
|
|
|
+endif()
|
|
|
+
|
|
|
set(doc_format_outputs "")
|
|
|
set(doc_format_last "")
|
|
|
foreach(format ${doc_formats})
|
|
|
set(doc_format_output "doc_format_${format}")
|
|
|
set(doc_format_log "build-${format}.log")
|
|
|
+ if(CMake_SPHINX_CMAKE_ORG)
|
|
|
+ set(doctrees "doctrees/${format}")
|
|
|
+ else()
|
|
|
+ set(doctrees "doctrees")
|
|
|
+ endif()
|
|
|
if(format STREQUAL "latexpdf")
|
|
|
# This format does not use builder (-b) but make_mode (-M) which expects
|
|
|
# arguments in peculiar order
|
|
|
@@ -144,8 +163,9 @@ foreach(format ${doc_formats})
|
|
|
${CMake_SOURCE_DIR}/Help
|
|
|
${CMAKE_CURRENT_BINARY_DIR}/${format}
|
|
|
-c ${CMAKE_CURRENT_BINARY_DIR}
|
|
|
- -d ${CMAKE_CURRENT_BINARY_DIR}/doctrees
|
|
|
+ -d ${CMAKE_CURRENT_BINARY_DIR}/${doctrees}
|
|
|
${sphinx_flags}
|
|
|
+ ${doc_${format}_opts}
|
|
|
> ${doc_format_log} # log stdout, pass stderr
|
|
|
${${format}_extra_commands}
|
|
|
DEPENDS ${doc_format_last}
|
|
|
@@ -158,9 +178,10 @@ foreach(format ${doc_formats})
|
|
|
OUTPUT ${doc_format_output}
|
|
|
COMMAND ${SPHINX_EXECUTABLE}
|
|
|
-c ${CMAKE_CURRENT_BINARY_DIR}
|
|
|
- -d ${CMAKE_CURRENT_BINARY_DIR}/doctrees
|
|
|
+ -d ${CMAKE_CURRENT_BINARY_DIR}/${doctrees}
|
|
|
-b ${format}
|
|
|
${sphinx_flags}
|
|
|
+ ${doc_${format}_opts}
|
|
|
${CMake_SOURCE_DIR}/Help
|
|
|
${CMAKE_CURRENT_BINARY_DIR}/${format}
|
|
|
> ${doc_format_log} # log stdout, pass stderr
|
|
|
@@ -172,7 +193,9 @@ foreach(format ${doc_formats})
|
|
|
endif()
|
|
|
set_property(SOURCE ${doc_format_output} PROPERTY SYMBOLIC 1)
|
|
|
list(APPEND doc_format_outputs ${doc_format_output})
|
|
|
- set(doc_format_last ${doc_format_output})
|
|
|
+ if(NOT CMake_SPHINX_CMAKE_ORG)
|
|
|
+ set(doc_format_last ${doc_format_output})
|
|
|
+ endif()
|
|
|
endforeach()
|
|
|
|
|
|
add_custom_target(documentation ALL DEPENDS ${doc_format_outputs})
|
|
|
@@ -192,6 +215,10 @@ if(CMake_SPHINX_DEPEND_ON_EXECUTABLES)
|
|
|
endforeach()
|
|
|
endif()
|
|
|
|
|
|
+if(CMake_SPHINX_CMAKE_ORG)
|
|
|
+ return()
|
|
|
+endif()
|
|
|
+
|
|
|
if(SPHINX_INFO)
|
|
|
CMake_OPTIONAL_COMPONENT(sphinx-info)
|
|
|
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/texinfo/cmake.info
|