From 3b21da69eab41e8afcb0f5c042321841055aa203 Mon Sep 17 00:00:00 2001 From: Sergiu Deitsch Date: Sat, 13 Feb 2021 12:14:35 +0100 Subject: [PATCH] cmake: handle empty unwind version patch component --- cmake/FindUnwind.cmake | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/cmake/FindUnwind.cmake b/cmake/FindUnwind.cmake index 8941bb0..04d094d 100644 --- a/cmake/FindUnwind.cmake +++ b/cmake/FindUnwind.cmake @@ -41,7 +41,7 @@ if (Unwind_LIBRARY) set (_Unwind_VERSION_HEADER ${Unwind_INCLUDE_DIR}/libunwind-common.h) if (EXISTS ${_Unwind_VERSION_HEADER}) - FILE (READ ${_Unwind_VERSION_HEADER} _Unwind_VERSION_CONTENTS) + file (READ ${_Unwind_VERSION_HEADER} _Unwind_VERSION_CONTENTS) string (REGEX REPLACE ".*#define UNW_VERSION_MAJOR[ \t]+([0-9]+).*" "\\1" Unwind_VERSION_MAJOR "${_Unwind_VERSION_CONTENTS}") @@ -50,9 +50,15 @@ if (Unwind_LIBRARY) string (REGEX REPLACE ".*#define UNW_VERSION_EXTRA[ \t]+([0-9]+).*" "\\1" Unwind_VERSION_PATCH "${_Unwind_VERSION_CONTENTS}") - set (Unwind_VERSION - ${Unwind_VERSION_MAJOR}.${Unwind_VERSION_MINOR}.${Unwind_VERSION_PATCH}) - set (Unwind_VERSION_COMPONENTS 3) + set (Unwind_VERSION ${Unwind_VERSION_MAJOR}.${Unwind_VERSION_MINOR}) + + if (CMAKE_MATCH_1) + # Third version component may be empty + set (Unwind_VERSION ${Unwind_VERSION}.${Unwind_VERSION_PATCH}) + set (Unwind_VERSION_COMPONENTS 3) + else (CMAKE_MATCH_1) + set (Unwind_VERSION_COMPONENTS 2) + endif (CMAKE_MATCH_1) endif (EXISTS ${_Unwind_VERSION_HEADER}) endif (Unwind_LIBRARY)