Age | Commit message (Collapse) | Author |
|
am: 4056e654e2
Change-Id: I0b8fd33e8b27acebdc1dcc0fb31b9c309aa1fd3d
|
|
This change sets LOCAL_SDK_VERSION for all packages where
this is possible without breaking the build, and
LOCAL_PRIVATE_PLATFORM_APIS := true otherwise.
Setting one of these two will be made required soon, and this
is a change in preparation for that. Not setting LOCAL_SDK_VERSION
makes the app implicitly depend on the bootclasspath, which is
often not required. This change effectively makes depending on
private apis opt-in rather than opt-out.
Test: make relevant packages
Bug: 73535841
Change-Id: Iccca8c1115b3169fa5847e4513adfdfb44915637
|
|
Previous changes statically included legacy-android-test in preparation
for removing android.test.* and junit.* classes from the android.jar.
Unfortunately, that lead to duplicate classes between APKs and the
bootclasspath which caused build problems (Proguard) and also runtime
problems (when targeting and running on older releases).
Switching from statically including the classes to using the runtime
libraries cannot be done in one step because legacy-android-test is
statically included in libraries which are used in many APKs and so
removing it from those libraries requires that all APKs be updated at
once. Doing that atomically across dozens of projects is not practical.
This change modifies APKS that statically include the
legacy-android-test library indirectly.
* If the APK manifest uses the android.test.runner library then the APK
is modified to stop statically including legacy-android-test and
instead build against android.test.base/mock/runner libraries instead.
* Otherwise, the APK statically includes legacy-android-test.
Also, any libraries that statically include are modified to stop
statically including it and if it has source dependencies on the classes
is changed to build against the android.test.base/mock/runner libraries.
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.
* tck-android/Android.mk
Replaced 'legacy-android-test' with 'android.test.base' in
LOCAL_JAVA_LIBRARIES because ObjenesisTck's source depends on its
classes. The classes do not need to be statically included because
the classes will be provided by the runtime, either from the
default bootclasspath or from the android.test.runner library that
ObjenesisTck specifies in its manifest.
Bug: 30188076
Test: make checkbuild
Change-Id: I4a0a0ac4e1a9052fd7774f9687feace0ebb6304d
|
|
See build/soong/README.md for more information.
Test: m checkbuild
Change-Id: If798f17c3470e804951ceaa9b3fa077d3f658bd9
|
|
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.
* tck-android/Android.mk
Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES
because ObjenesisTck's manifest file (AndroidManifest.xml) targets
API level 25 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
ObjenesisTck uses classes from package android.test (possible
indirectly) and needs them available at compile time.
Dependency 'legacy-android-test' is used instead of
'android.test.runner' because the latter will conflict with
dependencies on junit.
Bug: 30188076
Test: make checkbuild and ran a sample of tests
Change-Id: Ib303c34dc1f47b6e720acabc582e217861d2a7e6
|
|
Tested by installing and running ObjenesisTck as described in
the Android.mk file.
Bug: 32912773
Test: make checkbuild and install and ran ObjenesisTck
Change-Id: I9677ea078fe83c686e995b788125612cbe48c974
|
|
Updated using ./update_source.sh 2.5
Bug: 32912773
Test: Does not build yet; see following commit
Change-Id: I88f6252c2b17ea6c69255e7a607678fc9fa541a5
|
|
Makes the file structure match upstream objenesis so that it is
simpler to update in future. Moving the files as a separate
step to upgrading makes it easier for git to track renames and
simplifies future diffs and reviews.
Bug: 32912773
Test: make checkbuild
Change-Id: Iab45c5439b713dc600131c2cba243ca026c190a4
|
|
LOCAL_PATH should always be the path to the Android.mk file, don't
manually set it to a subdirectory.
Partial cherry pick, ignoring changes to new files.
(cherry picked from 403102914cb0a262f5d55735a7d3a8a1f6421e53)
Test: builds
Change-Id: Ib2ad67e383190a4df44a24050b487b2d75ea0936
Merged-In: I8de7331026650ef0888bd0f7a4e751fe80407359
|
|
Change-Id: Ia7b95c1abb7512272b3b6ae2c6db306e49a48450
|