Skip to content
  • Brad King's avatar
    Tolerate cycles in shared library link interfaces (#12647) · 8e756d2b
    Brad King authored
    Since commit 183b9509 (Follow all dependencies of shared library private
    dependencies, 2011-12-14) we honor LINK_INTERFACE_LIBRARIES when
    following dependent shared libraries.  The link interface properties may
    form a cycle if set incorrectly by a project.  Furthermore, the property
    LINK_DEPENDENT_LIBRARIES may form a cycle if set incorrectly by hand
    (though CMake should never generate one).  In either case, do not follow
    the cycle forever when following the dependent shared library closure.
    We only need to add dependency edges to the constraint graph once.
    
    Add "LinkInterfaceLoop" test to cover this case.
    8e756d2b