summaryrefslogtreecommitdiffstats
path: root/Source/cmGlobalVisualStudio7Generator.h
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2009-10-06 17:30:00 (GMT)
committerBrad King <brad.king@kitware.com>2009-10-06 17:30:00 (GMT)
commit9000b5a4ded0d805ea1cd7b82f9e87e9abcf6c31 (patch)
treeaef1cee06fabc865ba60710c52edbcddd1e7463b /Source/cmGlobalVisualStudio7Generator.h
parentd8efcfc787b08e52c28611347e4c60cddde00aa2 (diff)
downloadCMake-9000b5a4ded0d805ea1cd7b82f9e87e9abcf6c31.zip
CMake-9000b5a4ded0d805ea1cd7b82f9e87e9abcf6c31.tar.gz
CMake-9000b5a4ded0d805ea1cd7b82f9e87e9abcf6c31.tar.bz2
Avoid non-root copies of root-only targets
In cmGlobalGenerator::GetTargetSets we collect targets from all local generators in a tree or subtree corresponding to a project() command. Some targets, such as ALL_BUILD, are duplicated in each subdirectory with a project() command. For such targets we should keep only the copy for the top-most (root) local generator. Previously this filtering was done in each VS IDE generator, but it is easier to do it in one place when the targets are first encountered. This also fixes bad ALL_BUILD dependencies generated for VS 7.0 because the cmGlobalVisualStudio7Generator::WriteTargetDepends method was not filtering out duplicates. Now we avoid duplicates from the start.
Diffstat (limited to 'Source/cmGlobalVisualStudio7Generator.h')
-rw-r--r--Source/cmGlobalVisualStudio7Generator.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/Source/cmGlobalVisualStudio7Generator.h b/Source/cmGlobalVisualStudio7Generator.h
index 363489e..73302bc 100644
--- a/Source/cmGlobalVisualStudio7Generator.h
+++ b/Source/cmGlobalVisualStudio7Generator.h
@@ -133,6 +133,7 @@ protected:
std::string ConvertToSolutionPath(const char* path);
+ virtual bool IsRootOnlyTarget(cmTarget* target);
bool IsPartOfDefaultBuild(const char* project,
cmTarget* target);
std::vector<std::string> Configurations;