When building from git, add ref-id to PACKAGE_VERSION
authorOscar Fuentes <ofv@wanadoo.es>
Thu, 5 Aug 2010 02:22:51 +0000 (02:22 +0000)
committerOscar Fuentes <ofv@wanadoo.es>
Thu, 5 Aug 2010 02:22:51 +0000 (02:22 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110301 91177308-0d34-0410-b5e6-96231b3b80d8

cmake/modules/VersionFromVCS.cmake

index 618b232ec2d42ed852a946fb854e27ff3834d6fa..1016df22590dab3497f45548e96408284fb13b38 100644 (file)
@@ -15,6 +15,19 @@ function(add_version_info_from_vcs VERS)
     endif()
   elseif( EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/.git )
     set(result "${result}git")
+    # Try to get a ref-id
+    find_program(git_executable NAMES git git.exe git.cmd)
+    if( git_executable )
+      execute_process(COMMAND ${git_executable} show-ref HEAD
+       WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+       TIMEOUT 5
+       RESULT_VARIABLE git_result
+       OUTPUT_VARIABLE git_output)
+      if( git_result EQUAL 0 )
+       string(SUBSTRING ${git_output} 0 7 git_ref_id)
+       set(result "${result}-${git_ref_id}")
+      endif()
+    endif()
   endif()
   set(${VERS} ${result} PARENT_SCOPE)
 endfunction(add_version_info_from_vcs)