私はCmakeを使って.chmのドキュメントを作りたいと思っています。 関連するコード断片:CMakeの下の1つのターゲットでDoxygenとchmcmdをどのように組み合わせることができますか?
set(doxyfile_in ${CMAKE_SOURCE_DIR}/doc/documentation-config.doxygen.in)
set(doxyfile ${CMAKE_BINARY_DIR}/Doxyfile)
configure_file(${doxyfile_in} ${doxyfile} @ONLY)
add_custom_target(doc
COMMAND ${DOXYGEN_EXECUTABLE} ${doxyfile}
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
COMMENT "Generating API documentation with Doxygen"
VERBATIM)
add_custom_target(chm
COMMAND chmcmd index.hhp
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/doc
COMMENT "Generating API documentation with chmcmd"
VERBATIM)
e.e.e.現在私は2つのターゲットを定義しています。このようにしてmake doc
はhtmlファイルを生成し、その後はmake chm
が.CHMファイルを生成します。それは正常に動作しますが、手作業が必要です。
これらを組み合わせることはできますか? (作業ディレクトリが異なるので、add_custom_targetにCOMMANDをもう1つ使用することはできません) 理想的には、2つのターゲットを連結することです。ところで
:chmcmdは、私は、ファイルMemory.cppを持っているので、私はchmcmd
は私のファイルから派生したファイルを、使用したいと思います
Error: Anchor Memory_8cpp.html#a1e349bf268cc8c667b3d264111b6a3c1 undefined; first use Memory_8cpp.html
のようなメッセージを与えます。私はDoxygen
にいくつかのオプションを設定しないか、またはいくつかのバージョンの不一致が発生するなど、これに責任がありますか?
BTW2:何かラインFindChmcmd
ていますか?
ターゲットを他のものから(add_dependencies()で)マークすることができます。したがって、両方をビルドするにはターゲットの1つを使ってmakeを呼び出す必要があります。あるいは、 'add_custom_target'の代わりに' add_custom_command'を使用し、別のコマンドの* OUTPUT *に1つのコマンド* DEPEND *を作ることができます。 – Tsyvarev