cmTarget: Assign consistent content back to the property being evaluated.

Currently, 'consistent' means the same or not set. Soon though,
it will be possible to choose a minimum number from an interface
for example.
This commit is contained in:
Stephen Kelly 2013-10-22 19:12:51 +02:00
parent 816b4a8a18
commit 98777694b9
1 changed files with 12 additions and 3 deletions

View File

@ -4544,7 +4544,9 @@ PropertyType checkInterfacePropertyCompatibility(cmTarget *tgt,
{
if (ifaceIsSet)
{
if (!consistentProperty(propContent, ifacePropContent))
PropertyType consistent = consistentProperty(propContent,
ifacePropContent);
if (!consistent)
{
cmOStringStream e;
e << "Property " << p << " on target \""
@ -4557,6 +4559,7 @@ PropertyType checkInterfacePropertyCompatibility(cmTarget *tgt,
else
{
// Agree
propContent = consistent;
continue;
}
}
@ -4571,7 +4574,9 @@ PropertyType checkInterfacePropertyCompatibility(cmTarget *tgt,
propContent = impliedValue<PropertyType>(propContent);
if (ifaceIsSet)
{
if (!consistentProperty(propContent, ifacePropContent))
PropertyType consistent = consistentProperty(propContent,
ifacePropContent);
if (!consistent)
{
cmOStringStream e;
e << "Property " << p << " on target \""
@ -4585,6 +4590,7 @@ PropertyType checkInterfacePropertyCompatibility(cmTarget *tgt,
else
{
// Agree
propContent = consistent;
continue;
}
}
@ -4600,7 +4606,9 @@ PropertyType checkInterfacePropertyCompatibility(cmTarget *tgt,
{
if (propInitialized)
{
if (!consistentProperty(propContent, ifacePropContent))
PropertyType consistent = consistentProperty(propContent,
ifacePropContent);
if (!consistent)
{
cmOStringStream e;
e << "The INTERFACE_" << p << " property of \""
@ -4613,6 +4621,7 @@ PropertyType checkInterfacePropertyCompatibility(cmTarget *tgt,
else
{
// Agree.
propContent = consistent;
continue;
}
}