CMakeLists.txt 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  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(UNIX)
  49. IF(CURSES_LIBRARY)
  50. SET(CMD ${CMD_DIR}/ccmake${CMD_EXT})
  51. ADD_CUSTOM_COMMAND(
  52. OUTPUT ${CMake_BINARY_DIR}/Docs/ccmake.txt
  53. COMMAND ${CMD}
  54. ARGS --help-full ${CMake_BINARY_DIR}/Docs/ccmake.txt
  55. --help-html ${CMake_BINARY_DIR}/Docs/ccmake.html
  56. --help-man ${CMake_BINARY_DIR}/Docs/ccmake.1
  57. DEPENDS ccmake
  58. MAIN_DEPENDENCY ${CMake_SOURCE_DIR}/Utilities/Doxygen/authors.txt
  59. )
  60. INSTALL_FILES(${CMAKE_MAN_DIR}/man1 FILES
  61. ${CMake_BINARY_DIR}/Docs/ccmake.1
  62. )
  63. INSTALL_FILES(${CMAKE_DOC_DIR} FILES
  64. ${CMake_BINARY_DIR}/Docs/ccmake.txt
  65. ${CMake_BINARY_DIR}/Docs/ccmake.html
  66. )
  67. SET(DOC_FILES ${DOC_FILES} ${CMake_BINARY_DIR}/Docs/ccmake.txt)
  68. ENDIF(CURSES_LIBRARY)
  69. ENDIF(UNIX)
  70. IF(CMAKE_BUILD_ON_VISUAL_STUDIO)
  71. SET(CMD ${CMD_DIR}/CMakeSetup${CMD_EXT})
  72. ADD_CUSTOM_COMMAND(
  73. OUTPUT ${CMake_BINARY_DIR}/Docs/CMakeSetup.txt
  74. COMMAND ${CMD}
  75. ARGS --help-full ${CMake_BINARY_DIR}/Docs/CMakeSetup.txt
  76. --help-html ${CMake_BINARY_DIR}/Docs/CMakeSetup.html
  77. --help-man ${CMake_BINARY_DIR}/Docs/CMakeSetup.1
  78. DEPENDS CMakeSetup
  79. MAIN_DEPENDENCY ${CMake_SOURCE_DIR}/Utilities/Doxygen/doxyfile.in
  80. )
  81. INSTALL_FILES(${CMAKE_MAN_DIR}/man1 FILES
  82. ${CMake_BINARY_DIR}/Docs/CMakeSetup.1
  83. )
  84. INSTALL_FILES(${CMAKE_DOC_DIR} FILES
  85. ${CMake_BINARY_DIR}/Docs/CMakeSetup.txt
  86. ${CMake_BINARY_DIR}/Docs/CMakeSetup.html
  87. )
  88. SET(DOC_FILES ${DOC_FILES} ${CMake_BINARY_DIR}/Docs/CMakeSetup.txt)
  89. ENDIF(CMAKE_BUILD_ON_VISUAL_STUDIO)
  90. # Drive documentation generation.
  91. ADD_CUSTOM_TARGET(documentation ALL
  92. DEPENDS ${DOC_FILES}
  93. )