The regex should not accept an empty version number.
The previous attempt at r223106 failed, and the build was still erroring:
CMake Error at tools/clang/CMakeLists.txt:269 (string):
string sub-command REGEX, mode REPLACE regex "[^0-9]*([0-9.]*).*" matched
an empty string.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@223333
91177308-0d34-0410-b5e6-
96231b3b80d8
OUTPUT_VARIABLE LD_V_OUTPUT
)
if (NOT HAD_ERROR)
- if ("${LD_V_OUTPUT}" MATCHES ".*ld64.*")
- string(REGEX REPLACE ".*ld64-([0-9.]*).*" "\\1" HOST_LINK_VERSION ${LD_V_OUTPUT})
- elseif ("${LD_V_OUTPUT}" MATCHES "[^0-9]*([0-9.]*).*")
- string(REGEX REPLACE "[^0-9]*([0-9.]*).*" "\\1" HOST_LINK_VERSION ${LD_V_OUTPUT})
+ if ("${LD_V_OUTPUT}" MATCHES ".*ld64-([0-9.]+).*")
+ string(REGEX REPLACE ".*ld64-([0-9.]+).*" "\\1" HOST_LINK_VERSION ${LD_V_OUTPUT})
+ elseif ("${LD_V_OUTPUT}" MATCHES "[^0-9]*([0-9.]+).*")
+ string(REGEX REPLACE "[^0-9]*([0-9.]+).*" "\\1" HOST_LINK_VERSION ${LD_V_OUTPUT})
endif()
else()
message(FATAL_ERROR "${CMAKE_LINKER} failed with status ${HAD_ERROR}")