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

Commit 53655f77 authored by Paul Duffin's avatar Paul Duffin Committed by Gerrit Code Review
Browse files

Merge changes from topic "java_sdk_library_module_lib"

* changes:
  Switch framework-sdkextensions to use java_sdk_library
  Add framework-module-defaults for java_sdk_library
parents 242c212b df64dd19
Loading
Loading
Loading
Loading
+54 −0
Original line number Diff line number Diff line
@@ -63,6 +63,60 @@ mainline_service_stubs_args =
    "--hide-annotation android.annotation.Hide " +
    "--hide InternalClasses " // com.android.* classes are okay in this interface

// Defaults for mainline module provided java_sdk_library instances.
java_defaults {
    name: "framework-module-defaults",

    // Additional annotations used for compiling both the implementation and the
    // stubs libraries.
    libs: ["framework-annotations-lib"],

    // Enable api lint. This will eventually become the default for java_sdk_library
    // but it cannot yet be turned on because some usages have not been cleaned up.
    // TODO(b/156126315) - Remove when no longer needed.
    api_lint: {
        enabled: true,
    },

    // The API scope specific properties.
    public: {
        enabled: true,
        sdk_version: "module_current",
    },
    system: {
        enabled: true,
        sdk_version: "module_current",
    },
    module_lib: {
        enabled: true,
        sdk_version: "module_current",
    },

    // The stub libraries must be visible to frameworks/base so they can be combined
    // into API specific libraries.
    stubs_library_visibility: [
        "//frameworks/base", // Framework
    ],

    // Set the visibility of the modules creating the stubs source.
    stubs_source_visibility: [
        // Ignore any visibility rules specified on the java_sdk_library when
        // setting the visibility of the stubs source modules.
        "//visibility:override",

        // Currently, the stub source is not required for anything other than building
        // the stubs library so is private to avoid misuse.
        "//visibility:private",
    ],

    // Collates API usages from each module for further analysis.
    plugins: ["java_api_finder"],

    // Mainline modules should only rely on 'module_lib' APIs provided by other modules
    // and the non updatable parts of the platform.
    sdk_version: "module_current",
}

stubs_defaults {
    name: "framework-module-stubs-defaults-publicapi",
    args: mainline_framework_stubs_args,
+1 −1
Original line number Diff line number Diff line
@@ -39,7 +39,7 @@ apex_defaults {

sdk {
    name: "sdkextensions-sdk",
    java_header_libs: [ "framework-sdkextensions-stubs-systemapi" ],
    java_sdk_libs: [ "framework-sdkextensions" ],
}

apex_key {
+8 −76
Original line number Diff line number Diff line
@@ -25,14 +25,18 @@ filegroup {
    visibility: [ "//frameworks/base" ] // For the "global" stubs.
}

java_library {
java_sdk_library {
    name: "framework-sdkextensions",
    srcs: [ ":framework-sdkextensions-sources" ],
    sdk_version: "system_current",
    libs: [ "framework-annotations-lib" ],
    defaults: ["framework-module-defaults"],

    // TODO(b/155480189) - Remove naming_scheme once references have been resolved.
    // Temporary java_sdk_library component naming scheme to use to ease the transition from separate
    // modules to java_sdk_library.
    naming_scheme: "framework-modules",

    permitted_packages: [ "android.os.ext" ],
    installable: true,
    plugins: ["java_api_finder"],
    visibility: [
        "//frameworks/base/apex/sdkextensions",
        "//frameworks/base/apex/sdkextensions/testing",
@@ -43,75 +47,3 @@ java_library {
        "test_com.android.sdkext",
    ],
}

stubs_defaults {
    name: "framework-sdkextensions-stubs-defaults",
    srcs: [ ":framework-sdkextensions-sources" ],
    libs: [ "framework-annotations-lib" ],
    dist: { dest: "framework-sdkextensions.txt" },
}

droidstubs {
    name: "framework-sdkextensions-stubs-srcs-publicapi",
    defaults: [
        "framework-module-stubs-defaults-publicapi",
        "framework-sdkextensions-stubs-defaults",
    ],
}

droidstubs {
    name: "framework-sdkextensions-stubs-srcs-systemapi",
    defaults: [
        "framework-module-stubs-defaults-systemapi",
        "framework-sdkextensions-stubs-defaults",
    ],
}

droidstubs {
    name: "framework-sdkextensions-api-module_libs_api",
    defaults: [
        "framework-module-api-defaults-module_libs_api",
        "framework-sdkextensions-stubs-defaults",
    ],
}

droidstubs {
    name: "framework-sdkextensions-stubs-srcs-module_libs_api",
    defaults: [
        "framework-module-stubs-defaults-module_libs_api",
        "framework-sdkextensions-stubs-defaults",
    ],
}

java_library {
    name: "framework-sdkextensions-stubs-publicapi",
    srcs: [":framework-sdkextensions-stubs-srcs-publicapi"],
    defaults: ["framework-module-stubs-lib-defaults-publicapi"],
    visibility: [
        "//frameworks/base", // Framework
        "//frameworks/base/apex/sdkextensions", // sdkextensions SDK
    ],
    dist: { dest: "framework-sdkextensions.jar" },
}

java_library {
    name: "framework-sdkextensions-stubs-systemapi",
    srcs: [":framework-sdkextensions-stubs-srcs-systemapi"],
    defaults: ["framework-module-stubs-lib-defaults-systemapi"],
    visibility: [
        "//frameworks/base", // Framework
        "//frameworks/base/apex/sdkextensions", // sdkextensions SDK
    ],
    dist: { dest: "framework-sdkextensions.jar" },
}

java_library {
    name: "framework-sdkextensions-stubs-module_libs_api",
    srcs: [":framework-sdkextensions-stubs-srcs-module_libs_api"],
    defaults: ["framework-module-stubs-lib-defaults-module_libs_api"],
    visibility: [
        "//frameworks/base", // Framework
        "//frameworks/base/apex/sdkextensions", // sdkextensions SDK
    ],
    dist: { dest: "framework-sdkextensions.jar" },
}