cmake: check sdk_version format
Encountered situation when sdk_version string was empty (as the result of corrupted installation). The version should had 0.0.0 format. Patch add check for this and descriptive failure message. Objective is to help the user to recognize the installation failure. Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
This commit is contained in:
parent
571741a0c5
commit
4ade5e9c32
1 changed files with 11 additions and 1 deletions
|
@ -35,7 +35,17 @@ string(REGEX REPLACE "-.*" "" SDK_VERSION_PRE2 ${SDK_VERSION_PRE1})
|
|||
# Strip any trailing spaces/newlines from the version string
|
||||
string(STRIP ${SDK_VERSION_PRE2} SDK_VERSION)
|
||||
string(REGEX MATCH "([0-9]*).([0-9]*)" SDK_MAJOR_MINOR ${SDK_VERSION})
|
||||
if(${REQUIRED_SDK_VER} VERSION_GREATER ${SDK_VERSION})
|
||||
|
||||
string(REGEX MATCH "([0-9]+)\.([0-9]+)\.([0-9]+)" SDK_MAJOR_MINOR_MICRO ${SDK_VERSION})
|
||||
|
||||
#at least 0.0.0
|
||||
if(NOT SDK_MAJOR_MINOR_MICRO)
|
||||
message(FATAL_ERROR "sdk version: ${SDK_MAJOR_MINOR_MICRO} improper format.
|
||||
Expected format: x.y.z
|
||||
Check whether the Zephyr SDK was installed correctly.
|
||||
")
|
||||
|
||||
elseif(${REQUIRED_SDK_VER} VERSION_GREATER ${SDK_VERSION})
|
||||
message(FATAL_ERROR "The SDK version you are using is too old, please update your SDK.
|
||||
You need at least SDK version ${REQUIRED_SDK_VER}.
|
||||
You have version ${SDK_VERSION} (${ZEPHYR_SDK_INSTALL_DIR}).
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue