@@ -83,7 +83,7 @@ def _generate_sources(ctx, toolchain, proto):
8383
8484 return outputs .values ()
8585
86- def _compile_sources (ctx , toolchain , proto , src_jars , deps , stamp_label ):
86+ def _compile_sources (ctx , toolchain , proto , src_jars , deps , scalacopts , stamp_label ):
8787 output = ctx .actions .declare_file (ctx .label .name + "_scalapb.jar" )
8888 manifest = ctx .actions .declare_file (ctx .label .name + "_MANIFEST.MF" )
8989 write_manifest_file (ctx .actions , manifest , None )
@@ -112,10 +112,10 @@ def _compile_sources(ctx, toolchain, proto, src_jars, deps, stamp_label):
112112 resources = proto .direct_sources ,
113113 resource_jars = [],
114114 labels = {},
115- in_scalacopts = [],
116115 print_compile_time = False ,
117116 expect_java_output = False ,
118117 scalac_jvm_flags = [],
118+ scalacopts = scalacopts ,
119119 scalac = toolchain .scalac ,
120120 dependency_info = legacy_unclear_dependency_info_for_protobuf_scrooge (ctx ),
121121 unused_dependency_checker_ignored_targets = [],
@@ -137,15 +137,19 @@ def _phase_proto_provider(ctx, p):
137137def _phase_deps (ctx , p ):
138138 return [d [ScalaProtoAspectInfo ].java_info for d in ctx .rule .attr .deps ]
139139
140+ def _phase_scalacopts (ctx , p ):
141+ return ctx .toolchains ["@io_bazel_rules_scala//scala:toolchain_type" ].scalacopts
142+
140143def _phase_generate_and_compile (ctx , p ):
141144 proto = p .proto_info
142145 deps = p .deps
146+ scalacopts = p .scalacopts
143147 stamp_label = p .stamp_label
144148 toolchain = ctx .toolchains ["@io_bazel_rules_scala//scala_proto:toolchain_type" ]
145149
146150 if proto .direct_sources and _code_should_be_generated (ctx , toolchain ):
147151 src_jars = _generate_sources (ctx , toolchain , proto )
148- java_info = _compile_sources (ctx , toolchain , proto , src_jars , deps , stamp_label )
152+ java_info = _compile_sources (ctx , toolchain , proto , src_jars , deps , scalacopts , stamp_label )
149153 return java_info
150154 else :
151155 # this target is only an aggregation target
@@ -184,6 +188,7 @@ def _scala_proto_aspect_impl(target, ctx):
184188 ("proto_info" , _phase_proto_provider ),
185189 ("deps" , _phase_deps ),
186190 ("stamp_label" , _phase_stamp_label ),
191+ ("scalacopts" , _phase_scalacopts ),
187192 ("generate_and_compile" , _phase_generate_and_compile ),
188193 ("aspect_provider" , _phase_aspect_provider ),
189194 ],
0 commit comments