From 052c23cd2f1d1083a8c73be7d4d1b7c0e79e19f4 Mon Sep 17 00:00:00 2001 From: Oscar Fuentes Date: Tue, 3 Aug 2010 17:28:09 +0000 Subject: 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 --- llvm/cmake/modules/VersionFromVCS.cmake | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 llvm/cmake/modules/VersionFromVCS.cmake (limited to 'llvm/cmake/modules/VersionFromVCS.cmake') 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) -- cgit v1.2.3