Skip to content

Commit bbb99fa

Browse files
comiusrules_java Copybara
authored andcommitted
rules_java: Rename CcInfo#transitive_native_libraries to _legacy_transitive_native_libraries
This is needed to convert CcInfo to Starlark without causing a major regression. Mark the field as legacy, becuase we'll need to eventually clean it up. PiperOrigin-RevId: 788808464 Change-Id: I86a21b4b16bd2953961b0f1e7bae2d4ac43e0712
1 parent d8246a4 commit bbb99fa

File tree

3 files changed

+18
-4
lines changed

3 files changed

+18
-4
lines changed

java/common/rules/impl/java_binary_impl.bzl

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -154,7 +154,10 @@ def basic_java_binary(
154154
if JavaInfo in dep:
155155
native_libs_depsets.append(dep[JavaInfo].transitive_native_libraries)
156156
if CcInfo in dep:
157-
native_libs_depsets.append(dep[CcInfo].transitive_native_libraries())
157+
if hasattr(dep[CcInfo], "_legacy_transitive_native_libraries"):
158+
native_libs_depsets.append(dep[CcInfo]._legacy_transitive_native_libraries)
159+
else:
160+
native_libs_depsets.append(dep[CcInfo].transitive_native_libraries())
158161
native_libs_dirs = collect_native_deps_dirs(depset(transitive = native_libs_depsets))
159162
if native_libs_dirs:
160163
prefix = "${JAVA_RUNFILES}/" + ctx.workspace_name + "/"

java/private/java_info.bzl

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -178,7 +178,8 @@ def merge(
178178
cc_info = semantics.minimize_cc_info(cc_common.merge_cc_infos(cc_infos = [p.cc_link_params_info for p in providers]))
179179
result.update(
180180
cc_link_params_info = cc_info,
181-
transitive_native_libraries = cc_info.transitive_native_libraries(),
181+
transitive_native_libraries =
182+
cc_info._legacy_transitive_native_libraries if hasattr(cc_info, "_legacy_transitive_native_libraries") else cc_info.transitive_native_libraries(),
182183
)
183184
else:
184185
result.update(
@@ -679,14 +680,22 @@ def _javainfo_init_base(
679680
cc_info = semantics.minimize_cc_info(cc_common.merge_cc_infos(cc_infos = transitive_cc_infos))
680681
result.update(
681682
cc_link_params_info = cc_info,
682-
transitive_native_libraries = cc_info.transitive_native_libraries(),
683+
transitive_native_libraries =
684+
cc_info._legacy_transitive_native_libraries if hasattr(cc_info, "_legacy_transitive_native_libraries") else cc_info.transitive_native_libraries(),
683685
)
684686
else:
687+
transitive_native_libraries = []
688+
if native_libraries:
689+
merged_cc_info = cc_common.merge_cc_infos(cc_infos = native_libraries)
690+
if hasattr(merged_cc_info, "_legacy_transitive_native_libraries"):
691+
transitive_native_libraries = [merged_cc_info._legacy_transitive_native_libraries]
692+
else:
693+
transitive_native_libraries = [merged_cc_info.transitive_native_libraries()]
685694
result.update(
686695
transitive_native_libraries = depset(
687696
order = "topological",
688697
transitive = [dep.transitive_native_libraries for dep in concatenated_deps.runtimedeps_exports_deps] +
689-
([cc_common.merge_cc_infos(cc_infos = native_libraries).transitive_native_libraries()] if native_libraries else []),
698+
transitive_native_libraries,
690699
),
691700
)
692701
return result, concatenated_deps

java/testutil.bzl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55
# TODO: consider eventually upstreaming to rules_cc
66

77
def _cc_info_transitive_native_libraries(cc_info):
8+
if hasattr(cc_info, "_legacy_transitive_native_libraries"):
9+
return cc_info._legacy_transitive_native_libraries
810
return cc_info.transitive_native_libraries()
911

1012
def _cc_library_to_link_static_library(library_to_link):

0 commit comments

Comments
 (0)