diff --git a/CMake/rb_version.cmake b/CMake/rb_version.cmake index 26e9e579..cde91755 100644 --- a/CMake/rb_version.cmake +++ b/CMake/rb_version.cmake @@ -12,20 +12,20 @@ if(NOT tmp) endif() set(RandBLAS_FULL_VERSION ${tmp} CACHE STRING "RandBLAS version" FORCE) -string(REGEX REPLACE "^([0-9]+)\\.([0-9]+)\\.([0-9]+)-(.*$)" - "\\1" RandBLAS_VERSION_MAJOR ${RandBLAS_FULL_VERSION}) - -string(REGEX REPLACE "^([0-9]+)\\.([0-9]+)\\.([0-9]+)-(.*$)" - "\\2" RandBLAS_VERSION_MINOR ${RandBLAS_FULL_VERSION}) - -string(REGEX REPLACE "^([0-9]+)\\.([0-9]+)\\.([0-9]+)-(.*$)" - "\\3" RandBLAS_VERSION_PATCH ${RandBLAS_FULL_VERSION}) - -string(REGEX REPLACE "^([0-9]+)\\.([0-9]+)\\.([0-9]+)-(.*$)" - "\\4" RandBLAS_VERSION_CHANGES ${RandBLAS_FULL_VERSION}) +if(RandBLAS_FULL_VERSION MATCHES "-+") + set(VERSION_PATTERN "^([0-9]+)\\.([0-9]+)\\.([0-9]+)-(.*$)") + string(REGEX REPLACE ${VERSION_PATTERN} "\\4" RandBLAS_VERSION_CHANGES ${RandBLAS_FULL_VERSION}) + string(REGEX REPLACE "^([0-9]+)-g([a-zA-Z0-9]+)" "\\1" RandBLAS_COMMITS_SINCE_RELEASE ${RandBLAS_VERSION_CHANGES}) + string(REGEX REPLACE "^([0-9]+)-g([a-zA-Z0-9]+)" "\\2" RandBLAS_COMMIT_HASH ${RandBLAS_VERSION_CHANGES}) +else() + set(VERSION_PATTERN "^([0-9]+)\\.([0-9]+)\\.([0-9]+)") + set(RandBLAS_COMMITS_SINCE_RELEASE "0") + set(RandBLAS_COMMIT_HASH "") +endif() -string(REGEX REPLACE "^([0-9]+)-g([a-zA-Z0-9]+)" "\\1" RandBLAS_COMMITS_SINCE_RELEASE ${RandBLAS_VERSION_CHANGES}) -string(REGEX REPLACE "^([0-9]+)-g([a-zA-Z0-9]+)" "\\2" RandBLAS_COMMIT_HASH ${RandBLAS_VERSION_CHANGES}) +string(REGEX REPLACE ${VERSION_PATTERN} "\\1" RandBLAS_VERSION_MAJOR ${RandBLAS_FULL_VERSION}) +string(REGEX REPLACE ${VERSION_PATTERN} "\\2" RandBLAS_VERSION_MINOR ${RandBLAS_FULL_VERSION}) +string(REGEX REPLACE ${VERSION_PATTERN} "\\3" RandBLAS_VERSION_PATCH ${RandBLAS_FULL_VERSION}) message(STATUS " ")