|
|
@@ -133,3 +133,33 @@ function(git_get_exact_tag _var)
|
|
|
git_describe(out --exact-match ${ARGN})
|
|
|
set(${_var} "${out}" PARENT_SCOPE)
|
|
|
endfunction()
|
|
|
+
|
|
|
+# get git hash
|
|
|
+macro(get_git_hash _git_hash)
|
|
|
+ find_package(Git QUIET)
|
|
|
+ if(GIT_FOUND)
|
|
|
+ execute_process(
|
|
|
+ COMMAND ${GIT_EXECUTABLE} log -1 --pretty=format:%h
|
|
|
+ OUTPUT_VARIABLE ${_git_hash}
|
|
|
+ OUTPUT_STRIP_TRAILING_WHITESPACE
|
|
|
+ ERROR_QUIET
|
|
|
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
|
|
+ )
|
|
|
+ endif()
|
|
|
+endmacro()
|
|
|
+
|
|
|
+# get git branch
|
|
|
+macro(get_git_branch _git_branch)
|
|
|
+ find_package(Git QUIET)
|
|
|
+ if(GIT_FOUND)
|
|
|
+ message("git found: ${GIT_EXECUTABLE} in version: ${GIT_VERSION_STRING}")
|
|
|
+ execute_process(
|
|
|
+ COMMAND ${GIT_EXECUTABLE} symbolic-ref --short -q HEAD
|
|
|
+ OUTPUT_VARIABLE ${_git_branch}
|
|
|
+ OUTPUT_STRIP_TRAILING_WHITESPACE
|
|
|
+ ERROR_QUIET
|
|
|
+ WORKING_DIRECTORY
|
|
|
+ ${CMAKE_CURRENT_SOURCE_DIR}
|
|
|
+ )
|
|
|
+ endif()
|
|
|
+endmacro()
|