summaryrefslogtreecommitdiffstats
path: root/Source/cmGlobalVisualStudioGenerator.h
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2009-10-01 14:27:02 (GMT)
committerBrad King <brad.king@kitware.com>2009-10-01 14:27:02 (GMT)
commit1b9e61f214b12f9a20a975d9bfe9c310d65082d2 (patch)
tree961aa57b001b95fea9478142de9560e6a641d6e6 /Source/cmGlobalVisualStudioGenerator.h
parentc8ddb6813b5888fa638ed312fca6473028c61aa4 (diff)
downloadCMake-1b9e61f214b12f9a20a975d9bfe9c310d65082d2.zip
CMake-1b9e61f214b12f9a20a975d9bfe9c310d65082d2.tar.gz
CMake-1b9e61f214b12f9a20a975d9bfe9c310d65082d2.tar.bz2
Add alternative _UTILITY targets to all solutions
In VS 6, 7, and 7.1 solutions we implement add_dependencies(myexe mylib) # depend without linking by creating an intermediate mylib_UTILITY target with dependencies myexe -> mylib_UTILITY -> mylib to avoid linking myexe to mylib. Previously these extra targets were only added to the solution files in an ancestor directory of that defining mylib. For example, in the project: # CMakeLists.txt project(TOP) add_subdirectory(A) add_subdirectory(b) # A/CMakeLists.txt add_library(mylib ...) # B/CMakeLists.txt project(B) add_executable(myexe ...) add_dependencies(myexe mylib) the solution for TOP would have mylib_UTILITY but the solution for B would not even though it pulls in mylib through the dependency. This commit fixes solutions generated in other directories so that any solution that has mylib will get mylib_UTILITY also. See issue #9568.
Diffstat (limited to 'Source/cmGlobalVisualStudioGenerator.h')
-rw-r--r--Source/cmGlobalVisualStudioGenerator.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/Source/cmGlobalVisualStudioGenerator.h b/Source/cmGlobalVisualStudioGenerator.h
index c601cc4..d799485 100644
--- a/Source/cmGlobalVisualStudioGenerator.h
+++ b/Source/cmGlobalVisualStudioGenerator.h
@@ -85,6 +85,9 @@ protected:
OrderedTargetDependSet(cmGlobalGenerator::TargetDependSet const&);
};
+ virtual void GetTargetSets(TargetDependSet& projectTargets,
+ TargetDependSet& originalTargets,
+ cmLocalGenerator* root, GeneratorVector const&);
private:
void FixUtilityDependsForTarget(cmTarget& target);
void CreateUtilityDependTarget(cmTarget& target);