2
我想將git describe
的輸出作爲字符串寫入文件,所以我可以將信息嵌入到我的二進制文件(C++)中。這必須跨平臺工作。在custom_target中執行git describe
我還沒有想出是最好的:
add_custom_target(SubmarineGitVersion
COMMAND cmd /c "${CMAKE_EXECUTABLE}" echo czstring GIT_VERSION = STRINGIFY\(> "${CMAKE_CURRENT_BINARY_DIR}/GitVersion.hpp"
COMMAND cmd /c "${GIT_EXECUTABLE}" describe --tags --always >> "${CMAKE_CURRENT_BINARY_DIR}/GitVersion.hpp"
COMMAND cmd /c "${CMAKE_EXECUTABLE}" echo \) >> "${CMAKE_CURRENT_BINARY_DIR}/GitVersion.hpp"
)
這大致在Windows上運行(在末尾缺少;
):
czstring GIT_VERSION = STRINGIFY(
tag-343434
)
有沒有更好/更跨平臺的方式做到這一點?
就像一個魅力,謝謝。 – abergmeier