diff options
Diffstat (limited to 'Modules/ExternalProject.cmake')
-rw-r--r-- | Modules/ExternalProject.cmake | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/Modules/ExternalProject.cmake b/Modules/ExternalProject.cmake index 52d41eb..74e8ae2 100644 --- a/Modules/ExternalProject.cmake +++ b/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() |