1
SET(VERSION_REGEX "[0-9]+\\.[0-9]+\\.[0-9]+")
3
MACRO(VERSION_TO_VARS version major minor patch)
4
IF(${version} MATCHES ${VERSION_REGEX})
5
STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" ${major} "${version}")
6
STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" ${minor} "${version}")
7
STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" ${patch} "${version}")
8
ELSE(${version} MATCHES ${VERSION_REGEX})
9
MESSAGE("MACRO(VERSION_TO_VARS ${version} ${major} ${minor} ${patch}")
10
MESSAGE(FATAL_ERROR "Problem parsing version string, I can't parse it properly.")
11
ENDIF(${version} MATCHES ${VERSION_REGEX})
12
ENDMACRO(VERSION_TO_VARS)