diff options
-rw-r--r-- | CMakeLists.txt | 20 |
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 |