summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2014-02-11 14:16:02 (GMT)
committerCMake Topic Stage <kwrobot@kitware.com>2014-02-11 14:16:02 (GMT)
commita12dd791dd32944f52ef5e1078a2e3a8eec2a8a1 (patch)
treec05d0b0544155217cfb856a96e955cc653fb2edb /Source
parentab6231f37c5930f0baa3bc988160c7aefe260e20 (diff)
parent18bef4cd66e62b0cb167767f121e54161749c2f8 (diff)
downloadCMake-a12dd791dd32944f52ef5e1078a2e3a8eec2a8a1.zip
CMake-a12dd791dd32944f52ef5e1078a2e3a8eec2a8a1.tar.gz
CMake-a12dd791dd32944f52ef5e1078a2e3a8eec2a8a1.tar.bz2
Merge topic 'graphviz-one-file'
18bef4cd graphviz: allow to disable per target graphs (#14746)
Diffstat (limited to 'Source')
-rw-r--r--Source/cmGraphVizWriter.cxx14
-rw-r--r--Source/cmGraphVizWriter.h2
2 files changed, 16 insertions, 0 deletions
diff --git a/Source/cmGraphVizWriter.cxx b/Source/cmGraphVizWriter.cxx
index 3a7070e..db964a9 100644
--- a/Source/cmGraphVizWriter.cxx
+++ b/Source/cmGraphVizWriter.cxx
@@ -53,6 +53,8 @@ cmGraphVizWriter::cmGraphVizWriter(const std::vector<cmLocalGenerator*>&
,GenerateForSharedLibs(true)
,GenerateForModuleLibs(true)
,GenerateForExternals(true)
+,GeneratePerTarget(true)
+,GenerateDependers(true)
,LocalGenerators(localGenerators)
,HaveTargetsAndLibs(false)
{
@@ -116,6 +118,8 @@ void cmGraphVizWriter::ReadSettings(const char* settingsFileName,
__set_bool_if_set(this->GenerateForSharedLibs, "GRAPHVIZ_SHARED_LIBS");
__set_bool_if_set(this->GenerateForModuleLibs, "GRAPHVIZ_MODULE_LIBS");
__set_bool_if_set(this->GenerateForExternals, "GRAPHVIZ_EXTERNAL_LIBS");
+ __set_bool_if_set(this->GeneratePerTarget, "GRAPHVIZ_GENERATE_PER_TARGET");
+ __set_bool_if_set(this->GenerateDependers, "GRAPHVIZ_GENERATE_DEPENDERS");
cmStdString ignoreTargetsRegexes;
__set_if_set(ignoreTargetsRegexes, "GRAPHVIZ_IGNORE_TARGETS");
@@ -149,6 +153,11 @@ void cmGraphVizWriter::ReadSettings(const char* settingsFileName,
// which other targets depend on it.
void cmGraphVizWriter::WriteTargetDependersFiles(const char* fileName)
{
+ if(this->GenerateDependers == false)
+ {
+ return;
+ }
+
this->CollectTargetsAndLibs();
for(std::map<cmStdString, const cmTarget*>::const_iterator ptrIt =
@@ -195,6 +204,11 @@ void cmGraphVizWriter::WriteTargetDependersFiles(const char* fileName)
// on which targets it depends.
void cmGraphVizWriter::WritePerTargetFiles(const char* fileName)
{
+ if(this->GeneratePerTarget == false)
+ {
+ return;
+ }
+
this->CollectTargetsAndLibs();
for(std::map<cmStdString, const cmTarget*>::const_iterator ptrIt =
diff --git a/Source/cmGraphVizWriter.h b/Source/cmGraphVizWriter.h
index f784aa0..17b97f8 100644
--- a/Source/cmGraphVizWriter.h
+++ b/Source/cmGraphVizWriter.h
@@ -74,6 +74,8 @@ protected:
bool GenerateForSharedLibs;
bool GenerateForModuleLibs;
bool GenerateForExternals;
+ bool GeneratePerTarget;
+ bool GenerateDependers;
std::vector<cmsys::RegularExpression> TargetsToIgnoreRegex;