"Error occured retrieving cppcheck version:\n{}\n\n{}"
)
- version_regex = re.search('^Cppcheck (\d+).(\d+)(?:.\d+)?$',
+ version_regex = re.search('^Cppcheck (\d+)\.(\d+)(?:\.\d+)?$',
invoke_cppcheck, flags=re.M)
# Currently, only cppcheck version >= 2.7 is supported, but version 2.8 is
# known to be broken, please refer to docs/misra/cppcheck.txt
"Can't find cppcheck version or version not identified: "
"{}".format(invoke_cppcheck)
)
- major = int(version_regex.group(1))
- minor = int(version_regex.group(2))
- if major < 2 or (major == 2 and minor < 7):
+ version = (int(version_regex.group(1)), int(version_regex.group(2)))
+ if version < (2, 7) or version == (2, 8):
raise CppcheckDepsPhaseError(
- "Cppcheck version < 2.7 is not supported"
- )
- if major == 2 and minor == 8:
- raise CppcheckDepsPhaseError(
- "Cppcheck version 2.8 is known to be broken, see the documentation"
+ "Cppcheck version < 2.7 or 2.8 are not supported"
)
# If misra option is selected, append misra addon and generate cppcheck