// Copyright (C) 2019 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//      http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

// How stubs are generated:
//
// raw source files --(metalava)--> stub source files --(javac)--> stub jar files
//
// - The metalava conversion is done by droidstub modules
// - The javac compilation is done by java_library modules
//
// The metalava conversion is also responsible for creating API signature files
// and comparing them against the checked in API signature, and also checking compatibility
// with the latest frozen API signature.

/////////////////////////////////////////////////////////////////////
// These modules provide source files for the stub libraries
/////////////////////////////////////////////////////////////////////

droidstubs {
    name: "api-stubs-docs-non-updatable",
    srcs: [
        ":framework-minus-apex-aconfig-srcjars",
    ],
    defaults: [
        "android-non-updatable-stubs-defaults",
        "module-classpath-stubs-defaults",
    ],
    args: metalava_framework_docs_args,
    check_api: {
        current: {
            api_file: ":non-updatable-current.txt",
            removed_api_file: ":non-updatable-removed.txt",
        },
        last_released: {
            api_file: ":android-non-updatable.api.public.latest",
            removed_api_file: ":android-non-updatable-removed.api.public.latest",
            baseline_file: ":android-non-updatable-incompatibilities.api.public.latest",
        },
        api_lint: {
            enabled: true,
            new_since: ":android.api.public.latest",
            baseline_file: ":non-updatable-lint-baseline.txt",
        },
    },
    dists: [
        {
            targets: ["sdk"],
            dir: "apistubs/android/public/api",
            dest: "android-non-updatable.txt",
            tag: ".api.txt",
        },
        {
            targets: ["sdk"],
            dir: "apistubs/android/public/api",
            dest: "android-non-updatable-removed.txt",
            tag: ".removed-api.txt",
        },
    ],
}

priv_apps = " --show-annotation android.annotation.SystemApi\\(" +
    "client=android.annotation.SystemApi.Client.PRIVILEGED_APPS" +
    "\\)"

priv_apps_in_stubs = " --show-for-stub-purposes-annotation android.annotation.SystemApi\\(" +
    "client=android.annotation.SystemApi.Client.PRIVILEGED_APPS" +
    "\\)"

test = " --show-annotation android.annotation.TestApi"

module_libs = " --show-annotation android.annotation.SystemApi\\(" +
    "client=android.annotation.SystemApi.Client.MODULE_LIBRARIES" +
    "\\)"

droidstubs {
    name: "system-api-stubs-docs-non-updatable",
    defaults: [
        "android-non-updatable-stubs-defaults",
        "module-classpath-stubs-defaults",
    ],
    args: metalava_framework_docs_args + priv_apps,
    check_api: {
        current: {
            api_file: ":non-updatable-system-current.txt",
            removed_api_file: ":non-updatable-system-removed.txt",
        },
        last_released: {
            api_file: ":android-non-updatable.api.system.latest",
            removed_api_file: ":android-non-updatable-removed.api.system.latest",
            baseline_file: ":android-non-updatable-incompatibilities.api.system.latest",
        },
        api_lint: {
            enabled: true,
            new_since: ":android.api.system.latest",
            baseline_file: ":non-updatable-system-lint-baseline.txt",
        },
    },
    dists: [
        {
            targets: ["sdk"],
            dir: "apistubs/android/system/api",
            dest: "android-non-updatable.txt",
            tag: ".api.txt",
        },
        {
            targets: ["sdk"],
            dir: "apistubs/android/system/api",
            dest: "android-non-updatable-removed.txt",
            tag: ".removed-api.txt",
        },
    ],
}

droidstubs {
    name: "test-api-stubs-docs-non-updatable",
    defaults: [
        "android-non-updatable-stubs-defaults",
        "module-classpath-stubs-defaults",
    ],
    args: metalava_framework_docs_args + test + priv_apps_in_stubs,
    check_api: {
        current: {
            api_file: ":non-updatable-test-current.txt",
            removed_api_file: ":non-updatable-test-removed.txt",
        },
        api_lint: {
            enabled: true,
            new_since: ":android.api.test.latest",
            baseline_file: ":non-updatable-test-lint-baseline.txt",
        },
    },
    dists: [
        {
            targets: ["sdk"],
            dir: "apistubs/android/test/api",
            dest: "android.txt",
            tag: ".api.txt",
        },
        {
            targets: ["sdk"],
            dir: "apistubs/android/test/api",
            dest: "removed.txt",
            tag: ".removed-api.txt",
        },
        {
            targets: ["sdk"],
            dir: "apistubs/android/test/api",
            dest: "android-non-updatable.txt",
            tag: ".api.txt",
        },
        {
            targets: ["sdk"],
            dir: "apistubs/android/test/api",
            dest: "android-non-updatable-removed.txt",
            tag: ".removed-api.txt",
        },
    ],
}

