我想在CMake的東西,將被執行每當我進入使cmake的add_custom_command建立
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/build_date.cc
PRE_BUILD
COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/mk_build_date.py
${CMAKE_CURRENT_BINARY_DIR}/build_date.cc
)
add_custom_target(build-date-xxx
ALL
DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/build_date.cc)
這就是目前我在做什麼。不幸的是make build-date-xxx
只會生成一次文件。
即使沒有add_custom_target
聲明該文件只生成一次。
的結果應該是這樣的GNU讓
.PHONY all:
echo "hallo welt"
all: foo.c bar.c
%.c:
touch [email protected]
在生成文件每當進入化妝。因爲全部是第一個目標,所以它總是被調用,並且自定義命令echo "hallo welt"
被實際執行。
密切相關,但執行得太晚:http://stackoverflow.com/questions/13920072/cmake-always-run-command-regardless-of-any - 依賴 – Alex