diff options
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/android/AndroidCommon.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/android/AndroidCommon.java | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidCommon.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidCommon.java index c694ccef5d..6117d5814d 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidCommon.java +++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidCommon.java @@ -507,8 +507,12 @@ public class AndroidCommon { transitiveSourceJars = javaCommon.collectTransitiveSourceJars(srcJar); if (collectJavaCompilationArgs) { - this.javaCompilationArgs = collectJavaCompilationArgs( - ruleContext, exportDeps, asNeverLink, attributes.hasSourceFiles()); + boolean includeSrcjars = + ruleContext.getFragment(AndroidConfiguration.class).treatSrcjarsAsSrcsForStrictDeps(); + boolean hasSources = + attributes.hasSourceFiles() || (includeSrcjars && attributes.hasSourceJars()); + this.javaCompilationArgs = + collectJavaCompilationArgs(ruleContext, exportDeps, asNeverLink, hasSources); this.recursiveJavaCompilationArgs = collectJavaCompilationArgs( ruleContext, true, asNeverLink, /* hasSources */ true); } |