qmake 相当于 cmake execute_process()
qmake equivalent of cmake execute_process()
我有一个使用 CMake 的项目,我通过以下方式获取当前 git 哈希:
if(EXISTS "${CMAKE_SOURCE_DIR}/.git")
execute_process(
COMMAND git log -1 --format=%H
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE GIT_COMMIT_HASH
OUTPUT_STRIP_TRAILING_WHITESPACE
)
else()
set(GIT_COMMIT_HASH "unknown")
endif()
add_definitions("-DGIT_COMMIT_HASH=\"${GIT_COMMIT_HASH}\"")
qmake 是否有等效的方法?
我找到了答案:
exists( $$PWD/.git) {
GIT_COMMIT_HASH = $$system(git log -1 --format=%H)
}else{
GIT_COMMIT_HASH = "unknown"
}
DEFINES += GIT_COMMIT_HASH=\\"$$GIT_COMMIT_HASH\\"
适合我。目前在 Linux 上测试,稍后我会在 Windows 上测试。
我有一个使用 CMake 的项目,我通过以下方式获取当前 git 哈希:
if(EXISTS "${CMAKE_SOURCE_DIR}/.git")
execute_process(
COMMAND git log -1 --format=%H
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE GIT_COMMIT_HASH
OUTPUT_STRIP_TRAILING_WHITESPACE
)
else()
set(GIT_COMMIT_HASH "unknown")
endif()
add_definitions("-DGIT_COMMIT_HASH=\"${GIT_COMMIT_HASH}\"")
qmake 是否有等效的方法?
我找到了答案:
exists( $$PWD/.git) {
GIT_COMMIT_HASH = $$system(git log -1 --format=%H)
}else{
GIT_COMMIT_HASH = "unknown"
}
DEFINES += GIT_COMMIT_HASH=\\"$$GIT_COMMIT_HASH\\"
适合我。目前在 Linux 上测试,稍后我会在 Windows 上测试。