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

Commit 67668969 authored by Paul Duffin's avatar Paul Duffin
Browse files

Add explicit dependency from android.test.base to hiddenapi annotations

Previously, the dependency was implicit by name. This change makes it
explicit.

The android.test.base-hiddenapi is renamed to prevent the implicit
dependency being discovered. A follow up change will remove that
capability from Soong.

Test: m droid
      Verified that hiddenapi files (both aggregated ones and for the
      individual modules) are not affected by this change.
Change-Id: I6fb96311e3a15cc341a0d64817921dd99d6e683e
parent 2a2456d3
Loading
Loading
Loading
Loading
+9 −2
Original line number Diff line number Diff line
@@ -49,6 +49,12 @@ java_sdk_library {

    compile_dex: true,
    default_to_stubs: true,

    // Additional hiddenapi annotations are provided in a separate module.
    // TODO(b/180295980) - investigate whether this can be removed
    hiddenapi_additional_annotations: [
        "android.test.base-hiddenapi-annotations",
    ],
}

// Build the android.test.base_static library
@@ -91,8 +97,9 @@ java_library_static {
// ===============================================
// This contains the android.test classes from android.test.base plus
// the com.android.internal.util.Predicate[s] classes. This is only
// intended for inclusion in android.test.legacy and must not be used
// elsewhere.
// intended for inclusion in android.test.legacy and in
// android.test.base-hiddenapi-annotations to avoid a dependency cycle and must
// not be used elsewhere.
java_library_static {
    name: "android.test.base-minus-junit",

+8 −7
Original line number Diff line number Diff line
@@ -14,11 +14,6 @@
// limitations under the License.
//

// Provided solely to contribute information about which hidden parts of the android.test.base
// library are used by apps. The source files are stubs of the actual files in ../src which use the
// UnsupportedAppUsage annotation to tag those methods that are accessible via the hiddenapi.
// Relies on the convention that modules with name <x>-hiddenapi provide hiddenapi information for
// module <x> that is on the bootclasspath.
package {
    // See: http://go/android-license-faq
    // A large-scale-change added 'default_applicable_licenses' to import
@@ -28,14 +23,20 @@ package {
    default_applicable_licenses: ["frameworks_base_license"],
}

// Provided solely to contribute information about which hidden parts of the android.test.base
// library are used by apps. The source files are stubs of the actual files in ../src which use the
// UnsupportedAppUsage annotation to tag those methods that are accessible via the hiddenapi.
java_library {
    name: "android.test.base-hiddenapi",
    name: "android.test.base-hiddenapi-annotations",
    compile_dex: true,

    srcs: ["src/**/*.java"],

    libs: [
        "android.test.base",
        // Use this instead of `android.test.base` to avoid a dependency cycle
        // as `android.test.base` depends on this.
        "android.test.base-minus-junit",
        "junit",
        "unsupportedappusage",
    ],
}