summaryrefslogtreecommitdiffstats
path: root/Source/cmGlobalGenerator.h
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2016-10-08 10:21:36 (GMT)
committerStephen Kelly <steveire@gmail.com>2016-10-10 18:38:53 (GMT)
commit5b361fdda0f2808f0368b746a880981ebda0ade0 (patch)
treef1c0ed09db22c32951b8fea68e15a2ccd94aff84 /Source/cmGlobalGenerator.h
parent2e5d1990f382aa42e8a0ad34117ee1e5a9187153 (diff)
downloadCMake-5b361fdda0f2808f0368b746a880981ebda0ade0.zip
CMake-5b361fdda0f2808f0368b746a880981ebda0ade0.tar.gz
CMake-5b361fdda0f2808f0368b746a880981ebda0ade0.tar.bz2
cmLinkLineComputer: Extract from cmLocalGenerator
CMake has several classes which have too many responsibilities. cmLocalGenerator is one of them. Start to extract the link line computation. Create generator-specific implementations of the interface to account for generator-specific behavior. Unfortunately MSVC60 has different behavior to everything else and CMake still generates makefiles for it. Isolate it with MSVC60-specific names.
Diffstat (limited to 'Source/cmGlobalGenerator.h')
-rw-r--r--Source/cmGlobalGenerator.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/Source/cmGlobalGenerator.h b/Source/cmGlobalGenerator.h
index 74b4547..126eb6f 100644
--- a/Source/cmGlobalGenerator.h
+++ b/Source/cmGlobalGenerator.h
@@ -34,6 +34,7 @@ class cmExportBuildFileGenerator;
class cmExternalMakefileProjectGenerator;
class cmGeneratorTarget;
class cmLocalGenerator;
+class cmLinkLineComputer;
class cmMakefile;
class cmake;
@@ -105,6 +106,12 @@ public:
*/
virtual void Generate();
+ virtual cmLinkLineComputer* CreateLinkLineComputer(
+ cmState::Directory stateDir) const;
+
+ cmLinkLineComputer* CreateMSVC60LinkLineComputer(
+ cmState::Directory stateDir) const;
+
/**
* Set/Get and Clear the enabled languages.
*/