forked from arduino-cmake/arduino-cmake
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathFindPatch.cmake
39 lines (33 loc) · 1.09 KB
/
FindPatch.cmake
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
if (NOT PATCH_EXECUTABLE)
message(STATUS "Checking for patch")
message(STATUS "******************")
find_program(PATCH_EXECUTABLE patch)
set(PATCH_EXECUTABLE ${PATCH_EXECUTABLE} CACHE STRING "")
if (PATCH_EXECUTABLE)
message(STATUS "Found patch")
if (VERBOSE)
message(STATUS "Path: ${PATCH_EXECUTABLE}")
endif (VERBOSE)
else (PATCH_EXECUTABLE)
message(FATAL_ERROR "patch not found")
endif (PATCH_EXECUTABLE)
message("")
endif (NOT PATCH_EXECUTABLE)
macro(patch_file baseDir patchFile)
execute_process(COMMAND ${PATCH_EXECUTABLE} -p0 -i "${patchFile}"
WORKING_DIRECTORY "${baseDir}"
RESULT_VARIABLE res
)
if(res)
MESSAGE(FATAL_ERROR "Patch failed")
endif(res)
endmacro(patch_file)
macro(patch_file_p p baseDir patchFile)
execute_process(COMMAND ${PATCH_EXECUTABLE} -p ${p} -i "${patchFile}"
WORKING_DIRECTORY "${baseDir}"
RESULT_VARIABLE res
)
if(res)
MESSAGE(FATAL_ERROR "Patch failed")
endif(res)
endmacro(patch_file_p)