# 通过git获取版本宏 BUILD_TAG_VERSION
execute_process(COMMAND git describe --tags
TIMEOUT 5
OUTPUT_VARIABLE GIT_TAG_VERSION
OUTPUT_STRIP_TRAILING_WHITESPACE
)
message(STATUS "building from git tag ${GIT_TAG_VERSION}")
add_definitions(-DBUILD_TAG_VERSION=\"${GIT_TAG_VERSION}\")
# 通过git获取版本宏 BUILD_LOG_VERSION
execute_process(COMMAND git log -1 --pretty=format:%h
TIMEOUT 5
OUTPUT_VARIABLE BUILD_LOG_VERSION
OUTPUT_STRIP_TRAILING_WHITESPACE
)
message(STATUS "building from git log ${BUILD_LOG_VERSION}")
add_definitions(-DBUILD_LOG_VERSION=\"${BUILD_LOG_VERSION}\")
文章介绍了如何使用CMake中的execute_process函数从Git中获取版本信息,包括通过`gitdescribe--tags`获取tag版本(BUILD_TAG_VERSION)和最近一次提交的哈希值(BUILD_LOG_VERSION),并将这些信息作为编译时的宏定义。
331

被折叠的 条评论
为什么被折叠?



