Introduce a cmLocalGenerator::ConvertToIncludeReference function

This provides a mechanism for the local generator to override how
header search paths are generated.
This commit is contained in:
Peter Collingbourne 2011-09-07 02:41:41 +01:00
parent 903d914b28
commit 5b114c9bee
2 changed files with 11 additions and 2 deletions

View File

@ -1184,6 +1184,13 @@ cmLocalGenerator::ConvertToOutputForExisting(RelativeRoot remote,
return this->ConvertToOutputForExistingCommon(remotePath, result); return this->ConvertToOutputForExistingCommon(remotePath, result);
} }
//----------------------------------------------------------------------------
std::string
cmLocalGenerator::ConvertToIncludeReference(std::string const& path)
{
return this->ConvertToOutputForExisting(path.c_str());
}
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
const char* cmLocalGenerator::GetIncludeFlags(const char* lang, const char* cmLocalGenerator::GetIncludeFlags(const char* lang,
bool forResponseFile) bool forResponseFile)
@ -1285,7 +1292,7 @@ const char* cmLocalGenerator::GetIncludeFlags(const char* lang,
} }
else else
{ {
includePath = this->ConvertToOutputForExisting(i->c_str()); includePath = this->ConvertToIncludeReference(*i);
} }
if(quotePaths && includePath.size() && includePath[0] != '\"') if(quotePaths && includePath.size() && includePath[0] != '\"')
{ {

View File

@ -179,7 +179,9 @@ public:
path and short path if spaces. */ path and short path if spaces. */
std::string ConvertToOutputForExisting(RelativeRoot remote, std::string ConvertToOutputForExisting(RelativeRoot remote,
const char* local = 0); const char* local = 0);
virtual std::string ConvertToIncludeReference(std::string const& path);
/** Called from command-line hook to clear dependencies. */ /** Called from command-line hook to clear dependencies. */
virtual void ClearDependencies(cmMakefile* /* mf */, virtual void ClearDependencies(cmMakefile* /* mf */,
bool /* verbose */) {} bool /* verbose */) {}