需要用到的三个知识点
- git 相关命令
获取commit hash值,log -1 --pretty=format:%H
获取当前分支,git symbolic-ref --short -q HEAD
- cmake中执行外部命令
execute_process
- cmake中自动生成文件
configure_file
获取git版本信息
获取git版本信息需要在cmake中调用外部命令,可使用execute_process
语句完成。
set(COMMIT_HASH "")
set(BRANCH_NAME "")
find_package(Git QUIET)
if(GIT_FOUND)
execute_process(
COMMAND ${GIT_EXECUTABLE} log -1 --pretty=format:%H
OUTPUT_VARIABLE COMMIT_HASH
OUTPUT_STRIP_TRAILING_WHITESPACE
ERROR_QUIET
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
)
exe