List of labels; default is []

Dependencies for this target. Generally should only list rule targets. (Though some rules permit files to be listed directly in deps, this should be avoided when possible.)

Language-specific rules generally limit the listed targets to those with specific providers.

The precise semantics of what it means for a target to depend on another using deps are specific to the kind of rule, and the rule-specific documentation goes into more detail. For rules which process source code, deps generally specifies code dependencies used by the code in srcs.

Most often, a deps dependency is used to allow one module to use symbols defined in another module written in the same programming language and separately compiled. Cross-language dependencies are also permitted in many cases: For example, a java_library target may depend on C++ code in a cc_library target, by listing the latter in the deps attribute. See the definition of dependencies for more information.