summaryrefslogtreecommitdiffstats
path: root/Source/cmMakefile.cxx
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2015-10-22 22:59:36 (GMT)
committerStephen Kelly <steveire@gmail.com>2015-10-27 06:44:20 (GMT)
commitf210cb131e5814631d6d2974cf2437632446654f (patch)
tree60a6c05e606c9a6987fae8821737490acf23484f /Source/cmMakefile.cxx
parentbde277e811fea2532ed32ade6d7f3d6e910bfda0 (diff)
downloadCMake-f210cb131e5814631d6d2974cf2437632446654f.zip
CMake-f210cb131e5814631d6d2974cf2437632446654f.tar.gz
CMake-f210cb131e5814631d6d2974cf2437632446654f.tar.bz2
cmTarget: Make compatbility API explicit.
Diffstat (limited to 'Source/cmMakefile.cxx')
-rw-r--r--Source/cmMakefile.cxx21
1 files changed, 16 insertions, 5 deletions
diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx
index 40e2892..361aa99 100644
--- a/Source/cmMakefile.cxx
+++ b/Source/cmMakefile.cxx
@@ -756,15 +756,26 @@ void cmMakefile::ConfigureFinalPass()
"with CMake 2.4 or later. For compatibility with older versions please "
"use any CMake 2.8.x release or lower.");
}
- for (cmTargets::iterator l = this->Targets.begin();
- l != this->Targets.end(); l++)
+#if defined(_WIN32) && !defined(__CYGWIN__)
+ // Do old-style link dependency analysis only for CM_USE_OLD_VS6.
+ if(this->GetGlobalGenerator()->IsForVS6())
{
- if (l->second.GetType() == cmState::INTERFACE_LIBRARY)
+ for (cmTargets::iterator l = this->Targets.begin();
+ l != this->Targets.end(); l++)
{
- continue;
+ if (l->second.GetType() == cmState::INTERFACE_LIBRARY)
+ {
+ continue;
+ }
+ // Erase any cached link information that might have been comptued
+ // on-demand during the configuration. This ensures that build
+ // system generation uses up-to-date information even if other cache
+ // invalidation code in this source file is buggy.
+
+ l->second.AnalyzeLibDependenciesForVS6(*this);
}
- l->second.FinishConfigure();
}
+#endif
}
//----------------------------------------------------------------------------