From ec812a9a544bbd708a1d0b6041401bcaab6e5428 Mon Sep 17 00:00:00 2001 From: carmi Date: Sat, 5 Aug 2017 03:27:57 +0200 Subject: Turn off C++ provider propagation from java_proto_library, until J2ObjcAspect ignores them. RELNOTES: None PiperOrigin-RevId: 164335492 --- .../java/proto/BazelJavaProtoLibraryRule.java | 3 +- .../build/lib/rules/java/JavaConfiguration.java | 6 ++++ .../devtools/build/lib/rules/java/JavaOptions.java | 14 +++++++++ .../lib/rules/java/proto/JavaProtoLibrary.java | 35 +++++++++++++--------- 4 files changed, 43 insertions(+), 15 deletions(-) diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/java/proto/BazelJavaProtoLibraryRule.java b/src/main/java/com/google/devtools/build/lib/bazel/rules/java/proto/BazelJavaProtoLibraryRule.java index 62e70cd2ed..007b27e4ec 100644 --- a/src/main/java/com/google/devtools/build/lib/bazel/rules/java/proto/BazelJavaProtoLibraryRule.java +++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/java/proto/BazelJavaProtoLibraryRule.java @@ -29,6 +29,7 @@ import com.google.devtools.build.lib.packages.RuleClass; import com.google.devtools.build.lib.rules.java.JavaCompilationArgsProvider; import com.google.devtools.build.lib.rules.java.JavaConfiguration; import com.google.devtools.build.lib.rules.java.proto.JavaProtoLibrary; +import com.google.devtools.build.lib.rules.proto.ProtoConfiguration; /** Declaration of the {@code java_proto_library} rule. */ public class BazelJavaProtoLibraryRule implements RuleDefinition { @@ -48,7 +49,7 @@ public class BazelJavaProtoLibraryRule implements RuleDefinition { .build(); return builder - .requiresConfigurationFragments(JavaConfiguration.class) + .requiresConfigurationFragments(JavaConfiguration.class, ProtoConfiguration.class) /* The list of proto_library rules to generate Java code for. diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaConfiguration.java index 9b331f2f1c..faaf5d0e06 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaConfiguration.java @@ -163,6 +163,7 @@ public final class JavaConfiguration extends Fragment { private final Label javaToolchain; private final boolean explicitJavaTestDeps; private final boolean experimentalTestRunner; + private final boolean jplPropagateCcLinkParamsStore; // TODO(dmarting): remove once we have a proper solution for #2539 private final boolean legacyBazelJavaTest; @@ -194,6 +195,7 @@ public final class JavaConfiguration extends Fragment { this.enforceOneVersion = javaOptions.enforceOneVersion; this.explicitJavaTestDeps = javaOptions.explicitJavaTestDeps; this.experimentalTestRunner = javaOptions.experimentalTestRunner; + this.jplPropagateCcLinkParamsStore = javaOptions.jplPropagateCcLinkParamsStore; ImmutableList.Builder