[Cmake-commits] CMake branch, next, updated. v3.3.2-3100-g5c7e0a9

Stephen Kelly steveire at gmail.com
Fri Sep 18 14:47:51 EDT 2015


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  5c7e0a97e953d0905b0d9e7bbc042cfbb6b6dfa0 (commit)
       via  706468066fa82df76cc7dfdc717cabfb0fcd39f2 (commit)
       via  9f734464b70668b695accc386738c9e2e3c45c2d (commit)
      from  719c5e535018405e5af72dead1c86fe50a013798 (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=5c7e0a97e953d0905b0d9e7bbc042cfbb6b6dfa0
commit 5c7e0a97e953d0905b0d9e7bbc042cfbb6b6dfa0
Merge: 719c5e5 7064680
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Fri Sep 18 14:47:50 2015 -0400
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Fri Sep 18 14:47:50 2015 -0400

    Merge topic 'fix-compatibility-mode-LOCATION' into next
    
    70646806 cmGlobalGenerator: Add API for the configure step being finished.
    9f734464 Revert "Revert "CMP0026: Use compatibility codepath until configure is finished (#15748)""


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=706468066fa82df76cc7dfdc717cabfb0fcd39f2
commit 706468066fa82df76cc7dfdc717cabfb0fcd39f2
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Fri Sep 18 01:34:46 2015 +0200
Commit:     Stephen Kelly <steveire at gmail.com>
CommitDate: Fri Sep 18 20:47:06 2015 +0200

    cmGlobalGenerator: Add API for the configure step being finished.

diff --git a/Source/cmGlobalGenerator.cxx b/Source/cmGlobalGenerator.cxx
index b4ae618..7aa8bb6 100644
--- a/Source/cmGlobalGenerator.cxx
+++ b/Source/cmGlobalGenerator.cxx
@@ -1112,10 +1112,11 @@ void cmGlobalGenerator::Configure()
       this->CMakeInstance->GetHomeOutputDirectory());
 
   // now do it
+  this->ConfigureDoneCMP0026 = false;
   dirMf->Configure();
   dirMf->EnforceDirectoryLevelRules();
 
-  this->ConfigureDoneCMP0026 = false;
+  this->ConfigureDoneCMP0026 = true;
 
   // Put a copy of each global target in every directory.
   cmTargets globalTargets;

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9f734464b70668b695accc386738c9e2e3c45c2d
commit 9f734464b70668b695accc386738c9e2e3c45c2d
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Fri Sep 18 20:46:30 2015 +0200
Commit:     Stephen Kelly <steveire at gmail.com>
CommitDate: Fri Sep 18 20:46:30 2015 +0200

    Revert "Revert "CMP0026: Use compatibility codepath until configure is finished (#15748)""
    
    This reverts commit 09b972f5056af71d6d6ff85baa2e4e5b5e266ab1.

diff --git a/Source/cmGeneratorTarget.cxx b/Source/cmGeneratorTarget.cxx
index fb5805b..555c437 100644
--- a/Source/cmGeneratorTarget.cxx
+++ b/Source/cmGeneratorTarget.cxx
@@ -2218,7 +2218,7 @@ cmGeneratorTarget::GetIncludeDirectories(const std::string& config,
                                  "INCLUDE_DIRECTORIES")
                         != debugProperties.end();
 
-  if (this->Makefile->IsConfigured())
+  if (this->GlobalGenerator->GetConfigureDoneCMP0026())
     {
     this->DebugIncludesDone = true;
     }
@@ -2365,7 +2365,7 @@ void cmGeneratorTarget::GetCompileOptions(std::vector<std::string> &result,
                                  "COMPILE_OPTIONS")
                         != debugProperties.end();
 
-  if (this->Makefile->IsConfigured())
+  if (this->GlobalGenerator->GetConfigureDoneCMP0026())
     {
     this->DebugCompileOptionsDone = true;
     }
@@ -2435,7 +2435,7 @@ void cmGeneratorTarget::GetCompileFeatures(std::vector<std::string> &result,
                                  "COMPILE_FEATURES")
                         != debugProperties.end();
 
-  if (this->Makefile->IsConfigured())
+  if (this->GlobalGenerator->GetConfigureDoneCMP0026())
     {
     this->DebugCompileFeaturesDone = true;
     }
@@ -2503,7 +2503,7 @@ void cmGeneratorTarget::GetCompileDefinitions(std::vector<std::string> &list,
                                 "COMPILE_DEFINITIONS")
                         != debugProperties.end();
 
-  if (this->Makefile->IsConfigured())
+  if (this->GlobalGenerator->GetConfigureDoneCMP0026())
     {
     this->DebugCompileDefinitionsDone = true;
     }
@@ -3937,7 +3937,7 @@ cmGeneratorTarget::ReportPropertyOrigin(const std::string &p,
                                  p)
                         != debugProperties.end();
 
-  if (this->Target->GetMakefile()->IsConfigured())
+  if (this->GlobalGenerator->GetConfigureDoneCMP0026())
     {
     this->DebugCompatiblePropertiesDone[p] = true;
     }
@@ -4504,7 +4504,7 @@ void cmGeneratorTarget::GetLanguages(std::set<std::string>& languages,
 
   std::vector<cmGeneratorTarget*> objectLibraries;
   std::vector<cmSourceFile const*> externalObjects;
-  if (!this->Makefile->IsConfigured())
+  if (!this->GlobalGenerator->GetConfigureDoneCMP0026())
     {
     std::vector<cmTarget*> objectTargets;
     this->Target->GetObjectLibrariesCMP0026(objectTargets);
diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx
index 2dfa19c..13e0d7e 100644
--- a/Source/cmTarget.cxx
+++ b/Source/cmTarget.cxx
@@ -636,7 +636,7 @@ void cmTarget::GetSourceFiles(std::vector<std::string> &files,
 {
   assert(this->GetType() != INTERFACE_LIBRARY);
 
-  if (!this->Makefile->IsConfigured())
+  if (!this->GetMakefile()->GetGlobalGenerator()->GetConfigureDoneCMP0026())
     {
     // At configure-time, this method can be called as part of getting the
     // LOCATION property or to export() a file to be include()d.  However
@@ -682,7 +682,7 @@ void cmTarget::GetSourceFiles(std::vector<std::string> &files,
                                  "SOURCES")
                         != debugProperties.end();
 
-  if (this->Makefile->IsConfigured())
+  if (this->GetMakefile()->GetGlobalGenerator()->GetConfigureDoneCMP0026())
     {
     this->DebugSourcesDone = true;
     }
diff --git a/Tests/RunCMake/CMP0026/RunCMakeTest.cmake b/Tests/RunCMake/CMP0026/RunCMakeTest.cmake
index fc58ea5..6331717 100644
--- a/Tests/RunCMake/CMP0026/RunCMakeTest.cmake
+++ b/Tests/RunCMake/CMP0026/RunCMakeTest.cmake
@@ -11,3 +11,4 @@ run_cmake(CMP0026-LOCATION-CONFIG-OLD)
 run_cmake(CMP0026-LOCATION-CONFIG-WARN)
 run_cmake(ObjlibNotDefined)
 run_cmake(LOCATION-and-TARGET_OBJECTS)
+run_cmake(clear-cached-information)
diff --git a/Tests/RunCMake/CMP0026/clear-cached-information-dir/CMakeLists.txt b/Tests/RunCMake/CMP0026/clear-cached-information-dir/CMakeLists.txt
new file mode 100644
index 0000000..c51e883
--- /dev/null
+++ b/Tests/RunCMake/CMP0026/clear-cached-information-dir/CMakeLists.txt
@@ -0,0 +1,2 @@
+
+add_executable(Hello ${CMAKE_CURRENT_BINARY_DIR}/main.c)
diff --git a/Tests/RunCMake/CMP0026/clear-cached-information.cmake b/Tests/RunCMake/CMP0026/clear-cached-information.cmake
new file mode 100644
index 0000000..dd2dd72
--- /dev/null
+++ b/Tests/RunCMake/CMP0026/clear-cached-information.cmake
@@ -0,0 +1,14 @@
+
+enable_language(C)
+
+cmake_policy(SET CMP0026 OLD)
+
+add_subdirectory(clear-cached-information-dir)
+
+# Critical: this needs to happen in root CMakeLists.txt and not inside
+# the subdir.
+get_target_property(mypath Hello LOCATION)
+# Now we create the file later, so you can see, ultimately no error should
+# happen e.g. during generate phase:
+file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/clear-cached-information-dir/main.c)
+set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/clear-cached-information-dir/main.c PROPERTIES GENERATED TRUE)

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

Summary of changes:
 Source/cmGeneratorTarget.cxx                             |   12 ++++++------
 Source/cmGlobalGenerator.cxx                             |    3 ++-
 Source/cmTarget.cxx                                      |    4 ++--
 Tests/RunCMake/CMP0026/RunCMakeTest.cmake                |    1 +
 .../CMP0026/clear-cached-information-dir/CMakeLists.txt  |    2 ++
 Tests/RunCMake/CMP0026/clear-cached-information.cmake    |   14 ++++++++++++++
 6 files changed, 27 insertions(+), 9 deletions(-)
 create mode 100644 Tests/RunCMake/CMP0026/clear-cached-information-dir/CMakeLists.txt
 create mode 100644 Tests/RunCMake/CMP0026/clear-cached-information.cmake


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list