Przeglądaj źródła

Merge topic 'ExternalProject-switch-ALWAYS'

a4605973 ExternalProject: Allow ALWAYS step property to be switched (#15368)
Brad King 10 lat temu
rodzic
commit
a65f7944a0
1 zmienionych plików z 9 dodań i 0 usunięć
  1. 9 0
      Modules/ExternalProject.cmake

+ 9 - 0
Modules/ExternalProject.cmake

@@ -1456,6 +1456,15 @@ function(ExternalProject_Add_Step name step)
   if(always)
     set_property(SOURCE ${stamp_file} PROPERTY SYMBOLIC 1)
     set(touch)
+    # Remove any existing stamp in case the option changed in an existing tree.
+    if(CMAKE_CONFIGURATION_TYPES)
+      foreach(cfg ${CMAKE_CONFIGURATION_TYPES})
+        string(REPLACE "/${CMAKE_CFG_INTDIR}" "/${cfg}" stamp_file_config "${stamp_file}")
+        file(REMOVE ${stamp_file_config})
+      endforeach()
+    else()
+      file(REMOVE ${stamp_file})
+    endif()
   else()
     set(touch ${CMAKE_COMMAND} -E touch ${stamp_file})
   endif()