我使用python腳本(gen_instantiations.py)生成另一個cpp文件(foo.cpp)中包含的cpp文件(autogen_instantiations.cpp) 因此,我希望CMake每當重新生成此文件時foo.hpp或gen_instantiations.py更改。 從CMake的常見問題解答以下說明中,這裏就是我所做的自定義目標的cmake依賴關係
add_custom_command(
COMMAND "./gen_instantiations.py"
OUTPUT "autogen_instantiations.cpp"
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
DEPENDS gen_instantiations.py foo.hpp
)
add_custom_target(instantiations ALL DEPENDS autogen_instantiations.cpp)
add_library(foo
foo.cpp
)
add_dependencies(foo instantiations)
但這運行運行腳本每一次。我究竟做錯了什麼?