java_library {
    name: "protolog-common",
    srcs: [
        "java/com/android/server/protolog/common/**/*.java",
    ],
    host_supported: true,
}

java_library {
    name: "services.core.wm.protologgroups",
    srcs: [
        "java/com/android/server/wm/ProtoLogGroup.java",
    ],
    static_libs: ["protolog-common"],
}

genrule {
    name: "services.core.protologsrc",
    srcs: [":services.core.wm.protologgroups", "java/**/*.java"],
    tools: ["protologtool"],
    cmd: "$(location protologtool) transform-protolog-calls " +
      "--protolog-class com.android.server.protolog.common.ProtoLog " +
      "--protolog-impl-class com.android.server.protolog.ProtoLogImpl " +
      "--protolog-cache-class 'com.android.server.protolog.ProtoLog$$Cache' " +
      "--loggroups-class com.android.server.wm.ProtoLogGroup " +
      "--loggroups-jar $(location :services.core.wm.protologgroups) " +
      "--output-srcjar $(out) " +
      "$(locations java/**/*.java)",
    out: ["services.core.protolog.srcjar"],
}

genrule {
    name: "generate-protolog.json",
    srcs: [":services.core.wm.protologgroups", "java/**/*.java"],
    tools: ["protologtool"],
    cmd: "$(location protologtool) generate-viewer-config " +
      "--protolog-class com.android.server.protolog.common.ProtoLog " +
      "--loggroups-class com.android.server.wm.ProtoLogGroup " +
      "--loggroups-jar $(location :services.core.wm.protologgroups) " +
      "--viewer-conf $(out) " +
      "$(locations java/**/*.java)",
    out: ["services.core.protolog.json"],
}

genrule {
    name: "checked-protolog.json",
    srcs: [
        ":generate-protolog.json",
        ":services.core.protolog.json",
    ],
    cmd: "cp $(location :generate-protolog.json) $(out) && " +
      "{ ! (diff $(out) $(location :services.core.protolog.json) | grep -q '^<') || " +
      "{ echo -e '\\n\\n################################################################\\n#\\n" +
      "#  ERROR: ProtoLog viewer config is stale.  To update it, run:\\n#\\n" +
      "#  cp $(location :generate-protolog.json) " +
      "$(location :services.core.protolog.json)\\n#\\n" +
      "################################################################\\n\\n' >&2 && false; } }",
    out: ["services.core.protolog.json"],
}

java_library_static {
    name: "services.core.unboosted",

    aidl: {
        include_dirs: [
            "frameworks/base/cmds/idmap2/idmap2d/aidl",
            "frameworks/native/aidl/binder",
            "frameworks/native/cmds/dumpstate/binder",
            "system/core/storaged/binder",
            "system/vold/binder",
            "system/gsid/aidl",
        ],
    },
    srcs: [
        ":services.core.protologsrc",
        ":dumpstate_aidl",
        ":idmap2_aidl",
        ":installd_aidl",
        ":storaged_aidl",
        ":vold_aidl",
        ":gsiservice_aidl",
        ":platform-compat-config",
        ":tethering-servicescore-srcs",
        "java/com/android/server/EventLogTags.logtags",
        "java/com/android/server/am/EventLogTags.logtags",
        "java/com/android/server/policy/EventLogTags.logtags",
    ],

    libs: [
        "services.net",
        "android.hardware.light-V2.0-java",
        "android.hardware.power-V1.0-java",
        "android.hardware.tv.cec-V1.0-java",
        "app-compat-annotations",
        "vintf-vibrator-java",
    ],

    required: [
        "gps_debug.conf",
        "protolog.conf.json.gz",
    ],

    static_libs: [
        "time_zone_distro",
        "time_zone_distro_installer",
        "android.hardware.authsecret-V1.0-java",
        "android.hardware.broadcastradio-V2.0-java",
        "android.hardware.health-V1.0-java",
        "android.hardware.health-V2.0-java",
        "android.hardware.weaver-V1.0-java",
        "android.hardware.biometrics.face-V1.0-java",
        "android.hardware.biometrics.fingerprint-V2.1-java",
        "android.hardware.oemlock-V1.0-java",
        "android.hardware.tetheroffload.control-V1.0-java",
        "android.hardware.configstore-V1.0-java",
        "android.hardware.contexthub-V1.0-java",
        "android.hidl.manager-V1.2-java",
        "dnsresolver_aidl_interface-V2-java",
        "netd_event_listener_interface-java",
    ],

    plugins: [
        "compat-changeid-annotation-processor",
    ],
}

java_genrule {
    name: "services.core.priorityboosted",
    srcs: [":services.core.unboosted"],
    tools: ["lockedregioncodeinjection"],
    cmd: "$(location lockedregioncodeinjection) " +
        "  --targets \"Lcom/android/server/am/ActivityManagerService;,Lcom/android/server/wm/WindowManagerGlobalLock;\" " +
        "  --pre \"com/android/server/am/ActivityManagerService.boostPriorityForLockedSection,com/android/server/wm/WindowManagerService.boostPriorityForLockedSection\" " +
        "  --post \"com/android/server/am/ActivityManagerService.resetPriorityAfterLockedSection,com/android/server/wm/WindowManagerService.resetPriorityAfterLockedSection\" " +
        "  -o $(out) " +
        "  -i $(in)",
    out: ["services.core.priorityboosted.jar"],
}

java_library {
    name: "services.core",
    static_libs: ["services.core.priorityboosted"],
}


prebuilt_etc {
    name: "gps_debug.conf",
    src: "java/com/android/server/location/gps_debug.conf",
}

genrule {
    name: "services.core.json.gz",
    srcs: [":checked-protolog.json"],
    out: ["services.core.protolog.json.gz"],
    cmd: "$(location minigzip) -c < $(in) > $(out)",
    tools: ["minigzip"],
}

prebuilt_etc {
    name: "protolog.conf.json.gz",
    src: ":services.core.json.gz",
}

// TODO: this should be removed after tethering migration done.
filegroup {
    name: "servicescore-tethering-src",
    srcs: [
        "java/com/android/server/connectivity/MockableSystemProperties.java",
    ],
}
