dep-usage: create edge only for those direct or transitive dependencies.

Review Request #3978 - Created June 6, 2016 and submitted

Peiyu Wang
nhoward_tw, stuhood, zundel

Discovered this while working on using dep-usage to clean up twitter internal
build files, when a source file belongs to more than one target, say :a and
:b both contain, not uncommon when globs especially rglobs is used.
:d depends on implicitly through :c, which further depends on
:a, in this case, only :a should be marked as undeclared dependency.
Marking :b as undeclared dependency can potentially introduce circular
dependency, in this example, say :b also depends on :c.

This review applies the smae check used by JvmDependencyCheck also in
JvmDependencyUsage. passed

Stu Hood
Peiyu Wang
Peiyu Wang
Review request changed

Status: Closed (submitted)

Change Summary:

Submitted as 5d6560393299780cdb38252c5e9803445166bd3f