filegroup {
    name: "services-main-sources",
    srcs: ["java/**/*.java"],
    path: "java",
    visibility: ["//visibility:private"],
}

filegroup {
    name: "services-all-sources",
    srcs: [
        ":services.core-sources",
        ":services.core-sources-am-wm",
        ":services.accessibility-sources",
        ":services.appprediction-sources",
        ":services.appwidget-sources",
        ":services.autofill-sources",
        ":services.backup-sources",
        ":backuplib-sources",
        ":services.companion-sources",
        ":services.contentcapture-sources",
        ":services.contentsuggestions-sources",
        ":services.coverage-sources",
        ":services.devicepolicy-sources",
        ":services.midi-sources",
        ":services.musicsearch-sources",
        ":services.net-sources",
        ":services.print-sources",
        ":services.profcollect-sources",
        ":services.restrictions-sources",
        ":services.searchui-sources",
        ":services.speech-sources",
        ":services.startop.iorap-sources",
        ":services.systemcaptions-sources",
        ":services.translation-sources",
        ":services.usage-sources",
        ":services.usb-sources",
        ":services.voiceinteraction-sources",
        ":services.wifi-sources",
        ":service-permission-sources",
        ":service-statsd-sources",
    ],
    visibility: ["//visibility:private"],
}

// merge all required services into one jar
// ============================================================
java_library {
    name: "services",
    installable: true,

    dex_preopt: {
        app_image: true,
        profile: "art-profile",
    },

    srcs: [":services-main-sources"],

    // The convention is to name each service module 'services.$(module_name)'
    static_libs: [
        "services.core",
        "services.accessibility",
        "services.appprediction",
        "services.appwidget",
        "services.autofill",
        "services.backup",
        "services.companion",
        "services.contentcapture",
        "services.contentsuggestions",
        "services.coverage",
        "services.devicepolicy",
        "services.midi",
        "services.musicsearch",
        "services.net",
        "services.people",
        "services.print",
        "services.profcollect",
        "services.restrictions",
        "services.searchui",
        "services.speech",
        "services.startop",
        "services.systemcaptions",
        "services.translation",
        "services.usage",
        "services.usb",
        "services.voiceinteraction",
        "services.wifi",
        "service-blobstore",
        "service-jobscheduler",
        "android.hidl.base-V1.0-java",
    ],

    libs: [
        "android.hidl.manager-V1.0-java",
        "framework-tethering.stubs.module_lib",
    ],

    // Uncomment to enable output of certain warnings (deprecated, unchecked)
    //javacflags: ["-Xlint"],
}

// native library
// =============================================================

cc_library_shared {
    name: "libandroid_servers",
    defaults: ["libservices.core-libs"],
    whole_static_libs: ["libservices.core"],
}

platform_compat_config {
    name: "services-platform-compat-config",
    src: ":services",
}

filegroup {
    name: "art-profile",
    srcs: ["art-profile"],
}

// API stub
// =============================================================

droidstubs {
    name: "services-stubs.sources",
    srcs: [":services-all-sources"],
    installable: false,
    args: " --show-annotation android.annotation.SystemApi\\(client=android.annotation.SystemApi.Client.SYSTEM_SERVER\\)" +
        " --hide-annotation android.annotation.Hide" +
        " --hide InternalClasses" + // com.android.* classes are okay in this interface
        // TODO: remove the --hide options below
        " --hide-package com.google.android.startop.iorap" +
        " --hide DeprecationMismatch" +
        " --hide HiddenTypedefConstant",
    visibility: ["//visibility:private"],
    filter_packages: ["com.android."],
    check_api: {
        current: {
            api_file: "api/current.txt",
            removed_api_file: "api/removed.txt",
        },
        last_released: {
            api_file: ":android.api.system-server.latest",
            removed_api_file: ":removed.api.system-server.latest",
            baseline_file: ":android-incompatibilities.api.system-server.latest"
        },
        api_lint: {
            enabled: true,
            new_since: ":android.api.system-server.latest",
            baseline_file: "api/lint-baseline.txt",
        },
    },
    dists: [
        {
            targets: ["sdk", "win_sdk"],
            dir: "apistubs/android/system-server/api",
            dest: "android.txt",
            tag: ".api.txt"
        },
        {
            targets: ["sdk", "win_sdk"],
            dir: "apistubs/android/system-server/api",
            dest: "removed.txt",
            tag: ".removed-api.txt",
        },
    ]
}

java_library {
    name: "android_system_server_stubs_current",
    defaults: ["android_stubs_dists_default"],
    srcs: [":services-stubs.sources"],
    installable: false,
    static_libs: ["android_module_lib_stubs_current"],
    sdk_version: "none",
    system_modules: "none",
    java_version: "1.8",
    dist: {
        dir: "apistubs/android/system-server",
    },
}
