add_custom_command POST_BUILD建立3个目标后运行shell脚本?

时间:2018-08-07 01:39:36

标签: cmake

我通过add_executable()在cmake中添加了3个目标

这三个目标完成/构建后,我想运行一个shell脚本。

通常,我对一个目标执行此操作:

 add_custom_command(TARGET TARGET1 POST_BUILD
               VERBATIM
               COMMAND SHELL_SCRIPT CALL HERE
              ) 

但是,如果要在构建3个目标之后运行脚本,该怎么办?

1 个答案:

答案 0 :(得分:1)

执行以下操作将确保仅在生成三个可执行文件之后才始终执行脚本:

add_executable(prog1 main1.cc)
add_executable(prog2 main2.cc)
add_executable(prog3 main3.cc)

add_custom_target(
  ExecuteScript ALL
  COMMAND ${CMAKE_COMMAND} -E echo "Executed after targets are built"
  VERBATIM
  )

add_dependencies(ExecuteScript prog1 prog2 prog3)