項目構建工具 - CMake (3)自定義cmake命令

cmake中執行shell命令,有兩種形式:execute_process,和add_custom_command。

其中add_custom_command可以實現複雜的邏輯命令。

自定義cmake的命令,有兩種形式:add_custom_command(OUTPUT .....) 和 add_custom_command(TARGET ......)

 

示例:

CMakeLists.txt內容

cmake_minimum_required(VERSION 3.10.0)
include("a.txt")
 

a.txt 內容

set(TEST_FILE "log.txt")
add_custom_command(OUTPUT ${TEST_FILE}
  COMMAND echo "in 1st add_custom_command"
  COMMAND cmake -E copy ${CMAKE_CURRENT_LIST_FILE} ${TEST_FILE}
  COMMENT "in 1st comment")

add_custom_target(Test1 ALL DEPENDS ${TEST_FILE})

add_custom_command(TARGET Test1
  PRE_BUILD
  COMMAND echo "in 2nd add_custom_command"
  COMMENT "in 2nd comment"
)

執行命令:cmake 

回顯

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章