tree 8203962fea477e2ae80906ee7e193b6c424a7aaa
parent decae510679c74796b1a9f7b0cacd8504fcc53f7
author Paul Duffin <paulduffin@google.com> 1497353339 +0100
committer Paul Duffin <paulduffin@google.com> 1497353339 +0100

Fix dependencies of packages that target earlier releases

A previous change added legacy-android-test as a static dependency to
all packages that build against the current, test_current or
system_current and failed to compile when the junit and android.test
classes were removed from the API. Unfortunately, those changes did not
take into account that some of those packages target earlier API
versions and so will always have the classes available at runtime.

This change replaces those static dependencies with dynamic dependencies
for any package that targets an earlier API version. The file changes
were made automatically by a tool that constructed and then analyzed a
full dependency graph of all the Android Java modules. The individual
changes were checked manually to ensure that the changes matched the
intent. The affected modules were built against an API with the junit
and android.test classes removed. Any issues found during this process
resulted in either the tool being updated to address the issue or a
separate change being made to fix an existing problem with the build. A
sample of the affected packages were run to ensure that they worked as
expected at runtime; no issues were found during testing.

The following change descriptions were generated automatically and so
may be a little repetitive. They are provided to give the reviewer
enough information to check the comments match what has actually been
changed and check the reasoning behind the changes.

* Android.mk
    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES
    because Browser2's manifest file (AndroidManifest.xml) targets API
    level 24 and dynamically includes the android.test.runner library
    at runtime so there is no point in statically including the
    classes.

    Added 'legacy-android-test' to LOCAL_JAVA_LIBRARIES because module
    Browser2 builds against 'LOCAL_SDK_VERSION := current' and uses
    classes from package android.test (possibly indirectly) so will no
    longer compile once they are removed from the API.

Bug: 30188076
Test: make checkbuild and ran a sample of tests
Change-Id: I78863420bcfd401b63b35ef5a9252024d1550b27
