Преглед изворни кода

cmTarget: Fix reporting interface-set properties which are FALSE.

Stephen Kelly пре 12 година
родитељ
комит
c67e1a6aac

+ 1 - 1
Source/cmTarget.cxx

@@ -4508,7 +4508,7 @@ PropertyType checkInterfacePropertyCompatibility(cmTarget const* tgt,
                               ("INTERFACE_" + p).c_str(), 0);
 
     std::string reportEntry;
-    if (ifacePropContent)
+    if (ifaceIsSet)
       {
       reportEntry += " * Target \"";
       reportEntry += li->Target->GetName();

+ 7 - 0
Tests/RunCMake/CompatibleInterface/DebugProperties-stderr.txt

@@ -24,6 +24,13 @@ CMake Debug Log:
 
    \* Target "CompatibleInterface" property not set.
 +
+CMake Debug Log:
+  Boolean compatibility of property "BOOL_PROP5" for target
+  "CompatibleInterface" \(result: "FALSE"\):
+
+   \* Target "CompatibleInterface" property not set.
+   \* Target "iface1" property value "FALSE" \(Interface set\)
++
 CMake Debug Log:
   String compatibility of property "STRING_PROP1" for target
   "CompatibleInterface" \(result: "prop1"\):

+ 3 - 1
Tests/RunCMake/CompatibleInterface/DebugProperties.cmake

@@ -13,6 +13,7 @@ set_property(TARGET iface1 APPEND PROPERTY
     BOOL_PROP2
     BOOL_PROP3
     BOOL_PROP4
+    BOOL_PROP5
 )
 set_property(TARGET iface1 APPEND PROPERTY
   COMPATIBLE_INTERFACE_STRING
@@ -32,7 +33,7 @@ set_property(TARGET iface1 APPEND PROPERTY
 )
 
 set(CMAKE_DEBUG_TARGET_PROPERTIES
-  BOOL_PROP1 BOOL_PROP2 BOOL_PROP3 BOOL_PROP4
+  BOOL_PROP1 BOOL_PROP2 BOOL_PROP3 BOOL_PROP4 BOOL_PROP5
   STRING_PROP1 STRING_PROP2 STRING_PROP3
   NUMBER_MIN_PROP1 NUMBER_MIN_PROP2
   NUMBER_MAX_PROP1 NUMBER_MAX_PROP2
@@ -40,6 +41,7 @@ set(CMAKE_DEBUG_TARGET_PROPERTIES
 
 set_property(TARGET iface1 PROPERTY INTERFACE_BOOL_PROP1 ON)
 set_property(TARGET iface1 PROPERTY INTERFACE_BOOL_PROP2 ON)
+set_property(TARGET iface1 PROPERTY INTERFACE_BOOL_PROP5 OFF)
 set_property(TARGET iface1 PROPERTY INTERFACE_STRING_PROP1 prop1)
 set_property(TARGET iface1 PROPERTY INTERFACE_STRING_PROP2 prop2)
 set_property(TARGET iface1 PROPERTY INTERFACE_NUMBER_MIN_PROP1 100)