[Cmake-commits] [cmake-commits] king committed AddExternalProject.cmake 1.17 1.18
cmake-commits at cmake.org
cmake-commits at cmake.org
Mon Mar 30 11:38:09 EDT 2009
Update of /cvsroot/CMake/CMake/Modules
In directory public:/mounts/ram/cvs-serv29824/Modules
Modified Files:
AddExternalProject.cmake
Log Message:
ENH: Simpler AddExternalProject configure step
This simplifies the implementation with add_external_project_step.
Index: AddExternalProject.cmake
===================================================================
RCS file: /cvsroot/CMake/CMake/Modules/AddExternalProject.cmake,v
retrieving revision 1.17
retrieving revision 1.18
diff -C 2 -d -r1.17 -r1.18
*** AddExternalProject.cmake 30 Mar 2009 15:37:50 -0000 1.17
--- AddExternalProject.cmake 30 Mar 2009 15:38:05 -0000 1.18
***************
*** 467,519 ****
#
mkdir("${working_dir}")
! add_custom_command(
! OUTPUT ${sentinels_dir}/${name}-working_dir
COMMAND ${CMAKE_COMMAND} -E make_directory ${working_dir}
! COMMAND ${CMAKE_COMMAND} -E touch ${sentinels_dir}/${name}-working_dir
! DEPENDS ${sentinels_dir}/${name}-update
! ${sentinels_dir}/${name}-patch
! ${file_deps}
! VERBATIM
)
! get_target_property(cmd ${name} AEP_CONFIGURE_COMMAND)
! if(cmd STREQUAL "")
! # Explicit empty string means no configure step for this project
! add_custom_command(
! OUTPUT ${sentinels_dir}/${name}-configure
! COMMAND ${CMAKE_COMMAND} -E touch ${sentinels_dir}/${name}-configure
! WORKING_DIRECTORY ${working_dir}
! COMMENT "No configure step for '${name}'"
! DEPENDS ${sentinels_dir}/${name}-working_dir
! VERBATIM
! )
else()
! if(NOT cmd)
! get_target_property(cmake_command ${name} AEP_CMAKE_COMMAND)
! if(cmake_command)
! set(cmd "${cmake_command}")
! else()
! set(cmd "${CMAKE_COMMAND}")
! endif()
! get_property(cmake_args TARGET ${name} PROPERTY AEP_CMAKE_ARGS)
! list(APPEND cmd ${cmake_args})
! get_target_property(cmake_generator ${name} AEP_CMAKE_GENERATOR)
! if(cmake_generator)
! list(APPEND cmd "-G${cmake_generator}" "${source_dir}/${name}")
! endif()
endif()
-
- add_custom_command(
- OUTPUT ${sentinels_dir}/${name}-configure
- COMMAND ${cmd}
- COMMAND ${CMAKE_COMMAND} -E touch ${sentinels_dir}/${name}-configure
- WORKING_DIRECTORY ${working_dir}
- COMMENT "Performing configure step for '${name}'"
- DEPENDS ${sentinels_dir}/${name}-working_dir
- VERBATIM
- )
endif()
endfunction(add_external_project_configure_command)
--- 467,502 ----
#
mkdir("${working_dir}")
! add_external_project_step(${name} working_dir
! COMMENT "Making directory \"${working_dir}\""
COMMAND ${CMAKE_COMMAND} -E make_directory ${working_dir}
! DEPENDEES update patch
! DEPENDS ${file_deps}
)
! get_property(cmd_set TARGET ${name} PROPERTY AEP_CONFIGURE_COMMAND SET)
! if(cmd_set)
! get_property(cmd TARGET ${name} PROPERTY AEP_CONFIGURE_COMMAND)
else()
! get_target_property(cmake_command ${name} AEP_CMAKE_COMMAND)
! if(cmake_command)
! set(cmd "${cmake_command}")
! else()
! set(cmd "${CMAKE_COMMAND}")
! endif()
! get_property(cmake_args TARGET ${name} PROPERTY AEP_CMAKE_ARGS)
! list(APPEND cmd ${cmake_args})
! get_target_property(cmake_generator ${name} AEP_CMAKE_GENERATOR)
! if(cmake_generator)
! list(APPEND cmd "-G${cmake_generator}" "${source_dir}/${name}")
endif()
endif()
+
+ add_external_project_step(${name} configure
+ COMMAND ${cmd}
+ WORKING_DIRECTORY ${working_dir}
+ DEPENDEES working_dir
+ )
endfunction(add_external_project_configure_command)
More information about the Cmake-commits
mailing list