droidstubs {
    name: "module-lib-api-stubs-docs-non-updatable",
    defaults: [
        "android-non-updatable-stubs-defaults",
        "module-classpath-stubs-defaults",
    ],
    args: metalava_framework_docs_args + priv_apps_in_stubs + module_libs,
    check_api: {
        current: {
            api_file: ":non-updatable-module-lib-current.txt",
            removed_api_file: ":non-updatable-module-lib-removed.txt",
        },
        last_released: {
            api_file: ":android-non-updatable.api.module-lib.latest",
            removed_api_file: ":android-non-updatable-removed.api.module-lib.latest",
            baseline_file: ":android-non-updatable-incompatibilities.api.module-lib.latest",
        },
        api_lint: {
            enabled: true,
            new_since: ":android.api.module-lib.latest",
            baseline_file: ":non-updatable-module-lib-lint-baseline.txt",
        },
    },
    dists: [
        {
            targets: ["sdk"],
            dir: "apistubs/android/module-lib/api",
            dest: "android-non-updatable.txt",
            tag: ".api.txt",
        },
        {
            targets: ["sdk"],
            dir: "apistubs/android/module-lib/api",
            dest: "android-non-updatable-removed.txt",
            tag: ".removed-api.txt",
        },
    ],
}

/////////////////////////////////////////////////////////////////////
// android_*_stubs_current modules are the stubs libraries compiled
// from stub sources
/////////////////////////////////////////////////////////////////////

java_defaults {
    name: "android.jar_defaults",
    sdk_version: "none",
    system_modules: "none",
    java_version: "1.8",
    compile_dex: true,
    visibility: ["//visibility:public"],
}

java_defaults {
    name: "android-non-updatable_defaults",
    sdk_version: "none",
    system_modules: "none",
    java_version: "1.8",
    compile_dex: true,
}

java_defaults {
    name: "android-non-updatable_from_source_defaults",
    libs: ["stub-annotations"],
    static_libs: ["framework-res-package-jar"], // Export package of framework-res
    dist: {
        targets: ["sdk"],
        tag: ".jar",
        dest: "android-non-updatable.jar",
    },
}

java_library {
    name: "android-non-updatable.stubs",
    defaults: ["android-non-updatable_defaults"],
    static_libs: [
        "android-non-updatable.stubs.from-source",
    ],
    product_variables: {
        build_from_text_stub: {
            static_libs: [
                "android-non-updatable.stubs.from-text",
            ],
            exclude_static_libs: [
                "android-non-updatable.stubs.from-source",
            ],
        },
    },
}

java_library {
    name: "android-non-updatable.stubs.system",
    defaults: ["android-non-updatable_defaults"],
    static_libs: [
        "android-non-updatable.stubs.system.from-source",
    ],
    product_variables: {
        build_from_text_stub: {
            static_libs: [
                "android-non-updatable.stubs.system.from-text",
            ],
            exclude_static_libs: [
                "android-non-updatable.stubs.system.from-source",
            ],
        },
    },
}

java_library {
    name: "android-non-updatable.stubs.module_lib",
    defaults: ["android-non-updatable_defaults"],
    static_libs: [
        "android-non-updatable.stubs.module_lib.from-source",
    ],
    product_variables: {
        build_from_text_stub: {
            static_libs: [
                "android-non-updatable.stubs.module_lib.from-text",
            ],
            exclude_static_libs: [
                "android-non-updatable.stubs.module_lib.from-source",
            ],
        },
    },
}

java_library {
    name: "android-non-updatable.stubs.test",
    defaults: ["android-non-updatable_defaults"],
    static_libs: [
        "android-non-updatable.stubs.test.from-source",
    ],
    product_variables: {
        build_from_text_stub: {
            static_libs: [
                "android-non-updatable.stubs.test.from-text",
            ],
            exclude_static_libs: [
                "android-non-updatable.stubs.test.from-source",
            ],
        },
    },
}

java_library {
    name: "android-non-updatable.stubs.from-source",
    defaults: [
        "android-non-updatable_defaults",
        "android-non-updatable_from_source_defaults",
    ],
    srcs: [":api-stubs-docs-non-updatable"],
    libs: ["all-modules-public-stubs"],
    dist: {
        dir: "apistubs/android/public",
    },
}

