# Distributed under the OSI-approved BSD 3-Clause License. See accompanying # file Copyright.txt or https://cmake.org/licensing for details. if(NOT CMake_SOURCE_DIR) set(CMakeDeveloperReference_STANDALONE 1) cmake_minimum_required(VERSION 3.13...3.23 FATAL_ERROR) get_filename_component(tmp "${CMAKE_CURRENT_SOURCE_DIR}" PATH) get_filename_component(CMake_SOURCE_DIR "${tmp}" PATH) include(${CMake_SOURCE_DIR}/Modules/CTestUseLaunchers.cmake) include(${CMake_SOURCE_DIR}/Source/CMakeVersion.cmake) include(${CMake_SOURCE_DIR}/Source/CMakeInstallDestinations.cmake) unset(CMAKE_DATA_DIR) unset(CMAKE_DATA_DIR CACHE) macro(CMake_OPTIONAL_COMPONENT) set(COMPONENT "") endmacro() endif() project(CMakeDeveloperReference NONE) # # Build the reference # if (CMake_BUILD_DEVELOPER_REFERENCE OR CMakeDeveloperReference_STANDALONE) find_package(Doxygen REQUIRED) # ## Output formats # option(CMake_BUILD_DEVELOPER_REFERENCE_HTML "Build CMake Developer Reference - HTML format" ON) mark_as_advanced(CMake_BUILD_DEVELOPER_REFERENCE_HTML) if(CMake_BUILD_DEVELOPER_REFERENCE_HTML) set(GENERATE_HTML YES) else() set(GENERATE_HTML NO) endif() option(CMake_BUILD_DEVELOPER_REFERENCE_QTHELP "Build CMake Developer Reference - QtHelp format" OFF) mark_as_advanced(CMake_BUILD_DEVELOPER_REFERENCE_QTHELP) if(CMake_BUILD_DEVELOPER_REFERENCE_QTHELP) set(GENERATE_QHP YES) find_program(QHELPGENERATOR_EXECUTABLE NAMES qhelpgenerator DOC "qhelpgenerator tool" ) if(NOT QHELPGENERATOR_EXECUTABLE) message(FATAL_ERROR "QHELPGENERATOR_EXECUTABLE (qhelpgenerator) not found!") endif() else() set(GENERATE_QHP NO) endif() # # Configure the script and the doxyfile, then add target # if(DOXYGEN_DOT_FOUND) set(HAVE_DOT YES) else() set(HAVE_DOT NO) endif() if(NOT DOT_PATH) get_filename_component(DOT_PATH ${DOXYGEN_DOT_EXECUTABLE} PATH) endif() configure_file(doxyfile.in doxyfile @ONLY) add_custom_target(cmake-developer-reference-all ${DOXYGEN_EXECUTABLE} doxyfile WORKING_DIRECTORY ${CMakeDeveloperReference_BINARY_DIR}) add_custom_target(cmake-developer-reference ALL DEPENDS cmake-developer-reference-all) # # Installation # if(CMake_BUILD_DEVELOPER_REFERENCE_HTML) CMake_OPTIONAL_COMPONENT(cmake-developer-reference-html) install(DIRECTORY "${CMakeDeveloperReference_BINARY_DIR}/developer-reference/html" DESTINATION ${CMAKE_DOC_DIR}/developer-reference ${COMPONENT}) endif() if(CMake_BUILD_DEVELOPER_REFERENCE_QTHELP) CMake_OPTIONAL_COMPONENT(cmake-developer-reference-qthelp) install(FILES "${CMakeDeveloperReference_BINARY_DIR}/developer-reference/CMakeDeveloperReference-${CMake_VERSION_MAJOR}${CMake_VERSION_MINOR}${CMake_VERSION_PATCH}.qch" DESTINATION ${CMAKE_DOC_DIR}/developer-reference ${COMPONENT}) endif() endif ()