summaryrefslogtreecommitdiffstats
path: root/Source/cmGlobalGenerator.h
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2017-10-03 18:53:34 (GMT)
committerBrad King <brad.king@kitware.com>2017-10-19 14:20:08 (GMT)
commit314613d1afd069dd896aa0d5112dfbf2b82af3c3 (patch)
treed6de6878803459df63b60c86e42c5a1faa6c8fc2 /Source/cmGlobalGenerator.h
parent358ceee5d84723f60c2db5cdff52445d478d6a42 (diff)
downloadCMake-314613d1afd069dd896aa0d5112dfbf2b82af3c3.zip
CMake-314613d1afd069dd896aa0d5112dfbf2b82af3c3.tar.gz
CMake-314613d1afd069dd896aa0d5112dfbf2b82af3c3.tar.bz2
Add infrastructure for generators to select a build tool instance
Add cache entry `CMAKE_GENERATOR_INSTANCE` to hold the instance location persistently across re-runs of CMake in a given build tree. For now we reject the option by default if explicitly set. It will be implemented on a per-generator basis. Pass the setting into try_compile project generation. Add a RunCMake.GeneratorInstance test to cover basic use cases for the option. Verify that `CMAKE_GENERATOR_INSTANCE` is empty by default, and that it is rejected when the generator does not support a user setting. Issue: #17268
Diffstat (limited to 'Source/cmGlobalGenerator.h')
-rw-r--r--Source/cmGlobalGenerator.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/Source/cmGlobalGenerator.h b/Source/cmGlobalGenerator.h
index 04e9dc1..abbc001 100644
--- a/Source/cmGlobalGenerator.h
+++ b/Source/cmGlobalGenerator.h
@@ -70,6 +70,9 @@ public:
/** Tell the generator about the target system. */
virtual bool SetSystemName(std::string const&, cmMakefile*) { return true; }
+ /** Set the generator-specific instance. Returns true if supported. */
+ virtual bool SetGeneratorInstance(std::string const& i, cmMakefile* mf);
+
/** Set the generator-specific platform name. Returns true if platform
is supported and false otherwise. */
virtual bool SetGeneratorPlatform(std::string const& p, cmMakefile* mf);