summaryrefslogtreecommitdiffstats
path: root/Source/cmGlobalXCodeGenerator.h
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2013-10-24 17:04:24 (GMT)
committerBrad King <brad.king@kitware.com>2013-10-28 12:36:14 (GMT)
commit3e04946f7b69418f6b222875ad18fed3438e0fa1 (patch)
tree7b2107ea4b681e67d27b7a881e9572864324ad69 /Source/cmGlobalXCodeGenerator.h
parent6007f7ca01b84ee70ffe49ae5a8bb41763116024 (diff)
downloadCMake-3e04946f7b69418f6b222875ad18fed3438e0fa1.zip
CMake-3e04946f7b69418f6b222875ad18fed3438e0fa1.tar.gz
CMake-3e04946f7b69418f6b222875ad18fed3438e0fa1.tar.bz2
Require CMAKE_<LANG>_COMPILER to be found as a full path
All generators now support detection of the full path to the compiler, so require it to be so. This will allow CMake<LANG>Information.cmake and other logic to assume the full path to the compiler tool is available. The Makefile generators already rejected CMAKE_<LANG>_COMPILER values that did not name an existing compiler. Extend this error message to all generators, make it occur as early as possible, and improve the message with advice about how to set the compiler. If the full path to the compiler is not known, finish enabling languages with a fatal error so configuration does not continue. For now, allow the RC language compiler to not be a full path. Later we will need to detect the full path to "rc" under the VS IDE. Add a RunCMake.CompilerNotFound test to cover failure cases. Fix the RunCMake.CompilerChange test EmptyCompiler case to work when configuration does not continue past enable_language.
Diffstat (limited to 'Source/cmGlobalXCodeGenerator.h')
-rw-r--r--Source/cmGlobalXCodeGenerator.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/Source/cmGlobalXCodeGenerator.h b/Source/cmGlobalXCodeGenerator.h
index c053943..97072b2 100644
--- a/Source/cmGlobalXCodeGenerator.h
+++ b/Source/cmGlobalXCodeGenerator.h
@@ -210,6 +210,7 @@ protected:
std::vector<cmXCodeObject*> XCodeObjects;
cmXCodeObject* RootObject;
private:
+ void PrintCompilerAdvice(std::ostream&, std::string, const char*) {}
void ComputeTargetObjects(cmGeneratorTarget* gt) const;
std::string GetObjectsNormalDirectory(