現在、Doxygen ドキュメントを自動的に生成するように CMake をセットアップしようとしています。現在、次のコードを使用しています。
find_package(Doxygen)
if (DOXYGEN_FOUND)
configure_file("docs/Doxyfile.in" "${PROJECT_BINARY_DIR}/Doxyfile")
add_custom_target(docs
COMMAND ${DOXYGEN_EXECUTABLE}
"${PROJECT_BINARY_DIR}/Doxyfile"
SOURCES "${PROJECT_BINARY_DIR}/Doxyfile")
install(DIRECTORY "${PROJECT_BINARY_DIR}/docs/"
DESTINATION "docs")
endif()
入力すると で正常に動作しmake docs、 でドキュメントを生成しますPROJECT_BINARY_DIR/docs。入力するmake installと、docs サブディレクトリが にコピーされCMAKE_INSTALL_PREFIXます。ただし、ユーザーがドキュメントを生成することを望まず、単に入力するとmake install、次のエラーが発生します。
CMake Error at cmake_install.cmake:36 (FILE):
file INSTALL cannot find "/home/lukas/workspace/TheGame/build/docs".
installカスタム ターゲット ( docs) がビルドされている場合 (または にサブディレクトリdocsが存在する場合) にのみコマンドを実行するように指示するにはどうすればよいPROJECT_BINARY_DIRでしょうか?