diff options
4 files changed, 10 insertions, 5 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/ideinfo/AndroidStudioInfoAspect.java b/src/main/java/com/google/devtools/build/lib/ideinfo/AndroidStudioInfoAspect.java index feddc68261..a7161f811a 100644 --- a/src/main/java/com/google/devtools/build/lib/ideinfo/AndroidStudioInfoAspect.java +++ b/src/main/java/com/google/devtools/build/lib/ideinfo/AndroidStudioInfoAspect.java @@ -341,7 +341,7 @@ public class AndroidStudioInfoAspect extends NativeAspectClass implements Config ruleContext.registerAction( makePackageManifestAction(ruleContext, packageManifest, - getJavaSourcefForPackageManifest(ruleContext))); + getJavaSourceForPackageManifest(ruleContext))); } JavaRuleIdeInfo javaRuleIdeInfo = makeJavaRuleIdeInfo( @@ -432,7 +432,7 @@ public class AndroidStudioInfoAspect extends NativeAspectClass implements Config @Nullable private static Artifact createPackageManifest(ConfiguredTarget base, RuleContext ruleContext) { - Collection<Artifact> sourceFiles = getJavaSourcefForPackageManifest(ruleContext); + Collection<Artifact> sourceFiles = getJavaSourceForPackageManifest(ruleContext); if (sourceFiles.isEmpty()) { return null; } @@ -646,6 +646,8 @@ public class AndroidStudioInfoAspect extends NativeAspectClass implements Config builder.addSource(makeArtifactLocation(sourceFile)); } + ideResolveArtifacts.addTransitive(cppCompilationContext.getDeclaredIncludeSrcs()); + builder.addAllRuleInclude(getIncludes(ruleContext)); builder.addAllRuleDefine(getDefines(ruleContext)); builder.addAllRuleCopt(getCopts(ruleContext)); @@ -768,7 +770,7 @@ public class AndroidStudioInfoAspect extends NativeAspectClass implements Config } } - private static Collection<Artifact> getJavaSourcefForPackageManifest(RuleContext ruleContext) { + private static Collection<Artifact> getJavaSourceForPackageManifest(RuleContext ruleContext) { Collection<Artifact> srcs = getSources(ruleContext); List<Artifact> javaSrcs = Lists.newArrayList(); for (Artifact src : srcs) { diff --git a/src/test/java/com/google/devtools/build/lib/ideinfo/AndroidStudioInfoAspectTest.java b/src/test/java/com/google/devtools/build/lib/ideinfo/AndroidStudioInfoAspectTest.java index 7000ed487f..998ec257b5 100644 --- a/src/test/java/com/google/devtools/build/lib/ideinfo/AndroidStudioInfoAspectTest.java +++ b/src/test/java/com/google/devtools/build/lib/ideinfo/AndroidStudioInfoAspectTest.java @@ -1141,7 +1141,7 @@ public class AndroidStudioInfoAspectTest extends AndroidStudioInfoAspectTestBase assertThat(ruleIdeInfo.getJavaRuleIdeInfo().getJarsList()).isEmpty(); - assertThat(getIdeResolveFiles()).isEmpty(); + assertThat(getIdeResolveFiles()).containsExactly("com/google/example/simple/simple.h"); } @Test diff --git a/src/test/java/com/google/devtools/build/lib/ideinfo/AndroidStudioInfoAspectTestBase.java b/src/test/java/com/google/devtools/build/lib/ideinfo/AndroidStudioInfoAspectTestBase.java index 16c2657515..0d3a5de6d4 100644 --- a/src/test/java/com/google/devtools/build/lib/ideinfo/AndroidStudioInfoAspectTestBase.java +++ b/src/test/java/com/google/devtools/build/lib/ideinfo/AndroidStudioInfoAspectTestBase.java @@ -252,6 +252,9 @@ abstract class AndroidStudioInfoAspectTestBase extends BuildViewTestCase { NestedSet<Artifact> artifacts = outputGroupProvider.getOutputGroup(outputGroup); for (Artifact artifact : artifacts) { + if (artifact.isSourceArtifact()) { + continue; + } assertWithMessage("Artifact %s has no generating action", artifact) .that(getGeneratingAction(artifact)) .isNotNull(); diff --git a/src/test/java/com/google/devtools/build/lib/ideinfo/intellij_info.bzl b/src/test/java/com/google/devtools/build/lib/ideinfo/intellij_info.bzl index c3a62043b1..d3f27d2a33 100644 --- a/src/test/java/com/google/devtools/build/lib/ideinfo/intellij_info.bzl +++ b/src/test/java/com/google/devtools/build/lib/ideinfo/intellij_info.bzl @@ -228,7 +228,7 @@ def build_c_rule_ide_info(target, ctx): transitive_define = cc_provider.defines, transitive_system_include_directory = cc_provider.system_include_directories, ) - ide_resolve_files = set() + ide_resolve_files = cc_provider.transitive_headers return (c_rule_ide_info, ide_resolve_files) def build_c_toolchain_ide_info(target, ctx): |