diff options
author | Alexander Neundorf <neundorf@kde.org> | 2007-06-15 12:53:33 (GMT) |
---|---|---|
committer | Alexander Neundorf <neundorf@kde.org> | 2007-06-15 12:53:33 (GMT) |
commit | c2f7a3c02730759d6bde6b6b50daa1f23cc5fe24 (patch) | |
tree | b8bb673baeb3f137c58896e0837796f59894d8f1 /Utilities/CMakeLists.txt | |
parent | 9a696669dc195376fe8849c8735427aa309b8132 (diff) | |
download | CMake-c2f7a3c02730759d6bde6b6b50daa1f23cc5fe24.zip CMake-c2f7a3c02730759d6bde6b6b50daa1f23cc5fe24.tar.gz CMake-c2f7a3c02730759d6bde6b6b50daa1f23cc5fe24.tar.bz2 |
STYLE: use a macro for generating the documentation
Alex
Diffstat (limited to 'Utilities/CMakeLists.txt')
-rw-r--r-- | Utilities/CMakeLists.txt | 134 |
1 files changed, 37 insertions, 97 deletions
diff --git a/Utilities/CMakeLists.txt b/Utilities/CMakeLists.txt index e3706d8..9a0bb02 100644 --- a/Utilities/CMakeLists.txt +++ b/Utilities/CMakeLists.txt @@ -5,106 +5,46 @@ MAKE_DIRECTORY(${CMake_BINARY_DIR}/Docs) # Add a documentation target. SET(DOC_FILES "") -# Generate documentation for "cmake" executable. +MACRO(ADD_DOCS target dependency) + # Generate documentation for "ctest" executable. + GET_TARGET_PROPERTY(CMD ${target} LOCATION) + # only generate the documentation if the target is actually built + IF(CMD) + ADD_CUSTOM_COMMAND( + OUTPUT ${CMake_BINARY_DIR}/Docs/${target}.txt + COMMAND ${CMD} + ARGS --help-full ${CMake_BINARY_DIR}/Docs/${target}.txt + --help-html ${CMake_BINARY_DIR}/Docs/${target}.html + --help-man ${CMake_BINARY_DIR}/Docs/${target}.1 + DEPENDS ${target} + MAIN_DEPENDENCY ${dependency} + ) + INSTALL_FILES(${CMAKE_MAN_DIR}/man1 FILES ${CMake_BINARY_DIR}/Docs/${target}.1) + INSTALL_FILES(${CMAKE_DOC_DIR} FILES + ${CMake_BINARY_DIR}/Docs/${target}.txt + ${CMake_BINARY_DIR}/Docs/${target}.html + ) + SET(DOC_FILES ${DOC_FILES} ${CMake_BINARY_DIR}/Docs/${target}.txt) + ENDIF(CMD) +ENDMACRO(ADD_DOCS target dependency) + +# add the docs for the executables +ADD_DOCS(cmake ${CMake_SOURCE_DIR}/Utilities/Doxygen/authors.txt) +ADD_DOCS(ctest ${CMake_SOURCE_DIR}/Utilities/Doxygen/authors.txt) +ADD_DOCS(cpack ${CMake_SOURCE_DIR}/Utilities/Doxygen/authors.txt) +ADD_DOCS(ccmake ${CMake_SOURCE_DIR}/Utilities/Doxygen/authors.txt) +ADD_DOCS(CMakeSetup ${CMake_SOURCE_DIR}/Utilities/Doxygen/doxyfile.in) + +# add the Copyright file GET_TARGET_PROPERTY(CMD cmake LOCATION) ADD_CUSTOM_COMMAND( - OUTPUT ${CMake_BINARY_DIR}/Docs/cmake.txt - COMMAND ${CMD} - ARGS --copyright ${CMake_BINARY_DIR}/Docs/Copyright.txt - --help-full ${CMake_BINARY_DIR}/Docs/cmake.txt - --help-html ${CMake_BINARY_DIR}/Docs/cmake.html - --help-man ${CMake_BINARY_DIR}/Docs/cmake.1 - DEPENDS cmake + OUTPUT ${CMake_BINARY_DIR}/Docs/Copyright.txt + COMMAND ${CMD} --copyright ${CMake_BINARY_DIR}/Docs/Copyright.txt + DEPENDS ${target} MAIN_DEPENDENCY ${CMake_SOURCE_DIR}/Utilities/Doxygen/authors.txt ) -INSTALL_FILES(${CMAKE_MAN_DIR}/man1 FILES ${CMake_BINARY_DIR}/Docs/cmake.1) -INSTALL_FILES(${CMAKE_DOC_DIR} FILES - ${CMake_BINARY_DIR}/Docs/Copyright.txt - ${CMake_BINARY_DIR}/Docs/cmake.txt - ${CMake_BINARY_DIR}/Docs/cmake.html - ) -SET(DOC_FILES ${DOC_FILES} ${CMake_BINARY_DIR}/Docs/cmake.txt) - -# Generate documentation for "ctest" executable. -GET_TARGET_PROPERTY(CMD ctest LOCATION) -ADD_CUSTOM_COMMAND( - OUTPUT ${CMake_BINARY_DIR}/Docs/ctest.txt - COMMAND ${CMD} - ARGS --help-full ${CMake_BINARY_DIR}/Docs/ctest.txt - --help-html ${CMake_BINARY_DIR}/Docs/ctest.html - --help-man ${CMake_BINARY_DIR}/Docs/ctest.1 - DEPENDS ctest - MAIN_DEPENDENCY ${CMake_SOURCE_DIR}/Utilities/Doxygen/authors.txt - ) -INSTALL_FILES(${CMAKE_MAN_DIR}/man1 FILES ${CMake_BINARY_DIR}/Docs/ctest.1) -INSTALL_FILES(${CMAKE_DOC_DIR} FILES - ${CMake_BINARY_DIR}/Docs/ctest.txt - ${CMake_BINARY_DIR}/Docs/ctest.html - ) -SET(DOC_FILES ${DOC_FILES} ${CMake_BINARY_DIR}/Docs/ctest.txt) - -# Generate documentation for "cpack" executable. -GET_TARGET_PROPERTY(CMD cpack LOCATION) -ADD_CUSTOM_COMMAND( - OUTPUT ${CMake_BINARY_DIR}/Docs/cpack.txt - COMMAND ${CMD} - ARGS --help-full ${CMake_BINARY_DIR}/Docs/cpack.txt - --help-html ${CMake_BINARY_DIR}/Docs/cpack.html - --help-man ${CMake_BINARY_DIR}/Docs/cpack.1 - DEPENDS cpack - MAIN_DEPENDENCY ${CMake_SOURCE_DIR}/Utilities/Doxygen/authors.txt - ) -INSTALL_FILES(${CMAKE_MAN_DIR}/man1 FILES ${CMake_BINARY_DIR}/Docs/cpack.1) -INSTALL_FILES(${CMAKE_DOC_DIR} FILES - ${CMake_BINARY_DIR}/Docs/cpack.txt - ${CMake_BINARY_DIR}/Docs/cpack.html - ) -SET(DOC_FILES ${DOC_FILES} ${CMake_BINARY_DIR}/Docs/cpack.txt) - -# Generate documentation for "ccmake" executable. -IF(BUILD_CursesDialog) - GET_TARGET_PROPERTY(CMD ccmake LOCATION) - ADD_CUSTOM_COMMAND( - OUTPUT ${CMake_BINARY_DIR}/Docs/ccmake.txt - COMMAND ${CMD} - ARGS --help-full ${CMake_BINARY_DIR}/Docs/ccmake.txt - --help-html ${CMake_BINARY_DIR}/Docs/ccmake.html - --help-man ${CMake_BINARY_DIR}/Docs/ccmake.1 - DEPENDS ccmake - MAIN_DEPENDENCY ${CMake_SOURCE_DIR}/Utilities/Doxygen/authors.txt - ) - INSTALL_FILES(${CMAKE_MAN_DIR}/man1 FILES - ${CMake_BINARY_DIR}/Docs/ccmake.1 - ) - INSTALL_FILES(${CMAKE_DOC_DIR} FILES - ${CMake_BINARY_DIR}/Docs/ccmake.txt - ${CMake_BINARY_DIR}/Docs/ccmake.html - ) - SET(DOC_FILES ${DOC_FILES} ${CMake_BINARY_DIR}/Docs/ccmake.txt) -ENDIF(BUILD_CursesDialog) - -IF(BUILD_MFCDialog) - GET_TARGET_PROPERTY(CMD CMakeSetup LOCATION) - ADD_CUSTOM_COMMAND( - OUTPUT ${CMake_BINARY_DIR}/Docs/CMakeSetup.txt - COMMAND ${CMD} - ARGS --help-full ${CMake_BINARY_DIR}/Docs/CMakeSetup.txt - --help-html ${CMake_BINARY_DIR}/Docs/CMakeSetup.html - --help-man ${CMake_BINARY_DIR}/Docs/CMakeSetup.1 - DEPENDS CMakeSetup - MAIN_DEPENDENCY ${CMake_SOURCE_DIR}/Utilities/Doxygen/doxyfile.in - ) - INSTALL_FILES(${CMAKE_MAN_DIR}/man1 FILES - ${CMake_BINARY_DIR}/Docs/CMakeSetup.1 - ) - INSTALL_FILES(${CMAKE_DOC_DIR} FILES - ${CMake_BINARY_DIR}/Docs/CMakeSetup.txt - ${CMake_BINARY_DIR}/Docs/CMakeSetup.html - ) - SET(DOC_FILES ${DOC_FILES} ${CMake_BINARY_DIR}/Docs/CMakeSetup.txt) -ENDIF(BUILD_MFCDialog) +INSTALL_FILES(${CMAKE_DOC_DIR} FILES ${CMake_BINARY_DIR}/Docs/Copyright.txt ) +SET(DOC_FILES ${DOC_FILES} ${CMake_BINARY_DIR}/Docs/Copyright.txt) # Drive documentation generation. -ADD_CUSTOM_TARGET(documentation ALL - DEPENDS ${DOC_FILES} - ) +ADD_CUSTOM_TARGET(documentation ALL DEPENDS ${DOC_FILES} ) |