Changeset View
Changeset View
Standalone View
Standalone View
docs/CMakeLists.txt
| Show All 21 Lines | |||||
| 22 | # NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | 22 | # NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||
| 23 | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | 23 | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | ||
| 24 | # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 24 | # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
| 25 | # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | 25 | # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | ||
| 26 | # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 26 | # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
| 27 | #============================================================================= | 27 | #============================================================================= | ||
| 28 | 28 | | |||
| 29 | include(CMakeDependentOption) | 29 | include(CMakeDependentOption) | ||
| 30 | include("${CMAKE_SOURCE_DIR}/modules/ECMQueryQmake.cmake") | ||||
| 30 | 31 | | |||
| 31 | find_package(Sphinx 1.2 MODULE) | 32 | find_package(Sphinx 1.2 MODULE) | ||
| 32 | set_package_properties( | 33 | set_package_properties( | ||
| 33 | Sphinx | 34 | Sphinx | ||
| 34 | PROPERTIES | 35 | PROPERTIES | ||
| 35 | URL "http://sphinx-doc.org/" | 36 | URL "http://sphinx-doc.org/" | ||
| 36 | DESCRIPTION "Tool to generate documentation." | 37 | DESCRIPTION "Tool to generate documentation." | ||
| 37 | TYPE OPTIONAL | 38 | TYPE OPTIONAL | ||
| 38 | PURPOSE "Required to build documentation for Extra CMake Modules." | 39 | PURPOSE "Required to build documentation for Extra CMake Modules." | ||
| 39 | ) | 40 | ) | ||
| 40 | 41 | | |||
| 42 | # QCollectionGenerator and QHelpGenerator were merged in Qt 5.12 | ||||
| 43 | query_qmake(QT_VERSION QT_VERSION) | ||||
| 44 | | ||||
| 45 | if(QT_VERSION VERSION_LESS 5.12.0) | ||||
| 41 | find_package(QCollectionGenerator MODULE) | 46 | find_package(QCollectionGenerator MODULE) | ||
| 42 | set_package_properties( | 47 | set_package_properties( | ||
| 43 | QCollectionGenerator | 48 | QCollectionGenerator | ||
| 44 | PROPERTIES | 49 | PROPERTIES | ||
| 45 | URL "http://www.qt.io/" | 50 | URL "http://www.qt.io/" | ||
| 46 | DESCRIPTION "Qt help collection generator." | 51 | DESCRIPTION "Qt help collection generator" | ||
| 52 | TYPE OPTIONAL | ||||
| 53 | PURPOSE "Required to build Extra CMake Modules documentation in Qt Help format." | ||||
| 54 | ) | ||||
| 55 | if(QCollectionGenerator_FOUND) | ||||
| 56 | set(_ecm_qtdoc_generator QCollectionGenerator::Generator) | ||||
| 57 | endif() | ||||
| 58 | else() | ||||
| 59 | find_package(QHelpGenerator MODULE) | ||||
| 60 | set_package_properties( | ||||
| 61 | QHelpGenerator | ||||
| 62 | PROPERTIES | ||||
| 63 | URL "http://www.qt.io/" | ||||
| 64 | DESCRIPTION "Qt help generator" | ||||
| 47 | TYPE OPTIONAL | 65 | TYPE OPTIONAL | ||
| 48 | PURPOSE "Required to build Extra CMake Modules documentation in Qt Help format." | 66 | PURPOSE "Required to build Extra CMake Modules documentation in Qt Help format." | ||
| 49 | ) | 67 | ) | ||
| 68 | if(QHelpGenerator_FOUND) | ||||
| 69 | set(_ecm_qtdoc_generator QHelpGenerator::Generator) | ||||
| 70 | endif() | ||||
| 71 | endif() | ||||
| 72 | if(DEFINED _ecm_qtdoc_generator) | ||||
| 73 | set(QT_HELP_GENERATOR_FOUND TRUE) | ||||
| 74 | endif() | ||||
| 50 | 75 | | |||
| 51 | cmake_dependent_option( | 76 | cmake_dependent_option( | ||
| 52 | BUILD_HTML_DOCS "Build html help with Sphinx" ON | 77 | BUILD_HTML_DOCS "Build html help with Sphinx" ON | ||
| 53 | "Sphinx_FOUND" OFF | 78 | "Sphinx_FOUND" OFF | ||
| 54 | ) | 79 | ) | ||
| 55 | add_feature_info(BUILD_HTML_DOCS BUILD_HTML_DOCS "Generate HTML documentation for installed modules.") | 80 | add_feature_info(BUILD_HTML_DOCS BUILD_HTML_DOCS "Generate HTML documentation for installed modules.") | ||
| 56 | 81 | | |||
| 57 | cmake_dependent_option( | 82 | cmake_dependent_option( | ||
| 58 | BUILD_MAN_DOCS "Build man pages with Sphinx" ON | 83 | BUILD_MAN_DOCS "Build man pages with Sphinx" ON | ||
| 59 | "Sphinx_FOUND" OFF | 84 | "Sphinx_FOUND" OFF | ||
| 60 | ) | 85 | ) | ||
| 61 | add_feature_info(BUILD_MAN_DOCS BUILD_MAN_DOCS "Generate man page documentation for installed modules.") | 86 | add_feature_info(BUILD_MAN_DOCS BUILD_MAN_DOCS "Generate man page documentation for installed modules.") | ||
| 62 | 87 | | |||
| 63 | cmake_dependent_option( | 88 | cmake_dependent_option( | ||
| 64 | BUILD_QTHELP_DOCS "Build Qt help with Sphinx" OFF | 89 | BUILD_QTHELP_DOCS "Build Qt help with Sphinx" OFF | ||
| 65 | "Sphinx_FOUND;QCollectionGenerator_FOUND" OFF | 90 | "Sphinx_FOUND;QT_HELP_GENERATOR_FOUND" OFF | ||
| 66 | ) | 91 | ) | ||
| 67 | add_feature_info(BUILD_QTHELP_DOCS BUILD_QTHELP_DOCS "Generate QtHelp documentation for installed modules.") | 92 | add_feature_info(BUILD_QTHELP_DOCS BUILD_QTHELP_DOCS "Generate QtHelp documentation for installed modules.") | ||
| 68 | 93 | | |||
| 69 | 94 | | |||
| 70 | set(doc_formats "") | 95 | set(doc_formats "") | ||
| 71 | if(BUILD_HTML_DOCS) | 96 | if(BUILD_HTML_DOCS) | ||
| 72 | list(APPEND doc_formats html) | 97 | list(APPEND doc_formats html) | ||
| 73 | endif() | 98 | endif() | ||
| 74 | if(BUILD_MAN_DOCS) | 99 | if(BUILD_MAN_DOCS) | ||
| 75 | list(APPEND doc_formats man) | 100 | list(APPEND doc_formats man) | ||
| 76 | endif() | 101 | endif() | ||
| 77 | if(BUILD_QTHELP_DOCS) | 102 | if(BUILD_QTHELP_DOCS) | ||
| 78 | list(APPEND doc_formats qthelp) | 103 | list(APPEND doc_formats qthelp) | ||
| 79 | set(qthelp_extra_commands | 104 | set(qthelp_extra_commands | ||
| 80 | COMMAND | 105 | COMMAND | ||
| 81 | QCollectionGenerator::Generator | 106 | "${_ecm_qtdoc_generator}" | ||
| 82 | ${CMAKE_CURRENT_BINARY_DIR}/qthelp/ExtraCMakeModules.qhcp | 107 | ${CMAKE_CURRENT_BINARY_DIR}/qthelp/ExtraCMakeModules.qhcp | ||
| 83 | ) | 108 | ) | ||
| 84 | endif() | 109 | endif() | ||
| 85 | 110 | | |||
| 86 | if(NOT doc_formats) | 111 | if(NOT doc_formats) | ||
| 87 | return() | 112 | return() | ||
| 88 | endif() | 113 | endif() | ||
| 89 | 114 | | |||
| ▲ Show 20 Lines • Show All 64 Lines • Show Last 20 Lines | |||||