java_library {
    name: "android-non-updatable.stubs.system.from-source",
    defaults: [
        "android-non-updatable_defaults",
        "android-non-updatable_from_source_defaults",
    ],
    srcs: [":system-api-stubs-docs-non-updatable"],
    libs: ["all-modules-system-stubs"],
    dist: {
        dir: "apistubs/android/system",
    },
}

java_library {
    name: "android-non-updatable.stubs.module_lib.from-source",
    defaults: [
        "android-non-updatable_defaults",
        "android-non-updatable_from_source_defaults",
    ],
    srcs: [":module-lib-api-stubs-docs-non-updatable"],
    libs: [
        "sdk_module-lib_current_framework-tethering",
        "sdk_module-lib_current_framework-connectivity-t",
        "sdk_public_current_framework-bluetooth",
        // NOTE: The below can be removed once the prebuilt stub contains bluetooth.
        "sdk_system_current_android",
        // NOTE: The below can be removed once the prebuilt stub contains IKE.
        "sdk_system_current_android.net.ipsec.ike",
    ],
    dist: {
        dir: "apistubs/android/module-lib",
    },
}

java_library {
    name: "android-non-updatable.stubs.test.from-source",
    defaults: [
        "android-non-updatable_defaults",
        "android-non-updatable_from_source_defaults",
    ],
    srcs: [":test-api-stubs-docs-non-updatable"],
    libs: ["all-modules-system-stubs"],
    dist: {
        dir: "apistubs/android/test",
    },
}

java_defaults {
    name: "android-non-updatable_from_text_defaults",
    static_libs: ["framework-res-package-jar"],
    libs: ["stub-annotations"],
}

java_api_library {
    name: "android-non-updatable.stubs.from-text",
    api_surface: "public",
    api_files: [
        ":non-updatable-current.txt",
    ],
    defaults: ["android-non-updatable_from_text_defaults"],
    full_api_surface_stub: "android_stubs_current.from-text",
}

java_api_library {
    name: "android-non-updatable.stubs.system.from-text",
    api_surface: "system",
    api_files: [
        ":non-updatable-current.txt",
        ":non-updatable-system-current.txt",
    ],
    defaults: ["android-non-updatable_from_text_defaults"],
    full_api_surface_stub: "android_system_stubs_current.from-text",
}

java_api_library {
    name: "android-non-updatable.stubs.test.from-text",
    api_surface: "test",
    api_files: [
        ":non-updatable-current.txt",
        ":non-updatable-system-current.txt",
        ":non-updatable-test-current.txt",
    ],
    defaults: ["android-non-updatable_from_text_defaults"],
    full_api_surface_stub: "android_test_stubs_current.from-text",
}

java_api_library {
    name: "android-non-updatable.stubs.module_lib.from-text",
    api_surface: "module_lib",
    api_files: [
        ":non-updatable-current.txt",
        ":non-updatable-system-current.txt",
        ":non-updatable-module-lib-current.txt",
    ],
    defaults: ["android-non-updatable_from_text_defaults"],
    full_api_surface_stub: "android_module_lib_stubs_current_full.from-text",
}

java_defaults {
    name: "android_stubs_dists_default",
    dist: {
        targets: ["sdk"],
        tag: ".jar",
        dest: "android.jar",
    },
    defaults_visibility: ["//frameworks/base/services"],
}

java_library {
    name: "android_stubs_current.from-source",
    static_libs: [
        "all-modules-public-stubs",
        "android-non-updatable.stubs",
        "private-stub-annotations-jar",
    ],
    defaults: ["android.jar_defaults"],
}

java_library {
    name: "android_system_stubs_current.from-source",
    static_libs: [
        "all-modules-system-stubs",
        "android-non-updatable.stubs.system",
        "private-stub-annotations-jar",
    ],
    defaults: [
        "android.jar_defaults",
        "android_stubs_dists_default",
    ],
    dist: {
        dir: "apistubs/android/system",
    },
    dists: [
        {
            // Legacy dist path
            targets: ["sdk"],
            tag: ".jar",
            dest: "android_system.jar",
        },
    ],
}

