Repository navigation
Expand file tree
/
Copy pathmock_java_toolchain.bzl
More file actions
72 lines (69 loc) · 2.18 KB
/
Copy pathmock_java_toolchain.bzl
File metadata and controls
72 lines (69 loc) · 2.18 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
"""Fake java toolchains for testing"""
load("//java/common:java_semantics.bzl", "semantics")
load("//java/toolchains:java_runtime.bzl", _java_runtime_rule = "java_runtime")
load("//java/toolchains:java_toolchain.bzl", "java_toolchain")
# buildifier: disable=function-docstring
def mock_java_toolchain(
*,
name,
singlejar = "singlejar",
javabuilder = "JavaBuilder_deploy.jar",
header_compiler = "turbine_canary_deploy.jar",
header_compiler_direct = "turbine_direct",
ijar = "ijar",
genclass = "genclass",
java_runtime = None,
oneversion = None,
oneversion_allowlist = None,
oneversion_allowlist_for_tests = None,
tags = None, # for util.helper_target
**kwargs):
if not java_runtime:
java_runtime = name + "_runtime"
_java_runtime_rule(name = java_runtime)
one_version_args = {
"oneversion": oneversion,
"oneversion_allowlist": oneversion_allowlist,
"oneversion_allowlist_for_tests": oneversion_allowlist_for_tests,
} if semantics.java_toolchain_supports_one_version else {}
java_toolchain(
name = name + "_java",
javabuilder = javabuilder,
singlejar = singlejar,
header_compiler = header_compiler,
header_compiler_direct = header_compiler_direct,
ijar = ijar,
java_runtime = java_runtime,
genclass = genclass,
tags = tags,
**(kwargs | one_version_args)
)
native.toolchain(
name = name,
toolchain = name + "_java",
toolchain_type = semantics.JAVA_TOOLCHAIN_TYPE,
tags = tags,
)
# buildifier: disable=function-docstring
def mock_java_runtime_toolchain(
*,
name,
srcs = [],
java_home = None,
java = None,
version = None,
**kwargs):
_java_runtime_rule(
name = name + "_runtime",
srcs = srcs,
java_home = java_home,
java = java,
version = version,
**kwargs
)
native.toolchain(
name = name,
toolchain = name + "_runtime",
toolchain_type = semantics.JAVA_RUNTIME_TOOLCHAIN_TYPE,
**kwargs
)