我正在尝试为我的C项目设置CMakeLists.txt文件,以便它在源文件更改时运行ctags,但仅运行 。
我已经阅读了here的答案,但似乎无法完全得到想要的东西。我有这样的东西:
set (SRCS myprog.c myprog.h)
add_custom_target (
tags
COMMAND ctags -R .
DEPENDS ${SRCS}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} )
add_executable ( myprog ${SRCS} )
add_dependencies ( myprog tags )
可以正常运行,但它始终运行ctags,即它似乎忽略了DEPENDS部分。如果删除add_dependencies行,那么我有一个可以显式调用的目标(make标记),但默认情况下不会运行。
我尝试了add_custom_target和add_custom_command的各种组合,但是我似乎无法使其工作。它要么总是运行命令,要么永远不运行(或仅在使用标签目标显式调用时)。
谢谢。