Skip to content

Commit 30c601d

Browse files
cushonCopybara-Service
authored and
Copybara-Service
committed
Don't use @local_jdk for jni headers
instead, read the heads from the configured java runtime, so the values track with changes to --javabase. See bazelbuild#5594 PiperOrigin-RevId: 207894086
1 parent 3862a80 commit 30c601d

File tree

2 files changed

+27
-10
lines changed

2 files changed

+27
-10
lines changed

tools/jdk/BUILD

+11-10
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package(default_visibility = ["//visibility:public"])
33
load(
44
"//tools/jdk:default_java_toolchain.bzl",
55
"default_java_toolchain",
6+
"java_runtime_files",
67
"DEFAULT_JAVACOPTS",
78
)
89

@@ -32,29 +33,29 @@ alias(
3233
actual = "@bazel_tools//tools/jdk:current_java_runtime",
3334
)
3435

35-
alias(
36+
java_runtime_files(
3637
name = "jni_header",
37-
actual = "@local_jdk//:jni_header",
38+
srcs = ["include/jni.h"],
3839
)
3940

40-
alias(
41+
java_runtime_files(
4142
name = "jni_md_header-darwin",
42-
actual = "@local_jdk//:jni_md_header-darwin",
43+
srcs = ["include/darwin/jni_md.h"],
4344
)
4445

45-
alias(
46+
java_runtime_files(
4647
name = "jni_md_header-linux",
47-
actual = "@local_jdk//:jni_md_header-linux",
48+
srcs = ["include/linux/jni_md.h"],
4849
)
4950

50-
alias(
51+
java_runtime_files(
5152
name = "jni_md_header-windows",
52-
actual = "@local_jdk//:jni_md_header-windows",
53+
srcs = ["include/win32/jni_md.h"],
5354
)
5455

55-
alias(
56+
java_runtime_files(
5657
name = "jni_md_header-freebsd",
57-
actual = "@local_jdk//:jni_md_header-freebsd",
58+
srcs = ["include/freebsd/jni_md.h"],
5859
)
5960

6061
alias(

tools/jdk/default_java_toolchain.bzl

+16
Original file line numberDiff line numberDiff line change
@@ -86,3 +86,19 @@ def default_java_toolchain(name, **kwargs):
8686
name = name,
8787
**toolchain_args
8888
)
89+
90+
def java_runtime_files(name, srcs):
91+
"""Copies the given sources out of the current Java runtime."""
92+
93+
native.filegroup(
94+
name = name,
95+
srcs = srcs,
96+
)
97+
for src in srcs:
98+
native.genrule(
99+
name = "gen_%s" % src,
100+
srcs = ["//tools/jdk:current_java_runtime"],
101+
toolchains = ["//tools/jdk:current_java_runtime"],
102+
cmd = "cp $(JAVABASE)/%s $@" % src,
103+
outs = [src],
104+
)

0 commit comments

Comments
 (0)