Libraries link order for INTERFACE IMPORTED targets
From: https://github.com/conan-io/conan/issues/1875
The issue is that when building a higher level of abstraction for packages, in which each package is an INTERFACE IMPORTED target (as they don't come from the same project), the following graph (=> means depends on) is built:
TargetA (INTERFACE IMPORTED) => TargetB (INTERFACE IMPORTED)
TargetA => LibA.a (item)
TargetB => LibB.a (item)
Then, the final relative order obtained is TargetA, TargetB, LibB.a, LibA.a
, producing a link error, instead of the expected one TargetA, TargetB, LibA.a, LibB.a
. Even if the former seems to make sense for the graph, the second one would be the expected one if considering that they are INTERFACE IMPORTED targets, and thus acting as proxies of the real libraries.