summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2013-01-23 20:11:04 (GMT)
committerCMake Topic Stage <kwrobot@kitware.com>2013-01-23 20:11:04 (GMT)
commit95f88fd2a186270b49d58ed0064e0790953f9bc9 (patch)
tree16b1da72ac75955964eacec715c3aa0d89fad73d /Source
parent8b4a2e02236f1535025806a7fbc139b15a17522f (diff)
parent24dcf0c0072d6e0ca5a1203a54b574d1db9e5a7d (diff)
downloadCMake-95f88fd2a186270b49d58ed0064e0790953f9bc9.zip
CMake-95f88fd2a186270b49d58ed0064e0790953f9bc9.tar.gz
CMake-95f88fd2a186270b49d58ed0064e0790953f9bc9.tar.bz2
Merge topic 'fix-target_include_directories-genex'
24dcf0c Make sure generator expressions can be used with target_include_directories.
Diffstat (limited to 'Source')
-rw-r--r--Source/cmTargetPropCommandBase.cxx12
1 files changed, 12 insertions, 0 deletions
diff --git a/Source/cmTargetPropCommandBase.cxx b/Source/cmTargetPropCommandBase.cxx
index 69aaf17..7f15dcb 100644
--- a/Source/cmTargetPropCommandBase.cxx
+++ b/Source/cmTargetPropCommandBase.cxx
@@ -66,6 +66,14 @@ bool cmTargetPropCommandBase
}
//----------------------------------------------------------------------------
+static bool isGeneratorExpression(const std::string &lib)
+{
+ const std::string::size_type openpos = lib.find("$<");
+ return (openpos != std::string::npos)
+ && (lib.find(">", openpos) != std::string::npos);
+}
+
+//----------------------------------------------------------------------------
bool cmTargetPropCommandBase
::ProcessContentArgs(std::vector<std::string> const& args,
unsigned int &argIndex, bool prepend)
@@ -105,6 +113,10 @@ bool cmTargetPropCommandBase
content += sep + "$<TARGET_PROPERTY:" + args[i]
+ ",INTERFACE_" + this->Property + ">";
}
+ else if(isGeneratorExpression(args[i]))
+ {
+ content += sep + args[i];
+ }
else if (!this->HandleNonTargetArg(content, sep, args[i], args[0]))
{
return false;