diff options
author | Rechi <Rechi@users.noreply.github.com> | 2022-10-13 23:45:49 +0200 |
---|---|---|
committer | Rechi <Rechi@users.noreply.github.com> | 2022-10-13 23:45:49 +0200 |
commit | c1bace50415008c191017db12b1fb8515db8e06f (patch) | |
tree | 9d24e5a35c206a2d8d42d300579e198fc7bbabb2 /cmake | |
parent | 3ffdc532ff7de9415bde8d465940502a4a16be31 (diff) |
[cmake] add version parsing to patch
Diffstat (limited to 'cmake')
-rw-r--r-- | cmake/modules/buildtools/FindPatch.cmake | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/cmake/modules/buildtools/FindPatch.cmake b/cmake/modules/buildtools/FindPatch.cmake index ec6551f765..669b4d2785 100644 --- a/cmake/modules/buildtools/FindPatch.cmake +++ b/cmake/modules/buildtools/FindPatch.cmake @@ -67,8 +67,16 @@ if(CMAKE_HOST_WIN32 AND NOT PATCH_EXE) find_program(PATCH_EXE NAMES patch.exe HINTS ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/bin REQUIRED) endif() +if(PATCH_EXE) + execute_process(COMMAND "${PATCH_EXE}" --version + OUTPUT_VARIABLE PATCH_VERSION + OUTPUT_STRIP_TRAILING_WHITESPACE) + string(REGEX MATCH "[^\n]*patch [^\n]*" PATCH_VERSION "${PATCH_VERSION}") + string(REGEX REPLACE ".*patch (.*)" "\\1" PATCH_VERSION "${PATCH_VERSION}") +endif() + include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(Patch REQUIRED_VARS PATCH_EXE) +find_package_handle_standard_args(Patch REQUIRED_VARS PATCH_EXE VERSION_VAR PATCH_VERSION) if(PATCH_FOUND) set(PATCH_EXECUTABLE "${PATCH_EXE}") |