@@ -37,7 +37,7 @@ load("//third_party:jarjar.bzl", "jarjar_action")
37
37
def _is_absolute (path ):
38
38
return path .startswith ("/" ) or (len (path ) > 2 and path [1 ] == ":" )
39
39
40
- def _make_providers (ctx , providers , transitive_files = depset (order = "default" ), * additional_providers ):
40
+ def _make_providers (ctx , providers , runfiles_targets , transitive_files = depset (order = "default" ), * additional_providers ):
41
41
files = [ctx .outputs .jar ]
42
42
if providers .java .outputs .jdeps :
43
43
files .append (providers .java .outputs .jdeps )
@@ -48,13 +48,13 @@ def _make_providers(ctx, providers, transitive_files = depset(order = "default")
48
48
DefaultInfo (
49
49
files = depset (files ),
50
50
runfiles = ctx .runfiles (
51
- # explicitly include data files, otherwise they appear to be missing
52
51
files = ctx .files .data ,
53
52
transitive_files = transitive_files ,
54
- # continue to use collect_default until proper transitive data collecting is
55
- # implmented.
56
- collect_default = True ,
57
- ),
53
+ ).merge_all ([
54
+ d [DefaultInfo ].default_runfiles
55
+ for d in runfiles_targets
56
+ if DefaultInfo in d and d [DefaultInfo ].default_runfiles
57
+ ]),
58
58
),
59
59
] + list (additional_providers )
60
60
@@ -230,6 +230,7 @@ def kt_jvm_library_impl(ctx):
230
230
outputs = ctx .outputs ,
231
231
attr = ctx .attr ,
232
232
),
233
+ runfiles_targets = ctx .attr .deps + ctx .attr .exports ,
233
234
)
234
235
235
236
def kt_jvm_binary_impl (ctx ):
@@ -250,7 +251,8 @@ def kt_jvm_binary_impl(ctx):
250
251
return _make_providers (
251
252
ctx ,
252
253
providers ,
253
- depset (
254
+ runfiles_targets = ctx .attr .deps ,
255
+ transitive_files = depset (
254
256
order = "default" ,
255
257
transitive = [providers .java .transitive_runtime_jars ],
256
258
direct = ctx .files ._java_runtime ,
@@ -306,6 +308,7 @@ def kt_jvm_junit_test_impl(ctx):
306
308
return _make_providers (
307
309
ctx ,
308
310
providers ,
311
+ ctx .attr .deps ,
309
312
depset (
310
313
order = "default" ,
311
314
transitive = [runtime_jars , depset (coverage_runfiles ), depset (coverage_metadata )],
0 commit comments