java_binary_host { name: "jdwpgen", srcs: ["make/src/classes/build/tools/jdwpgen/*.java"], wrapper: "etc/jdwpgen.sh", manifest: "etc/manifest.txt", java_version: "1.8", } genrule { name: "jdwp_generated_headers", tools: ["jdwpgen"], cmd: "$(location jdwpgen) $(in) -include $(out)", srcs: ["make/data/jdwp/jdwp.spec"], out: ["JDWPCommands.h"], } cc_defaults { name: "upstream-jdwp-defaults", host_supported: true, device_supported: true, cflags: [ // Every supported android platform is little-endian. "-D_LITTLE_ENDIAN", "-Wall", "-Werror", "-Wno-unused-parameter", ], notice: "LICENSE", target: { darwin: { enabled: false, }, }, } cc_library_headers { name: "javavm_headers", export_include_dirs: [ "src/share/javavm/export", "src/solaris/javavm/export", ], host_supported: true, device_supported: true, } cc_library_headers { name: "libnpt_headers", export_include_dirs: [ "src/share/npt", "src/solaris/npt", ], defaults: ["upstream-jdwp-defaults"], } cc_library { name: "libnpt", srcs: [ "src/share/npt/*.c", "src/solaris/npt/*.c", ], header_libs: [ "javavm_headers", "libnpt_headers", ], defaults: ["upstream-jdwp-defaults"], } cc_library_headers { name: "libjdwp_headers", export_include_dirs: [ "src/share/back", "src/share/back/export", "src/solaris/back", ], generated_headers: ["jdwp_generated_headers"], export_generated_headers: ["jdwp_generated_headers"], defaults: ["upstream-jdwp-defaults"], } cc_library { name: "libjdwp", srcs: [ "src/share/back/*.c", "src/solaris/back/*.c", ], cflags: [ "-DLINUX", "-DJDWP_LOGGING", "-Wno-switch", "-Wno-logical-op-parentheses", "-Wno-logical-not-parentheses", "-Wno-sometimes-uninitialized", "-Wno-self-assign", "-Wno-unused-variable", "-Wno-unused-function", ], header_libs: [ "javavm_headers", "libjdwp_headers", "libnpt_headers", ], required: [ "libnpt", "libdt_socket", ], defaults: ["upstream-jdwp-defaults"], } cc_library { name: "libdt_socket", srcs: [ "src/share/transport/socket/*.c", "src/solaris/transport/socket/*.c", ], local_include_dirs: [ "src/share/transport/socket", "src/solaris/transport/socket", ], header_libs: [ "javavm_headers", "libjdwp_headers", "libnpt_headers", ], required: ["libnpt"], defaults: ["upstream-jdwp-defaults"], } genrule { name: "jdwp_generated_java", tools: ["jdwpgen"], cmd: "$(location jdwpgen) $(in) -jdi $(out)", srcs: ["make/data/jdwp/jdwp.spec"], out: ["JDWP.java"], } python_binary_host { name: "jdi_prop_gen", srcs: ["etc/jdigen.py"], main: "etc/jdigen.py", } genrule { name: "jdi_generated_properties", tools: ["jdi_prop_gen"], cmd: "$(location jdi_prop_gen) $(in) $(out)", out: ["jdi.java"], srcs: ["src/share/classes/com/sun/tools/jdi/resources/jdi.properties"], } // The classes needed to support JDI and debug remote processes. java_library_host { name: "jdi-support", srcs: [ // The JDI interface definition. "src/share/classes/com/sun/jdi/**/*.java", // The JDI interface implementation "src/share/classes/com/sun/tools/jdi/**/*.java", // The JDWP.java file that contains all the constants. ":jdwp_generated_java", // The properties class which holds information about the various connectors. ":jdi_generated_properties", ], exclude_srcs: [ // We don't support process attachment and lack some of the classes to even compile this file. "src/share/classes/com/sun/tools/jdi/ProcessAttachingConnector.java", ], services: ["etc/com.sun.jdi.connect.Connector"], javacflags: ["-g"], notice: "LICENSE", }