Strip stray semicolons when evaluating generator expressions.

This commit is contained in:
Stephen Kelly 2013-02-18 11:24:41 +01:00
parent a0ac2c59fe
commit ec2c67bcf3
3 changed files with 8 additions and 3 deletions

View File

@ -153,7 +153,8 @@ cmCompiledGeneratorExpression::~cmCompiledGeneratorExpression()
} }
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
static std::string stripEmptyListElements(const std::string &input) std::string cmGeneratorExpression::StripEmptyListElements(
const std::string &input)
{ {
std::string result; std::string result;
@ -223,7 +224,7 @@ static std::string stripAllGeneratorExpressions(const std::string &input)
lastPos = pos; lastPos = pos;
} }
result += input.substr(lastPos); result += input.substr(lastPos);
return stripEmptyListElements(result); return cmGeneratorExpression::StripEmptyListElements(result);
} }
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
@ -284,7 +285,7 @@ static std::string stripExportInterface(const std::string &input,
} }
result += input.substr(lastPos); result += input.substr(lastPos);
return stripEmptyListElements(result); return cmGeneratorExpression::StripEmptyListElements(result);
} }
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------

View File

@ -66,6 +66,7 @@ public:
static bool IsValidTargetName(const std::string &input); static bool IsValidTargetName(const std::string &input);
static std::string StripEmptyListElements(const std::string &input);
private: private:
cmGeneratorExpression(const cmGeneratorExpression &); cmGeneratorExpression(const cmGeneratorExpression &);
void operator=(const cmGeneratorExpression &); void operator=(const cmGeneratorExpression &);

View File

@ -508,6 +508,9 @@ static const struct TargetPropertyNode : public cmGeneratorExpressionNode
} }
} }
linkedTargetsContent =
cmGeneratorExpression::StripEmptyListElements(linkedTargetsContent);
if (!prop) if (!prop)
{ {
if (target->IsImported()) if (target->IsImported())