summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDylan Noblesmith <nobled@dreamwidth.org>2011-12-12 13:06:25 +0000
committerDylan Noblesmith <nobled@dreamwidth.org>2011-12-12 13:06:25 +0000
commitf931261b510b5762b686e4bcfa0e97f1f6a7c8c8 (patch)
treec2d6f575e9ec6806cc2de82e307f8bfb5e8efa67
parentddbc274169ed4ee0e0ac32ed194b925a180202fe (diff)
downloadllvm-f931261b510b5762b686e4bcfa0e97f1f6a7c8c8.tar.gz
llvm-f931261b510b5762b686e4bcfa0e97f1f6a7c8c8.tar.bz2
llvm-f931261b510b5762b686e4bcfa0e97f1f6a7c8c8.tar.xz
cmake: work with CMake < 2.8.5
CMake versions 2.8.4 and earlier were giving this error since r146323: "string end index: -1 is out of range 0 - 6" Passing -1 as the length of the desired substring was a new feature added in CMake 2.8.5: http://www.cmake.org/Bug/view.php?id=10740 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146372 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--cmake/modules/VersionFromVCS.cmake4
1 files changed, 3 insertions, 1 deletions
diff --git a/cmake/modules/VersionFromVCS.cmake b/cmake/modules/VersionFromVCS.cmake
index a55e9b837f..d6a2ae5f45 100644
--- a/cmake/modules/VersionFromVCS.cmake
+++ b/cmake/modules/VersionFromVCS.cmake
@@ -30,7 +30,9 @@ function(add_version_info_from_vcs VERS)
OUTPUT_VARIABLE git_output)
if( git_result EQUAL 0 )
string(REGEX MATCH r[0-9]+ git_svn_rev ${git_output})
- string(SUBSTRING "${git_svn_rev}" 1 -1 git_svn_rev_number)
+ string(LENGTH "${git_svn_rev}" rev_length)
+ math(EXPR rev_length "${rev_length}-1")
+ string(SUBSTRING "${git_svn_rev}" 1 ${rev_length} git_svn_rev_number)
set(SVN_REVISION ${git_svn_rev_number} PARENT_SCOPE)
set(git_svn_rev "-svn-${git_svn_rev}")