Add the INTERFACE_SYSTEM_INCLUDE_DIRECTORIES target property.

Unlike other target properties, this does not have a corresponding
non-INTERFACE variant.

This allows propagation of system attribute on include directories
from link dependents.
This commit is contained in:
Stephen Kelly
2013-07-02 14:30:10 +02:00
committed by Brad King
parent 1925cffa08
commit 9cf3547e1c
18 changed files with 216 additions and 15 deletions
+15 -4
View File
@@ -84,10 +84,21 @@ void cmTargetIncludeDirectoriesCommand
const std::vector<std::string> &content,
bool prepend, bool system)
{
if (system)
{
// Error.
}
cmTargetPropCommandBase::HandleInterfaceContent(tgt, content,
prepend, system);
if (system)
{
std::string joined;
std::string sep;
for(std::vector<std::string>::const_iterator it = content.begin();
it != content.end(); ++it)
{
joined += sep;
sep = ";";
joined += *it;
}
tgt->AppendProperty("INTERFACE_SYSTEM_INCLUDE_DIRECTORIES",
joined.c_str());
}
}