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  5be433e1cad0265f8e972c7a18f3f489878657fe (commit)
       via  aa4b5ea60018e38683fc8960c2e3534845c44a02 (commit)
       via  b500c98c91ce1ca90d152daab81b5761a6c480ee (commit)
       via  499be36a64e186a7426aae5ee4613b07a722827a (commit)
      from  d7b1a40b0f039ed46522d5c9f3c7c421833ba32c (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 -----------------------------------------------------------------
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=5be433e1cad0265f8e972c7a18f3f489878657fe
commit 5be433e1cad0265f8e972c7a18f3f489878657fe
Merge: d7b1a40 aa4b5ea
Author:     Gregor Jasny <gja...@googlemail.com>
AuthorDate: Sun Feb 28 11:35:53 2016 -0500
Commit:     CMake Topic Stage <kwro...@kitware.com>
CommitDate: Sun Feb 28 11:35:53 2016 -0500

    Merge topic 'xcode-regenerate-on-deleted-files' into next
    
    aa4b5ea6 Xcode: ReRunCMake even if files disappeared (#15992)
    b500c98c CMake Nightly Date Stamp
    499be36a CMake Nightly Date Stamp


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=aa4b5ea60018e38683fc8960c2e3534845c44a02
commit aa4b5ea60018e38683fc8960c2e3534845c44a02
Author:     Gregor Jasny <gja...@googlemail.com>
AuthorDate: Sun Feb 28 17:27:17 2016 +0100
Commit:     Gregor Jasny <gja...@googlemail.com>
CommitDate: Sun Feb 28 17:35:15 2016 +0100

    Xcode: ReRunCMake even if files disappeared (#15992)

diff --git a/Source/cmGlobalXCodeGenerator.cxx 
b/Source/cmGlobalXCodeGenerator.cxx
index ef18729..7844611 100644
--- a/Source/cmGlobalXCodeGenerator.cxx
+++ b/Source/cmGlobalXCodeGenerator.cxx
@@ -603,7 +603,8 @@ void cmGlobalXCodeGenerator::CreateReRunCMakeFile(
   for(std::vector<std::string>::const_iterator i = lfiles.begin();
       i !=  lfiles.end(); ++i)
     {
-    makefileStream << "\\\n" << this->ConvertToRelativeForMake(i->c_str());
+    makefileStream << "\\\n" << "$(wildcard "
+                   << this->ConvertToRelativeForMake(i->c_str()) << ")";
     }
   makefileStream << "\n\t" <<
     this->ConvertToRelativeForMake(cmSystemTools::GetCMakeCommand().c_str())
diff --git a/Tests/RunCMake/CommandLine/RunCMakeTest.cmake 
b/Tests/RunCMake/CommandLine/RunCMakeTest.cmake
index a07bbbe..274e13e 100644
--- a/Tests/RunCMake/CommandLine/RunCMakeTest.cmake
+++ b/Tests/RunCMake/CommandLine/RunCMakeTest.cmake
@@ -298,3 +298,37 @@ set(CMAKE_RELATIVE_PATH_TOP_BINARY 
\"${RunCMake_TEST_BINARY_DIR}\")
     )
 endfunction()
 run_cmake_depends()
+
+# test re-generation of project even if CMakeLists.txt files disappeared
+if(UNIX)
+  # Use a single build tree for a few tests without cleaning.
+  set(RunCMake_TEST_BINARY_DIR
+    ${RunCMake_BINARY_DIR}/regenerate-project-build)
+  set(RunCMake_TEST_SOURCE_DIR
+    ${RunCMake_BINARY_DIR}/regenerate-project-source)
+  set(RunCMake_TEST_NO_CLEAN 1)
+  file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
+  file(REMOVE_RECURSE "${RunCMake_TEST_SOURCE_DIR}")
+  set(ProjectHeader [=[
+    cmake_minimum_required(VERSION 3.5)
+    project(regenerate-project NONE)
+  ]=])
+
+  file(WRITE "${RunCMake_TEST_SOURCE_DIR}/CMakeLists.txt" "${ProjectHeader}"
+    "add_subdirectory(mysubdir)")
+  file(MAKE_DIRECTORY "${RunCMake_TEST_SOURCE_DIR}/mysubdir")
+  file(WRITE "${RunCMake_TEST_SOURCE_DIR}/mysubdir/CMakeLists.txt" "# empty")
+
+  run_cmake(regenerate-project-create)
+
+  # now we delete the subdirectory and adjust the CMakeLists.txt
+  file(REMOVE_RECURSE "${RunCMake_TEST_SOURCE_DIR}/mysubdir")
+  file(WRITE "${RunCMake_TEST_SOURCE_DIR}/CMakeLists.txt" "${ProjectHeader}")
+
+  run_cmake_command(regenerate-project-should-work
+    ${CMAKE_COMMAND} --build "${RunCMake_TEST_BINARY_DIR}")
+
+  unset(RunCMake_TEST_BINARY_DIR)
+  unset(RunCMake_TEST_SOURCE_DIR)
+  unset(RunCMake_TEST_NO_CLEAN)
+endif()

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

Summary of changes:
 Source/CMakeVersion.cmake                     |    2 +-
 Source/cmGlobalXCodeGenerator.cxx             |    3 ++-
 Tests/RunCMake/CommandLine/RunCMakeTest.cmake |   34 +++++++++++++++++++++++++
 3 files changed, 37 insertions(+), 2 deletions(-)


hooks/post-receive
-- 
CMake
_______________________________________________
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/mailman/listinfo/cmake-commits

Reply via email to