summaryrefslogtreecommitdiffstats
path: root/llvm/cmake/modules/VersionFromVCS.cmake
diff options
context:
space:
mode:
authorOscar Fuentes <ofv@wanadoo.es>2010-08-03 17:28:09 +0000
committerOscar Fuentes <ofv@wanadoo.es>2010-08-03 17:28:09 +0000
commit052c23cd2f1d1083a8c73be7d4d1b7c0e79e19f4 (patch)
tree19d9c3990677af08757b8fad147027af296479a3 /llvm/cmake/modules/VersionFromVCS.cmake
parent52f9d7d6177473ac642c6b364357355bd0889186 (diff)
downloadbcm5719-llvm-052c23cd2f1d1083a8c73be7d4d1b7c0e79e19f4.tar.gz
bcm5719-llvm-052c23cd2f1d1083a8c73be7d4d1b7c0e79e19f4.zip
CMake: add version control info to PACKAGE_VERSION, if available.
Adds "svn" or "git", depending on the VCS used. If svn, adds the revision number as well. llvm-svn: 110121
Diffstat (limited to 'llvm/cmake/modules/VersionFromVCS.cmake')
-rw-r--r--llvm/cmake/modules/VersionFromVCS.cmake20
1 files changed, 20 insertions, 0 deletions
diff --git a/llvm/cmake/modules/VersionFromVCS.cmake b/llvm/cmake/modules/VersionFromVCS.cmake
new file mode 100644
index 00000000000..618b232ec2d
--- /dev/null
+++ b/llvm/cmake/modules/VersionFromVCS.cmake
@@ -0,0 +1,20 @@
+# Adds version control information to the variable VERS. For
+# determining the Version Control System used (if any) it inspects the
+# existence of certain subdirectories under CMAKE_CURRENT_SOURCE_DIR.
+
+function(add_version_info_from_vcs VERS)
+ set(result ${${VERS}})
+ if( EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/.svn )
+ set(result "${result}svn")
+ find_package(Subversion)
+ if( Subversion_FOUND )
+ subversion_wc_info( ${CMAKE_CURRENT_SOURCE_DIR} Project )
+ if( Project_WC_REVISION )
+ set(result "${result}-r${Project_WC_REVISION}")
+ endif()
+ endif()
+ elseif( EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/.git )
+ set(result "${result}git")
+ endif()
+ set(${VERS} ${result} PARENT_SCOPE)
+endfunction(add_version_info_from_vcs)
OpenPOWER on IntegriCloud