From 385eb4dea7849b0d300d642dfcb5c11016642fcd Mon Sep 17 00:00:00 2001 From: Brad King Date: Mon, 30 Mar 2009 11:37:50 -0400 Subject: [PATCH] ENH: Simpler AddExternalProject patch step This simplifies the implementation with add_external_project_step. --- Modules/AddExternalProject.cmake | 25 +++++++------------------ 1 file changed, 7 insertions(+), 18 deletions(-) diff --git a/Modules/AddExternalProject.cmake b/Modules/AddExternalProject.cmake index e3b96bdd35..2cd4b30a00 100644 --- a/Modules/AddExternalProject.cmake +++ b/Modules/AddExternalProject.cmake @@ -435,27 +435,16 @@ function(add_external_project_patch_command name) get_external_project_directories(base_dir build_dir downloads_dir install_dir sentinels_dir source_dir tmp_dir) - get_target_property(cmd ${name} AEP_PATCH_COMMAND) + set(work_dir) + get_property(cmd TARGET ${name} PROPERTY AEP_PATCH_COMMAND) if(cmd) - add_custom_command( - OUTPUT ${sentinels_dir}/${name}-patch - COMMAND ${cmd} - COMMAND ${CMAKE_COMMAND} -E touch ${sentinels_dir}/${name}-patch - WORKING_DIRECTORY ${source_dir}/${name} - COMMENT "Performing patch step for '${name}'" - DEPENDS ${sentinels_dir}/${name}-download - VERBATIM - ) - return() + set(work_dir ${source_dir}/${name}) endif() - add_custom_command( - OUTPUT ${sentinels_dir}/${name}-patch - COMMAND ${CMAKE_COMMAND} -E touch ${sentinels_dir}/${name}-patch - WORKING_DIRECTORY ${sentinels_dir} - COMMENT "No patch step for '${name}'" - DEPENDS ${sentinels_dir}/${name}-download - VERBATIM + add_external_project_step(${name} patch + COMMAND ${cmd} + WORKING_DIRECTORY ${work_dir} + DEPENDEES download ) endfunction(add_external_project_patch_command)