aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Rumou Duan <rduan@google.com>2016-12-06 17:29:04 +0000
committerGravatar Damien Martin-Guillerez <dmarting@google.com>2016-12-06 18:29:13 +0000
commit9ba1e9aca4722254db9bde918c4c297267ad2c71 (patch)
treea7ef303c2673b53fc65fca995359cc7355fb7042
parent4e33ac6326ce93ab1645b5caccb4582ddb6fe9a4 (diff)
Attach J2ObjcAspect to java_proto_library. This is needed for J2ObjcAspect to reach the dependent proto_library rules, whose sources will be used to generate J2ObjC protos.
-- PiperOrigin-RevId: 141187718 MOS_MIGRATED_REVID=141187718
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcAspect.java20
1 files changed, 11 insertions, 9 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcAspect.java b/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcAspect.java
index 8a22b77993..c4892f6784 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcAspect.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcAspect.java
@@ -143,8 +143,7 @@ public class J2ObjcAspect extends NativeAspectClass implements ConfiguredAspectF
.attributeAspect("runtime_deps", this)
.requireProviderSets(
ImmutableList.of(
- ImmutableSet.<Class<?>>of(
- JavaSourceInfoProvider.class, JavaCompilationArgsProvider.class),
+ ImmutableSet.<Class<?>>of(JavaCompilationArgsProvider.class),
ImmutableSet.<Class<?>>of(ProtoSourcesProvider.class)))
.requiresConfigurationFragments(
AppleConfiguration.class,
@@ -293,13 +292,16 @@ public class J2ObjcAspect extends NativeAspectClass implements ConfiguredAspectF
base.getProvider(JavaCompilationArgsProvider.class);
JavaSourceInfoProvider sourceInfoProvider = base.getProvider(JavaSourceInfoProvider.class);
JavaGenJarsProvider genJarProvider = base.getProvider(JavaGenJarsProvider.class);
- ImmutableSet<Artifact> javaInputFiles =
- ImmutableSet.<Artifact>builder()
- .addAll(sourceInfoProvider.getSourceFiles())
- .addAll(sourceInfoProvider.getSourceJars())
- .addAll(sourceInfoProvider.getSourceJarsForJarFiles())
- .build();
-
+ ImmutableSet<Artifact> javaInputFiles;
+ if (sourceInfoProvider == null) {
+ javaInputFiles = ImmutableSet.<Artifact>of();
+ } else {
+ javaInputFiles = ImmutableSet.<Artifact>builder()
+ .addAll(sourceInfoProvider.getSourceFiles())
+ .addAll(sourceInfoProvider.getSourceJars())
+ .addAll(sourceInfoProvider.getSourceJarsForJarFiles())
+ .build();
+ }
Optional<Artifact> genSrcJar;
boolean annotationProcessingEnabled =
ruleContext.getFragment(J2ObjcConfiguration.class).annotationProcessingEnabled();