Warning, /sdk/codevis/cmake/GetGitVersion.cmake is written in an unsupported language. File is not indexed.

0001 # - Returns a version string from Git tags
0002 #
0003 # This function inspects the annotated git tags for the project and returns a string
0004 # into a CMake variable
0005 #
0006 #  get_git_version(<var>)
0007 #
0008 # - Example
0009 #
0010 # include(GetGitVersion)
0011 # get_git_version(GIT_VERSION)
0012 
0013 find_package(Git)
0014 if(__get_git_version)
0015   return()
0016 endif()
0017 set(__get_git_version INCLUDED)
0018 
0019 function(get_git_version var)
0020     execute_process(COMMAND ${GIT_EXECUTABLE} describe --match "v[0-9]*.[0-9]*.[0-9]*" --abbrev=8
0021         WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
0022         RESULT_VARIABLE status
0023         OUTPUT_VARIABLE GIT_VERSION
0024         ERROR_QUIET)
0025 
0026     if(${status})
0027         execute_process(COMMAND ${GIT_EXECUTABLE} rev-parse --short HEAD
0028             WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
0029             RESULT_VARIABLE status
0030             OUTPUT_VARIABLE GIT_VERSION
0031             ERROR_QUIET)
0032     endif()
0033 
0034     string(COMPARE EQUAL "${GIT_VERSION}" "" status)
0035     if (NOT ${status})
0036         string(STRIP ${GIT_VERSION} GIT_VERSION)
0037     else()
0038         set(GIT_VERSION "Unknown")
0039     endif()
0040 
0041     message("-- git Version: ${GIT_VERSION}")
0042     set(${var} ${GIT_VERSION} PARENT_SCOPE)
0043 endfunction()
0044 
0045 function(get_git_authors var)
0046     execute_process(COMMAND ${GIT_EXECUTABLE} --no-pager shortlog -sc --all
0047         WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
0048         OUTPUT_VARIABLE AUTHORS
0049         ERROR_QUIET)
0050 
0051     string(REGEX REPLACE "\n" ";" AUTHORS "${AUTHORS}")
0052     set(OUTPUT_AUTHORS "")
0053     foreach(AUTHOR ${AUTHORS})
0054         string(STRIP ${AUTHOR} AUTHOR)
0055         string(REGEX REPLACE "[0-9]+" "" AUTHOR ${AUTHOR})
0056         string(STRIP ${AUTHOR} AUTHOR)
0057         SET(OUTPUT_AUTHORS "${OUTPUT_AUTHORS} \n ${AUTHOR}")
0058     endforeach()
0059     set(${var} ${OUTPUT_AUTHORS} PARENT_SCOPE)
0060     message("Found authors: " ${OUTPUT_AUTHORS})
0061 endfunction()