summaryrefslogtreecommitdiffstats
path: root/Source/cmake.cxx
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2008-02-06 04:10:41 (GMT)
committerBrad King <brad.king@kitware.com>2008-02-06 04:10:41 (GMT)
commit523ddedac59756e485818a88c59949355c1b9267 (patch)
treee4d2a1c74ef039f76913981c9073f185e9c2b9fb /Source/cmake.cxx
parent5b9fccdc0e5e5e3b723f0375f95983b7950be933 (diff)
downloadCMake-523ddedac59756e485818a88c59949355c1b9267.zip
CMake-523ddedac59756e485818a88c59949355c1b9267.tar.gz
CMake-523ddedac59756e485818a88c59949355c1b9267.tar.bz2
ENH: Analyze inter-target dependencies to safely fix cycles
- Cycles may be formed among static libraries - Native build system should not have cycles in target deps - Create cmComputeTargetDepends to analyze dependencies - Identify conneced components and use them to fix deps - Diagnose cycles containing non-STATIC targets - Add debug mode property GLOBAL_DEPENDS_DEBUG_MODE - Use results in cmGlobalGenerator as target direct depends
Diffstat (limited to 'Source/cmake.cxx')
-rw-r--r--Source/cmake.cxx7
1 files changed, 7 insertions, 0 deletions
diff --git a/Source/cmake.cxx b/Source/cmake.cxx
index 271a6b6..c2714d0 100644
--- a/Source/cmake.cxx
+++ b/Source/cmake.cxx
@@ -3296,6 +3296,13 @@ void cmake::DefineProperties(cmake *cm)
"Internal property",
"Used to detect compiler changes, Do not set.");
+ cm->DefineProperty(
+ "GLOBAL_DEPENDS_DEBUG_MODE", cmProperty::GLOBAL,
+ "Enable global target dependency graph debug mode.",
+ "CMake automatically analyzes the global inter-target dependency graph "
+ "at the beginning of native build system generation. "
+ "This property causes it to display details of its analysis to stderr.");
+
// ================================================================
// define variables as well
// ================================================================