diff Resources/CMake/MongooseConfiguration.cmake @ 1537:fbf763bb1fa3

error detection in patches
author Sebastien Jodogne <s.jodogne@gmail.com>
date Thu, 13 Aug 2015 15:25:38 +0200
parents 728c22ade2e2
children 8b6d8f9b9f71
line wrap: on
line diff
--- a/Resources/CMake/MongooseConfiguration.cmake	Thu Aug 13 14:16:11 2015 +0200
+++ b/Resources/CMake/MongooseConfiguration.cmake	Thu Aug 13 15:25:38 2015 +0200
@@ -1,6 +1,12 @@
 if (STATIC_BUILD OR NOT USE_SYSTEM_MONGOOSE)
   SET(MONGOOSE_SOURCES_DIR ${CMAKE_BINARY_DIR}/mongoose)
 
+  if (IS_DIRECTORY "${MONGOOSE_SOURCES_DIR}")
+    set(FirstRun OFF)
+  else()
+    set(FirstRun ON)
+  endif()
+
   if (0)
     # Use Mongoose 3.1
     DownloadPackage(
@@ -24,10 +30,15 @@
 
   # Patch mongoose
   execute_process(
-    COMMAND patch -N mongoose.c ${MONGOOSE_PATCH}
+    COMMAND ${PATCH_EXECUTABLE} -N mongoose.c ${MONGOOSE_PATCH}
     WORKING_DIRECTORY ${MONGOOSE_SOURCES_DIR}
+    RESULT_VARIABLE Failure
     )
 
+  if (Failure AND FirstRun)
+    message(FATAL_ERROR "Error while patching a file")
+  endif()
+
   include_directories(
     ${MONGOOSE_SOURCES_DIR}
     )
@@ -81,5 +92,3 @@
 
   link_libraries(mongoose)
 endif()
-
-