summaryrefslogtreecommitdiff
path: root/Source
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2014-02-09 23:44:21 +0100
committerStephen Kelly <steveire@gmail.com>2014-02-09 23:44:21 +0100
commit311c0b9897bd1128eae3ba1af2eaa5dd41025d91 (patch)
tree77853d34a2e9cc713076cab2c09f2bd54422c529 /Source
parent1cc3e9f2e73b96370257b55f9c96586a898fe9a4 (diff)
downloadcmake-311c0b9897bd1128eae3ba1af2eaa5dd41025d91.tar.gz
Eclipse: Skip generator expressions in COMPILE_DEFINITIONS (#14722)
This is a hot-fix for the bug. It seems like a good idea to generally reform the generator to care about targets instead of directories, but this patch at least makes the reported error go away.
Diffstat (limited to 'Source')
-rw-r--r--Source/cmExtraEclipseCDT4Generator.cxx7
1 files changed, 6 insertions, 1 deletions
diff --git a/Source/cmExtraEclipseCDT4Generator.cxx b/Source/cmExtraEclipseCDT4Generator.cxx
index 33e76cd37d..74ba9a6b87 100644
--- a/Source/cmExtraEclipseCDT4Generator.cxx
+++ b/Source/cmExtraEclipseCDT4Generator.cxx
@@ -841,11 +841,16 @@ void cmExtraEclipseCDT4Generator::CreateCProjectFile() const
{
// Expand the list.
std::vector<std::string> defs;
- cmSystemTools::ExpandListArgument(cdefs, defs);
+ cmGeneratorExpression::Split(cdefs, defs);
for(std::vector<std::string>::const_iterator di = defs.begin();
di != defs.end(); ++di)
{
+ if (cmGeneratorExpression::Find(*di) != std::string::npos)
+ {
+ continue;
+ }
+
std::string::size_type equals = di->find('=', 0);
std::string::size_type enddef = di->length();