CMakeLists.txt 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. SUBDIRS(Doxygen)
  2. SET(CMD_DIR ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR})
  3. IF(WIN32)
  4. SET(CMD_EXT ".exe")
  5. ELSE(WIN32)
  6. SET(CMD_EXT "")
  7. ENDIF(WIN32)
  8. MAKE_DIRECTORY(${CMake_BINARY_DIR}/Docs)
  9. # Add a documentation target.
  10. SET(DOC_FILES "")
  11. # Generate documentation for "cmake" executable.
  12. SET(CMD ${CMD_DIR}/cmake${CMD_EXT})
  13. ADD_CUSTOM_COMMAND(
  14. OUTPUT ${CMake_BINARY_DIR}/Docs/cmake.txt
  15. COMMAND ${CMD}
  16. ARGS --copyright ${CMake_BINARY_DIR}/Docs/Copyright.txt
  17. --help-full ${CMake_BINARY_DIR}/Docs/cmake.txt
  18. --help-html ${CMake_BINARY_DIR}/Docs/cmake.html
  19. --help-man ${CMake_BINARY_DIR}/Docs/cmake.1
  20. DEPENDS cmake
  21. MAIN_DEPENDENCY ${CMake_SOURCE_DIR}/Utilities/Doxygen/authors.txt
  22. )
  23. INSTALL_FILES(${CMAKE_MAN_DIR}/man1 FILES ${CMake_BINARY_DIR}/Docs/cmake.1)
  24. INSTALL_FILES(${CMAKE_DOC_DIR} FILES
  25. ${CMake_BINARY_DIR}/Docs/Copyright.txt
  26. ${CMake_BINARY_DIR}/Docs/cmake.txt
  27. ${CMake_BINARY_DIR}/Docs/cmake.html
  28. )
  29. SET(DOC_FILES ${DOC_FILES} ${CMake_BINARY_DIR}/Docs/cmake.txt)
  30. # Generate documentation for "ctest" executable.
  31. SET(CMD ${CMD_DIR}/ctest${CMD_EXT})
  32. ADD_CUSTOM_COMMAND(
  33. OUTPUT ${CMake_BINARY_DIR}/Docs/ctest.txt
  34. COMMAND ${CMD}
  35. ARGS --help-full ${CMake_BINARY_DIR}/Docs/ctest.txt
  36. --help-html ${CMake_BINARY_DIR}/Docs/ctest.html
  37. --help-man ${CMake_BINARY_DIR}/Docs/ctest.1
  38. DEPENDS ctest
  39. MAIN_DEPENDENCY ${CMake_SOURCE_DIR}/Utilities/Doxygen/authors.txt
  40. )
  41. INSTALL_FILES(${CMAKE_MAN_DIR}/man1 FILES ${CMake_BINARY_DIR}/Docs/ctest.1)
  42. INSTALL_FILES(${CMAKE_DOC_DIR} FILES
  43. ${CMake_BINARY_DIR}/Docs/ctest.txt
  44. ${CMake_BINARY_DIR}/Docs/ctest.html
  45. )
  46. SET(DOC_FILES ${DOC_FILES} ${CMake_BINARY_DIR}/Docs/ctest.txt)
  47. # Generate documentation for "ccmake" executable.
  48. IF(BUILD_CursesDialog)
  49. SET(CMD ${CMD_DIR}/ccmake${CMD_EXT})
  50. ADD_CUSTOM_COMMAND(
  51. OUTPUT ${CMake_BINARY_DIR}/Docs/ccmake.txt
  52. COMMAND ${CMD}
  53. ARGS --help-full ${CMake_BINARY_DIR}/Docs/ccmake.txt
  54. --help-html ${CMake_BINARY_DIR}/Docs/ccmake.html
  55. --help-man ${CMake_BINARY_DIR}/Docs/ccmake.1
  56. DEPENDS ccmake
  57. MAIN_DEPENDENCY ${CMake_SOURCE_DIR}/Utilities/Doxygen/authors.txt
  58. )
  59. INSTALL_FILES(${CMAKE_MAN_DIR}/man1 FILES
  60. ${CMake_BINARY_DIR}/Docs/ccmake.1
  61. )
  62. INSTALL_FILES(${CMAKE_DOC_DIR} FILES
  63. ${CMake_BINARY_DIR}/Docs/ccmake.txt
  64. ${CMake_BINARY_DIR}/Docs/ccmake.html
  65. )
  66. SET(DOC_FILES ${DOC_FILES} ${CMake_BINARY_DIR}/Docs/ccmake.txt)
  67. ENDIF(BUILD_CursesDialog)
  68. IF(BUILD_MFCDialog)
  69. SET(CMD ${CMD_DIR}/CMakeSetup${CMD_EXT})
  70. ADD_CUSTOM_COMMAND(
  71. OUTPUT ${CMake_BINARY_DIR}/Docs/CMakeSetup.txt
  72. COMMAND ${CMD}
  73. ARGS --help-full ${CMake_BINARY_DIR}/Docs/CMakeSetup.txt
  74. --help-html ${CMake_BINARY_DIR}/Docs/CMakeSetup.html
  75. --help-man ${CMake_BINARY_DIR}/Docs/CMakeSetup.1
  76. DEPENDS CMakeSetup
  77. MAIN_DEPENDENCY ${CMake_SOURCE_DIR}/Utilities/Doxygen/doxyfile.in
  78. )
  79. INSTALL_FILES(${CMAKE_MAN_DIR}/man1 FILES
  80. ${CMake_BINARY_DIR}/Docs/CMakeSetup.1
  81. )
  82. INSTALL_FILES(${CMAKE_DOC_DIR} FILES
  83. ${CMake_BINARY_DIR}/Docs/CMakeSetup.txt
  84. ${CMake_BINARY_DIR}/Docs/CMakeSetup.html
  85. )
  86. SET(DOC_FILES ${DOC_FILES} ${CMake_BINARY_DIR}/Docs/CMakeSetup.txt)
  87. ENDIF(BUILD_MFCDialog)
  88. # Drive documentation generation.
  89. ADD_CUSTOM_TARGET(documentation ALL
  90. DEPENDS ${DOC_FILES}
  91. )