summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt20
1 files changed, 13 insertions, 7 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 3f90997e1..82485ccf2 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -21,13 +21,19 @@ if(HAS_PATCH)
string(REGEX REPLACE "(.*)-patch .*" "\\1" MINOR_VERSION "${ONLY_VERSION}")
string(REGEX REPLACE ".*-patch (.*)" "\\1" PATCH_VERSION "${ONLY_VERSION}")
else(HAS_PATCH)
- string(REGEX REPLACE "(.*)-beta" "\\1" MINOR_VERSION "${ONLY_VERSION}")
- if(MINOR_VERSION STREQUAL "4-1\n")
- set(PATCH_VERSION 1)
- else(MINOR_VERSION STREQUAL "4-1\n")
- set(PATCH_VERSION 0)
- endif(MINOR_VERSION STREQUAL "4-1\n")
- set(MINOR_VERSION 4)
+ string(REGEX MATCH "\\." HAS_DOT "${ONLY_VERSION}")
+ if(HAS_DOT)
+ string(REGEX REPLACE "(.*)\\..*" "\\1" MINOR_VERSION "${ONLY_VERSION}")
+ string(REGEX REPLACE ".*\\.(.*)" "\\1" PATCH_VERSION "${ONLY_VERSION}")
+ else(HAS_DOT)
+ string(REGEX REPLACE "(.*)-beta" "\\1" MINOR_VERSION "${ONLY_VERSION}")
+ if(MINOR_VERSION STREQUAL "4-1\n")
+ set(PATCH_VERSION 1)
+ else(MINOR_VERSION STREQUAL "4-1\n")
+ set(PATCH_VERSION 0)
+ endif(MINOR_VERSION STREQUAL "4-1\n")
+ set(MINOR_VERSION 4)
+ endif(HAS_DOT)
endif(HAS_PATCH)
# Detect is we are using CMake 2.6 or better, these versions include functions that require less work than CMake 2.4 does