diff options
author | Anton Hansson <hansson@google.com> | 2021-02-12 16:47:18 +0000 |
---|---|---|
committer | Anton Hansson <hansson@google.com> | 2021-02-15 17:30:22 +0000 |
commit | 0d6eae6f1d16b2ac5f137948e93c73e59e381b2e (patch) | |
tree | daf1da54626aea851aea915b3dc1a1ddbc6cc387 /api/Android.bp | |
parent | a36c8d2b6a55e70aaf7c3584b3366e4929133cff (diff) |
Add compat checking of the merged APIs
Compare the current merged txt to the last one checked into
prebuilts/sdk. For the system and module-lib APIs, also feed
the current public API in as the "base" API.
Bug: 174847574
Test: m frameworks-base-api-{,system-,module-lib-}current-compat
Change-Id: I7d4274ec1561be131c4f0298b49c05b24f03cb06
Diffstat (limited to 'api/Android.bp')
-rw-r--r-- | api/Android.bp | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/api/Android.bp b/api/Android.bp index 74e021108577..7e2147e99a5e 100644 --- a/api/Android.bp +++ b/api/Android.bp @@ -60,6 +60,22 @@ genrule { } genrule { + name: "frameworks-base-api-current-compat", + srcs: [ + ":android.api.public.latest", + ":android-incompatibilities.api.public.latest", + ":frameworks-base-api-current.txt", + ], + out: ["stdout.txt"], + tools: ["metalava"], + cmd: "$(location metalava) --no-banner --format=v2 " + + "--check-compatibility:api:released $(location :android.api.public.latest) " + + "--baseline:compatibility:released $(location :android-incompatibilities.api.public.latest) " + + "$(location :frameworks-base-api-current.txt) " + + "> $(genDir)/stdout.txt", +} + +genrule { name: "frameworks-base-api-current.srcjar", srcs: [ ":android.net.ipsec.ike{.public.stubs.source}", @@ -146,6 +162,24 @@ genrule { } genrule { + name: "frameworks-base-api-system-current-compat", + srcs: [ + ":android.api.system.latest", + ":android-incompatibilities.api.system.latest", + ":frameworks-base-api-current.txt", + ":frameworks-base-api-system-current.txt", + ], + out: ["stdout.txt"], + tools: ["metalava"], + cmd: "$(location metalava) --no-banner --format=v2 " + + "--check-compatibility:api:released $(location :android.api.system.latest) " + + "--check-compatibility:base $(location :frameworks-base-api-current.txt) " + + "--baseline:compatibility:released $(location :android-incompatibilities.api.system.latest) " + + "$(location :frameworks-base-api-system-current.txt) " + + "> $(genDir)/stdout.txt", +} + +genrule { name: "frameworks-base-api-system-removed.txt", srcs: [ ":android.net.ipsec.ike{.system.removed-api.txt}", @@ -207,6 +241,27 @@ genrule { } genrule { + name: "frameworks-base-api-module-lib-current-compat", + srcs: [ + ":android.api.module-lib.latest", + ":android-incompatibilities.api.module-lib.latest", + ":frameworks-base-api-current.txt", + ":frameworks-base-api-module-lib-current.txt", + ], + out: ["stdout.txt"], + tools: ["metalava"], + cmd: "$(location metalava) --no-banner --format=v2 " + + "--check-compatibility:api:released $(location :android.api.module-lib.latest) " + + // Note: having "public" be the base of module-lib is not perfect -- it should + // ideally be a merged public+system), but this will help when migrating from + // MODULE_LIBS -> public. + "--check-compatibility:base $(location :frameworks-base-api-current.txt) " + + "--baseline:compatibility:released $(location :android-incompatibilities.api.module-lib.latest) " + + "$(location :frameworks-base-api-module-lib-current.txt) " + + "> $(genDir)/stdout.txt", +} + +genrule { name: "frameworks-base-api-module-lib-removed.txt", srcs: [ ":android.net.ipsec.ike{.module-lib.removed-api.txt}", |