私はあなたが依存ファイルを作成するために、ADD_CUSTOM_COMMAND、ADD_LIBRARY、または他のADD_ *を使用すると仮定します。あなたのExternalProject
は、それ自身のディレクトリがあり、そのディレクトリにCMakeLists.txt
を置くことができるならば、あなたは、簡単にそのCMakeLists.txt
に次
を置くことができます。
SET_DIRECTORY_PROPERTIES(PROPERTIES CLEAN_NO_CUSTOM 1)
だから、それらの依存ファイルが洗浄されません。
そうでない場合は、出力ファイルとして外部依存関係を避ける必要があります。 あなたが
ADD_CUSTOM_COMMAND(OUTPUT libdep
COMMAND dep_gen_cmd
....
)
ADD_CUSTOM_COMMAND(OUTPUT prj
....
DEPENDS libdep
)
を使用している場合たとえば、あなたはそれを変更する必要があります。
ADD_CUSTOM_TARGET(libdep_gen
COMMAND dep_gen_cmd
...
)
ADD_CUSTOM_COMMAND(OUTPUT prj
COMMAND test -e libdep || make libdep_gen
...
)