java_library {
    name: "android_test_stubs_current.from-source",
    static_libs: [
        // Updatable modules do not have test APIs, but we want to include their SystemApis, like we
        // include the SystemApi of framework-non-updatable-sources.
        "all-updatable-modules-system-stubs",
        // Non-updatable modules on the other hand can have test APIs, so include their test-stubs.
        "all-non-updatable-modules-test-stubs",
        "android-non-updatable.stubs.test",
        "private-stub-annotations-jar",
    ],
    defaults: [
        "android.jar_defaults",
        "android_stubs_dists_default",
    ],
    dist: {
        dir: "apistubs/android/test",
    },
}

java_library {
    name: "android_test_frameworks_core_stubs_current.from-source",
    static_libs: [
        "all-updatable-modules-system-stubs",
        "android-non-updatable.stubs.test",
    ],
    defaults: [
        "android.jar_defaults",
        "android_stubs_dists_default",
    ],
    dist: {
        dir: "apistubs/android/test-core",
    },
}

java_library {
    name: "android_module_lib_stubs_current.from-source",
    defaults: [
        "android.jar_defaults",
        "android_stubs_dists_default",
    ],
    static_libs: [
        "android-non-updatable.stubs.module_lib",
        "art.module.public.api.stubs.module_lib",
        "i18n.module.public.api.stubs",
    ],
    dist: {
        dir: "apistubs/android/module-lib",
    },
}

java_library {
    name: "android_system_server_stubs_current.from-source",
    defaults: [
        "android.jar_defaults",
        "android_stubs_dists_default",
    ],
    srcs: [":services-non-updatable-stubs"],
    installable: false,
    static_libs: [
        "android_module_lib_stubs_current.from-source",
    ],
    dist: {
        dir: "apistubs/android/system-server",
    },
}

java_library {
    name: "android_stubs_private_jar",
    defaults: ["android.jar_defaults"],
    visibility: [
        "//visibility:override",
        "//visibility:private",
    ],
    static_libs: [
        "stable.core.platform.api.stubs",
        "core-lambda-stubs-for-system-modules",
        "core-generated-annotation-stubs",
        "framework",
        "ext",
        "framework-res-package-jar",
        // The order of this matters, it has to be last to provide a
        // package-private androidx.annotation.RecentlyNonNull without
        // overriding the public android.annotation.Nullable in framework.jar
        // with its own package-private android.annotation.Nullable.
        "private-stub-annotations-jar",
    ],
}

java_genrule {
    name: "android_stubs_private_hjar",
    srcs: [":android_stubs_private_jar{.hjar}"],
    out: ["android_stubs_private.jar"],
    cmd: "cp $(in) $(out)",
}

java_library {
    name: "android_stubs_private",
    defaults: ["android_stubs_dists_default"],
    sdk_version: "none",
    system_modules: "none",
    static_libs: ["android_stubs_private_hjar"],
    dist: {
        dir: "apistubs/android/private",
    },
}

java_genrule {
    name: "android_stubs_private_framework_aidl",
    tools: ["sdkparcelables"],
    srcs: [":android_stubs_private"],
    out: ["framework.aidl"],
    cmd: "rm -f $(genDir)/framework.aidl.merged && " +
        "for i in $(in); do " +
        "  rm -f $(genDir)/framework.aidl.tmp && " +
        "  $(location sdkparcelables) $$i $(genDir)/framework.aidl.tmp && " +
        "  cat $(genDir)/framework.aidl.tmp >> $(genDir)/framework.aidl.merged; " +
        "done && " +
        "sort -u $(genDir)/framework.aidl.merged > $(out)",
    dist: {
        targets: ["sdk"],
        dir: "apistubs/android/private",
    },
}

//
// Java API defaults and libraries for single tree build
//

java_defaults {
    name: "stub-annotation-defaults",
    libs: [
        "stub-annotations",
    ],
    static_libs: [
        // stub annotations do not contribute to the API surfaces but are statically
        // linked in the stubs for API surfaces (see frameworks/base/StubLibraries.bp).
        // This is because annotation processors insist on loading the classes for any
        // annotations found, thus should exist inside android.jar.
        "private-stub-annotations-jar",
    ],
}

// Listing of API domains contribution and dependencies per API surfaces
java_defaults {
    name: "android_test_stubs_current_contributions",
    api_surface: "test",
    api_contributions: [
        "test-api-stubs-docs-non-updatable.api.contribution",
        "framework-virtualization.stubs.source.test.api.contribution",
        "framework-location.stubs.source.test.api.contribution",
    ],
}

java_defaults {
    name: "android_test_frameworks_core_stubs_current_contributions",
    api_surface: "test",
    api_contributions: [
        "test-api-stubs-docs-non-updatable.api.contribution",
    ],
}

