• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1java_binary_host {
2    name: "jdwpgen",
3    srcs: ["make/src/classes/build/tools/jdwpgen/*.java"],
4    wrapper: "etc/jdwpgen.sh",
5    manifest: "etc/manifest.txt",
6    java_version: "1.8",
7}
8
9genrule {
10    name: "jdwp_generated_headers",
11    tools: ["jdwpgen"],
12    cmd: "$(location jdwpgen) $(in) -include $(out)",
13    srcs: ["make/data/jdwp/jdwp.spec"],
14    out: ["JDWPCommands.h"],
15}
16
17cc_defaults {
18    name: "upstream-jdwp-defaults",
19    host_supported: true,
20    device_supported: true,
21    cflags: [
22        // Every supported android platform is little-endian.
23        "-D_LITTLE_ENDIAN",
24        "-Wall",
25        "-Werror",
26        "-Wno-unused-parameter",
27    ],
28    notice: "LICENSE",
29    target: {
30        darwin: {
31            enabled: false,
32        },
33    },
34}
35
36cc_library_headers {
37    name: "javavm_headers",
38    export_include_dirs: [
39        "src/share/javavm/export",
40        "src/solaris/javavm/export",
41    ],
42    host_supported: true,
43    device_supported: true,
44}
45
46cc_library_headers {
47    name: "libnpt_headers",
48    export_include_dirs: [
49        "src/share/npt",
50        "src/solaris/npt",
51    ],
52    defaults: ["upstream-jdwp-defaults"],
53}
54
55cc_library {
56    name: "libnpt",
57    srcs: [
58        "src/share/npt/*.c",
59        "src/solaris/npt/*.c",
60    ],
61    header_libs: [
62        "javavm_headers",
63        "libnpt_headers",
64    ],
65    defaults: ["upstream-jdwp-defaults"],
66}
67
68cc_library_headers {
69    name: "libjdwp_headers",
70    export_include_dirs: [
71        "src/share/back",
72        "src/share/back/export",
73        "src/solaris/back",
74    ],
75    generated_headers: ["jdwp_generated_headers"],
76    export_generated_headers: ["jdwp_generated_headers"],
77    defaults: ["upstream-jdwp-defaults"],
78}
79
80cc_library {
81    name: "libjdwp",
82    srcs: [
83        "src/share/back/*.c",
84        "src/solaris/back/*.c",
85    ],
86    cflags: [
87        "-DLINUX",
88        "-DJDWP_LOGGING",
89        "-Wno-switch",
90        "-Wno-logical-op-parentheses",
91        "-Wno-logical-not-parentheses",
92        "-Wno-sometimes-uninitialized",
93        "-Wno-self-assign",
94        "-Wno-unused-variable",
95        "-Wno-unused-function",
96    ],
97    header_libs: [
98        "javavm_headers",
99        "libjdwp_headers",
100        "libnpt_headers",
101    ],
102    required: [
103        "libnpt",
104        "libdt_socket",
105    ],
106    defaults: ["upstream-jdwp-defaults"],
107}
108
109cc_library {
110    name: "libdt_socket",
111    srcs: [
112        "src/share/transport/socket/*.c",
113        "src/solaris/transport/socket/*.c",
114    ],
115    local_include_dirs: [
116        "src/share/transport/socket",
117        "src/solaris/transport/socket",
118    ],
119    header_libs: [
120        "javavm_headers",
121        "libjdwp_headers",
122        "libnpt_headers",
123    ],
124    required: ["libnpt"],
125    defaults: ["upstream-jdwp-defaults"],
126}
127
128genrule {
129    name: "jdwp_generated_java",
130    tools: ["jdwpgen"],
131    cmd: "$(location jdwpgen) $(in) -jdi $(out)",
132    srcs: ["make/data/jdwp/jdwp.spec"],
133    out: ["JDWP.java"],
134}
135
136python_binary_host {
137  name: "jdi_prop_gen",
138  srcs: ["etc/jdigen.py"],
139  main: "etc/jdigen.py",
140}
141
142genrule {
143  name: "jdi_generated_properties",
144  tools: ["jdi_prop_gen"],
145  cmd: "$(location jdi_prop_gen) $(in) $(out)",
146  out: ["jdi.java"],
147  srcs: ["src/share/classes/com/sun/tools/jdi/resources/jdi.properties"],
148}
149
150// The classes needed to support JDI and debug remote processes.
151java_library_host {
152  name: "jdi-support",
153  srcs: [
154    // The JDI interface definition.
155    "src/share/classes/com/sun/jdi/**/*.java",
156    // The JDI interface implementation
157    "src/share/classes/com/sun/tools/jdi/**/*.java",
158    // The JDWP.java file that contains all the constants.
159    ":jdwp_generated_java",
160    // The properties class which holds information about the various connectors.
161    ":jdi_generated_properties",
162  ],
163  exclude_srcs: [
164    // We don't support process attachment and lack some of the classes to even compile this file.
165    "src/share/classes/com/sun/tools/jdi/ProcessAttachingConnector.java",
166  ],
167  services: ["etc/com.sun.jdi.connect.Connector"],
168  javacflags: ["-g"],
169  notice: "LICENSE",
170}