[Cmake-commits] CMake branch, next, updated. v2.8.1-1236-g1423fe6

cmake-commits at cmake.org cmake-commits at cmake.org
Wed May 26 15:42:47 EDT 2010


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".

The branch, next has been updated
       via  1423fe6edc3f5b86bf0a6563244f0c8d0960674b (commit)
       via  ea6260cb188f1ab1982f88504d5fb1017a233144 (commit)
      from  a677720dbd552b619fcfbfa88d767197971674f8 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1423fe6edc3f5b86bf0a6563244f0c8d0960674b
commit 1423fe6edc3f5b86bf0a6563244f0c8d0960674b
Merge: a677720 ea6260c
Author: David Cole <david.cole at kitware.com>
Date:   Wed May 26 15:42:06 2010 -0400

    Merge branch 'ExternalProject-fixes' into next


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ea6260cb188f1ab1982f88504d5fb1017a233144
commit ea6260cb188f1ab1982f88504d5fb1017a233144
Author: David Cole <david.cole at kitware.com>
Date:   Wed May 26 15:38:41 2010 -0400

    Fix issue #10258: re-configure if args change.
    
    Fixes issue http://public.kitware.com/Bug/view.php?id=10258
    Also, fix complaint that DOWNLOAD_COMMAND cannot contain arguments
    consisting entirely of upper case letters. It validly does when,
    for example, you construct a custom cvs command line and the module
    name is all upper case, like VTK.

diff --git a/Modules/ExternalProject.cmake b/Modules/ExternalProject.cmake
index 0302d5c..a304b9f 100644
--- a/Modules/ExternalProject.cmake
+++ b/Modules/ExternalProject.cmake
@@ -157,6 +157,7 @@ function(_ep_parse_arguments f name ns args)
         if(NOT (key STREQUAL "COMMAND")
           AND NOT (key STREQUAL "CVS_MODULE")
           AND NOT (key STREQUAL "DEPENDS")
+          AND NOT (key STREQUAL "DOWNLOAD_COMMAND")
           )
           message(AUTHOR_WARNING "unknown ${f} keyword: ${arg}")
         endif()
@@ -793,7 +794,7 @@ endfunction(_ep_add_patch_command)
 
 # TODO: Make sure external projects use the proper compiler
 function(_ep_add_configure_command name)
-  ExternalProject_Get_Property(${name} source_dir binary_dir)
+  ExternalProject_Get_Property(${name} source_dir binary_dir tmp_dir)
 
   _ep_get_configuration_subdir_suffix(cfgdir)
 
@@ -827,6 +828,16 @@ function(_ep_add_configure_command name)
     endif()
   endif()
 
+  # If anything about the configure command changes, (command itself, cmake
+  # used, cmake args or cmake generator) then re-run the configure step.
+  # Fixes issue http://public.kitware.com/Bug/view.php?id=10258
+  #
+  if(NOT EXISTS ${tmp_dir}/${name}-cfgcmd.txt.in)
+    file(WRITE ${tmp_dir}/${name}-cfgcmd.txt.in "cmd='@cmd@'\n")
+  endif()
+  configure_file(${tmp_dir}/${name}-cfgcmd.txt.in ${tmp_dir}/${name}-cfgcmd.txt)
+  list(APPEND file_deps ${tmp_dir}/${name}-cfgcmd.txt)
+
   ExternalProject_Add_Step(${name} configure
     COMMAND ${cmd}
     WORKING_DIRECTORY ${binary_dir}

-----------------------------------------------------------------------

Summary of changes:
 Modules/ExternalProject.cmake |   13 ++++++++++++-
 1 files changed, 12 insertions(+), 1 deletions(-)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list