java_defaults {
    name: "android_module_lib_stubs_current_contributions",
    api_surface: "module-lib",
    api_contributions: [
        "api-stubs-docs-non-updatable.api.contribution",
        "system-api-stubs-docs-non-updatable.api.contribution",
        "module-lib-api-stubs-docs-non-updatable.api.contribution",
        "art.module.public.api.stubs.source.api.contribution",
        "art.module.public.api.stubs.source.system.api.contribution",
        "art.module.public.api.stubs.source.module_lib.api.contribution",
        "i18n.module.public.api.stubs.source.api.contribution",
        "i18n.module.public.api.stubs.source.system.api.contribution",
        "i18n.module.public.api.stubs.source.module_lib.api.contribution",
    ],
}

// Java API library definitions per API surface
java_api_library {
    name: "android_stubs_current.from-text",
    api_surface: "public",
    defaults: [
        // This module is dynamically created at frameworks/base/api/api.go
        // instead of being written out, in order to minimize edits in the codebase
        // when there is a change in the list of modules.
        // that contributes to an api surface.
        "android_stubs_current_contributions",
        "stub-annotation-defaults",
    ],
    api_contributions: [
        "api-stubs-docs-non-updatable.api.contribution",
    ],
    visibility: ["//visibility:public"],
}

java_api_library {
    name: "android_system_stubs_current.from-text",
    api_surface: "system",
    defaults: [
        "android_stubs_current_contributions",
        "android_system_stubs_current_contributions",
        "stub-annotation-defaults",
    ],
    api_contributions: [
        "api-stubs-docs-non-updatable.api.contribution",
        "system-api-stubs-docs-non-updatable.api.contribution",
    ],
    visibility: ["//visibility:public"],
}

java_api_library {
    name: "android_test_stubs_current.from-text",
    api_surface: "test",
    defaults: [
        "android_stubs_current_contributions",
        "android_system_stubs_current_contributions",
        "android_test_stubs_current_contributions",
        "stub-annotation-defaults",
    ],
    api_contributions: [
        "api-stubs-docs-non-updatable.api.contribution",
        "system-api-stubs-docs-non-updatable.api.contribution",
    ],
    visibility: ["//visibility:public"],
}

java_api_library {
    name: "android_test_frameworks_core_stubs_current.from-text",
    api_surface: "test",
    defaults: [
        "android_stubs_current_contributions",
        "android_system_stubs_current_contributions",
        "android_test_frameworks_core_stubs_current_contributions",
        "stub-annotation-defaults",
    ],
    api_contributions: [
        "api-stubs-docs-non-updatable.api.contribution",
        "system-api-stubs-docs-non-updatable.api.contribution",
    ],
}

java_api_library {
    name: "android_module_lib_stubs_current_full.from-text",
    api_surface: "module-lib",
    defaults: [
        "android_stubs_current_contributions",
        "android_system_stubs_current_contributions",
        "android_module_lib_stubs_current_contributions_full",
    ],
    libs: [
        "stub-annotations",
    ],
    api_contributions: [
        "api-stubs-docs-non-updatable.api.contribution",
        "system-api-stubs-docs-non-updatable.api.contribution",
        "module-lib-api-stubs-docs-non-updatable.api.contribution",
    ],
    visibility: ["//visibility:public"],
}

java_api_library {
    name: "android_module_lib_stubs_current.from-text",
    api_surface: "module-lib",
    defaults: [
        "android_module_lib_stubs_current_contributions",
    ],
    libs: [
        "android_module_lib_stubs_current_full.from-text",
        "stub-annotations",
    ],
    visibility: ["//visibility:public"],
}

java_api_library {
    name: "android_system_server_stubs_current.from-text",
    api_surface: "system-server",
    api_contributions: [
        "services-non-updatable-stubs.api.contribution",
    ],
    libs: [
        "android_module_lib_stubs_current.from-text",
        "stub-annotations",
    ],
    static_libs: [
        "android_module_lib_stubs_current.from-text",
    ],
    visibility: ["//visibility:public"],
}

////////////////////////////////////////////////////////////////////////
// api-versions.xml generation, for public and system. This API database
// also contains the android.test.* APIs.
////////////////////////////////////////////////////////////////////////

java_library {
    name: "android_stubs_current_with_test_libs",
    static_libs: [
        "android_stubs_current",
        "android.test.base.stubs",
        "android.test.mock.stubs",
        "android.test.runner.stubs",
    ],
    defaults: ["android.jar_defaults"],
    visibility: [
        "//visibility:override",
        "//visibility:private",
    ],
}

