Alex Light | 1cad527 | 2017-09-27 16:36:13 -0700 | [diff] [blame] | 1 | java_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", |
Alex Light | 1cad527 | 2017-09-27 16:36:13 -0700 | [diff] [blame] | 7 | } |
| 8 | |
| 9 | genrule { |
| 10 | name: "jdwp_generated_headers", |
| 11 | tools: ["jdwpgen"], |
Alex Light | 9ffbc91 | 2017-10-31 11:10:13 -0700 | [diff] [blame] | 12 | cmd: "$(location jdwpgen) $(in) -include $(out)", |
Alex Light | 1cad527 | 2017-09-27 16:36:13 -0700 | [diff] [blame] | 13 | srcs: ["make/data/jdwp/jdwp.spec"], |
| 14 | out: ["JDWPCommands.h"], |
| 15 | } |
| 16 | |
| 17 | cc_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", |
Alex Light | 19ae8d9 | 2017-11-03 21:46:30 +0000 | [diff] [blame] | 29 | target: { |
| 30 | darwin: { |
| 31 | enabled: false, |
| 32 | }, |
| 33 | }, |
Alex Light | 1cad527 | 2017-09-27 16:36:13 -0700 | [diff] [blame] | 34 | } |
| 35 | |
| 36 | cc_library_headers { |
| 37 | name: "javavm_headers", |
| 38 | export_include_dirs: [ |
| 39 | "src/share/javavm/export", |
Alex Light | 19ae8d9 | 2017-11-03 21:46:30 +0000 | [diff] [blame] | 40 | "src/solaris/javavm/export", |
Alex Light | 1cad527 | 2017-09-27 16:36:13 -0700 | [diff] [blame] | 41 | ], |
| 42 | host_supported: true, |
| 43 | device_supported: true, |
Alex Light | 1cad527 | 2017-09-27 16:36:13 -0700 | [diff] [blame] | 44 | } |
| 45 | |
| 46 | cc_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 | |
| 55 | cc_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 | |
| 68 | cc_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 | |
| 80 | cc_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 | |
| 109 | cc_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 | } |
Alex Light | ff9d11e | 2019-02-20 18:02:09 -0800 | [diff] [blame^] | 127 | |
| 128 | genrule { |
| 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 | |
| 136 | python_binary_host { |
| 137 | name: "jdi_prop_gen", |
| 138 | srcs: ["etc/jdigen.py"], |
| 139 | main: "etc/jdigen.py", |
| 140 | } |
| 141 | |
| 142 | genrule { |
| 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. |
| 151 | java_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 | } |