Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f30ec4fc authored by Treehugger Robot's avatar Treehugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Extract api_versions_defaults from api_versions_* modules" into main...

Merge "Extract api_versions_defaults from api_versions_* modules" into main am: e343d44c am: b44a8c74

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/3073703



Change-Id: I00e9edfdf37a85b44a4533181bcf34a075765f81
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents bcece608 b44a8c74
Loading
Loading
Loading
Loading
+52 −35
Original line number Diff line number Diff line
@@ -1144,31 +1144,47 @@ java_library {
    ],
}

droidstubs {
    name: "api_versions_public",
    srcs: [":android_stubs_current_with_test_libs{.jar}"],
// Defaults for `droidstubs` modules that generate `api-versions.xml` files for
// the various API surfaces.
stubs_defaults {
    name: "api_versions_base_defaults",
    defaults_visibility: ["//visibility:private"],
    generate_stubs: false,
    api_levels_annotations_enabled: true,
    api_levels_annotations_dirs: [
        "sdk-dir",
        "api-versions-jars-dir",
    ],
    api_levels_sdk_type: "public",
}

// Defaults for `droidstubs` modules that generate complete `api-versions.xml`
// files, i.e. include SDK extensions.
stubs_defaults {
    name: "api_versions_complete_defaults",
    defaults_visibility: ["//visibility:private"],
    defaults: ["api_versions_base_defaults"],
    extensions_info_file: ":sdk-extensions-info",
}

// Produces an `api-versions.xml` file that includes up-to-date information
// about all the public APIs, both updatable and non-updatable and historic
// information about all previous dessert and SDK extension releases.
droidstubs {
    name: "api_versions_public",
    defaults: ["api_versions_complete_defaults"],
    srcs: [":android_stubs_current_with_test_libs{.jar}"],
    api_levels_sdk_type: "public",
    visibility: ["//frameworks/base"],
}

// Produces an `api-versions.xml` file that includes up-to-date information
// about all the system APIs, both updatable and non-updatable and historic
// information about all previous dessert and SDK extension releases.
droidstubs {
    name: "api_versions_system",
    defaults: ["api_versions_complete_defaults"],
    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",
    dists: [
        // Make the api-versions.xml file for the system API available in the
        // sdk build target.
@@ -1180,42 +1196,43 @@ droidstubs {
    ],
}

// This module can be built with:
// m out/soong/.intermediates/frameworks/base/api/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,
// Defaults for `droidstubs` modules that generate `api-versions.xml` files that
// only include non-updatable code, i.e. for platform API only, not SDK
// extensions.
stubs_defaults {
    name: "api_versions_non_updatable_defaults",
    defaults_visibility: ["//visibility:private"],
    defaults: ["api_versions_base_defaults"],
    // 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.
}

// Produces an `api-versions.xml` file that includes up-to-date information
// about only the non-updatable module-lib APIs and historic information about
// all previous dessert and SDK extension releases. That historic information
// may include information about APIs that were previously not-updatable which
// have since become updatable.
droidstubs {
    name: "api_versions_module_lib",
    defaults: ["api_versions_non_updatable_defaults"],
    srcs: [":android_module_stubs_current_with_test_libs{.jar}"],
    api_levels_sdk_type: "module-lib",
}

// Produces an `api-versions.xml` file that includes up-to-date information
// about only the non-updatable system-server APIs and historic information
// about all previous dessert and SDK extension releases. That historic
// information may include information about APIs that were previously
// not-updatable which have since become updatable.
droidstubs {
    name: "api_versions_system_server",
    defaults: ["api_versions_non_updatable_defaults"],
    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.
}

/////////////////////////////////////////////////////////////////////