5771f81d91
Replace calls to GetLinkInformation with calls to a method to get only the target closure, not the link languages etc. The replaced calls are used while evaluating generator expressions only. This makes transitive generator expression evaluation independent from the languages of a target. In a follow-up topic, it will be possible to make the languages depend on generator expression evaluation, via evaluation of the SOURCES and INTERFACE_SOURCES target properties. Because the order of entries is not the same as the final link line, the order of debug output is different in the RunCMake.CompatibleInterface test, because the BOOL_PROP7 target property is evaluated first. Adjust the test to account for that new order.
102 lines
3.4 KiB
Plaintext
102 lines
3.4 KiB
Plaintext
CMake Debug Log:
|
|
Boolean compatibility of property "BOOL_PROP7" for target
|
|
"CompatibleInterface" \(result: "FALSE"\):
|
|
|
|
\* Target "CompatibleInterface" property is implied by use.
|
|
\* Target "iface1" property value "FALSE" \(Agree\)
|
|
+
|
|
CMake Debug Log:
|
|
Boolean compatibility of property "BOOL_PROP1" for target
|
|
"CompatibleInterface" \(result: "TRUE"\):
|
|
|
|
\* Target "CompatibleInterface" property not set.
|
|
\* Target "iface1" property value "TRUE" \(Interface set\)
|
|
+
|
|
CMake Debug Log:
|
|
Boolean compatibility of property "BOOL_PROP2" for target
|
|
"CompatibleInterface" \(result: "TRUE"\):
|
|
|
|
\* Target "CompatibleInterface" has property content "TRUE"
|
|
\* Target "iface1" property value "TRUE" \(Agree\)
|
|
+
|
|
CMake Debug Log:
|
|
Boolean compatibility of property "BOOL_PROP3" for target
|
|
"CompatibleInterface" \(result: "TRUE"\):
|
|
|
|
\* Target "CompatibleInterface" has property content "TRUE"
|
|
+
|
|
CMake Debug Log:
|
|
Boolean compatibility of property "BOOL_PROP4" for target
|
|
"CompatibleInterface" \(result: "FALSE"\):
|
|
|
|
\* 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:
|
|
Boolean compatibility of property "BOOL_PROP6" for target
|
|
"CompatibleInterface" \(result: "FALSE"\):
|
|
|
|
\* Target "CompatibleInterface" property not set.
|
|
\* Target "iface1" property value "FALSE" \(Interface set\)
|
|
\* Target "iface2" property value "FALSE" \(Agree\)
|
|
+
|
|
CMake Debug Log:
|
|
String compatibility of property "STRING_PROP1" for target
|
|
"CompatibleInterface" \(result: "prop1"\):
|
|
|
|
\* Target "CompatibleInterface" property not set.
|
|
\* Target "iface1" property value "prop1" \(Interface set\)
|
|
+
|
|
CMake Debug Log:
|
|
String compatibility of property "STRING_PROP2" for target
|
|
"CompatibleInterface" \(result: "prop2"\):
|
|
|
|
\* Target "CompatibleInterface" has property content "prop2"
|
|
\* Target "iface1" property value "prop2" \(Agree\)
|
|
+
|
|
CMake Debug Log:
|
|
String compatibility of property "STRING_PROP3" for target
|
|
"CompatibleInterface" \(result: "prop3"\):
|
|
|
|
\* Target "CompatibleInterface" has property content "prop3"
|
|
+
|
|
CMake Debug Log:
|
|
String compatibility of property "STRING_PROP4" for target
|
|
"CompatibleInterface" \(result: "\(unset\)"\):
|
|
|
|
\* Target "CompatibleInterface" property not set.
|
|
+
|
|
CMake Debug Log:
|
|
Numeric minimum compatibility of property "NUMBER_MIN_PROP1" for target
|
|
"CompatibleInterface" \(result: "50"\):
|
|
|
|
\* Target "CompatibleInterface" has property content "50"
|
|
\* Target "iface1" property value "100" \(Ignored\)
|
|
+
|
|
CMake Debug Log:
|
|
Numeric minimum compatibility of property "NUMBER_MIN_PROP2" for target
|
|
"CompatibleInterface" \(result: "200"\):
|
|
|
|
\* Target "CompatibleInterface" has property content "250"
|
|
\* Target "iface1" property value "200" \(Dominant\)
|
|
+
|
|
CMake Debug Log:
|
|
Numeric maximum compatibility of property "NUMBER_MAX_PROP1" for target
|
|
"CompatibleInterface" \(result: "100"\):
|
|
|
|
\* Target "CompatibleInterface" has property content "50"
|
|
\* Target "iface1" property value "100" \(Dominant\)
|
|
+
|
|
CMake Debug Log:
|
|
Numeric maximum compatibility of property "NUMBER_MAX_PROP2" for target
|
|
"CompatibleInterface" \(result: "250"\):
|
|
|
|
\* Target "CompatibleInterface" has property content "250"
|
|
\* Target "iface1" property value "200" \(Ignored\)
|