java_library {
    name: "android_system_stubs_current_with_test_libs",
    static_libs: [
        "android_system_stubs_current",
        "android.test.base.stubs.system",
        "android.test.mock.stubs.system",
        "android.test.runner.stubs.system",
    ],
    defaults: ["android.jar_defaults"],
    visibility: [
        "//visibility:override",
        "//visibility:private",
    ],
}

java_library {
    name: "android_module_stubs_current_with_test_libs",
    static_libs: [
        "android_module_lib_stubs_current",
        "android.test.base.stubs",
        "android.test.mock.stubs",
        "android.test.runner.stubs",
    ],
    defaults: ["android.jar_defaults"],
    visibility: [
        "//visibility:override",
        "//visibility:private",
    ],
}

java_library {
    name: "android_system_server_stubs_current_with_test_libs",
    static_libs: [
        "android_system_server_stubs_current",
        "android.test.base.stubs.system",
        "android.test.mock.stubs.system",
        "android.test.runner.stubs.system",
    ],
    defaults: ["android.jar_defaults"],
    visibility: [
        "//visibility:override",
        "//visibility:private",
    ],
}

droidstubs {
    name: "api_versions_public",
    srcs: [":android_stubs_current_with_test_libs{.jar}"],
    generate_stubs: false,
    api_levels_annotations_enabled: true,
    api_levels_annotations_dirs: [
        "sdk-dir",
        "api-versions-jars-dir",
    ],
    api_levels_sdk_type: "public",
    extensions_info_file: ":sdk-extensions-info",
    visibility: ["//frameworks/base"],
}

droidstubs {
    name: "api_versions_system",
    srcs: [":android_system_stubs_current_with_test_libs{.jar}"],
    generate_stubs: false,
    api_levels_annotations_enabled: true,
    api_levels_annotations_dirs: [
        "sdk-dir",
        "api-versions-jars-dir",
    ],
    api_levels_sdk_type: "system",
    extensions_info_file: ":sdk-extensions-info",
}

// This module can be built with:
// m out/soong/.intermediates/frameworks/base/api_versions_module_lib/android_common/metalava/api-versions.xml
droidstubs {
    name: "api_versions_module_lib",
    srcs: [":android_module_stubs_current_with_test_libs{.jar}"],
    generate_stubs: false,
    api_levels_annotations_enabled: true,
    // this only has the non-updatable portions of the module lib sdk,
    // which can reference classes from updatable apexes, so remove references to them
    // from this api_versions file.
    flags: ["--remove-missing-class-references-in-api-levels"],
    api_levels_annotations_dirs: [
        "sdk-dir",
        "api-versions-jars-dir",
    ],
    api_levels_sdk_type: "module-lib",
    // extensions_info_file is purposefully omitted, because this module should just be
    // the non-updatable portions of the sdk, and extension sdks are updatable.
}

droidstubs {
    name: "api_versions_system_server",
    srcs: [":android_system_server_stubs_current_with_test_libs{.jar}"],
    generate_stubs: false,
    api_levels_annotations_enabled: true,
    // this only has the non-updatable portions of the system server sdk,
    // which can reference classes from updatable apexes, so remove references to them
    // from this api_versions file.
    flags: ["--remove-missing-class-references-in-api-levels"],
    api_levels_annotations_dirs: [
        "sdk-dir",
        "api-versions-jars-dir",
    ],
    api_levels_sdk_type: "system-server",
    // extensions_info_file is purposefully omitted, because this module should just be
    // the non-updatable portions of the sdk, and extension sdks are updatable.
}

/////////////////////////////////////////////////////////////////////
// hwbinder.stubs provides APIs required for building HIDL Java
// libraries.
/////////////////////////////////////////////////////////////////////

droidstubs {
    name: "hwbinder-stubs-docs",
    srcs: [":hwbinder-stubs-srcs"],
    libs: ["framework-annotations-lib"],
    installable: false,
    sdk_version: "core_platform",
    annotations_enabled: true,
    previous_api: ":android.api.public.latest",
    merge_annotations_dirs: [
        "metalava-manual",
    ],
    args: priv_apps,
}

java_library {
    name: "hwbinder.stubs",
    sdk_version: "core_current",
    libs: ["framework-annotations-lib"],
    srcs: [
        ":hwbinder-stubs-docs",
    ],
    visibility: ["//visibility:public"],
}
