From 85359f6f0b7cb6d0d9ef95adf36d9389450864ff Mon Sep 17 00:00:00 2001 From: Anton Hansson Date: Mon, 21 Sep 2020 17:02:25 +0100 Subject: [PATCH] Add genrules for merged current.txt Feed metalava all module txt files and write a single file. These are intended to replace the checked in monolithic current.txt eventually. Note that they are unused for now, they're getting checked in to enable easier collaboration. Bug: 169034951 Test: m frameworks-base-api-{,system-,module-lib-}current-merged.txt Test: Manual inspection for now, some very minor diffs Change-Id: I1e1d0aff8475d3aaa354308bb70d54201488de61 --- api/Android.bp | 52 ++++++++++++++++++++++++++++++++++++ non-updatable-api/Android.bp | 35 ++++++++++++++++++++++++ 2 files changed, 87 insertions(+) create mode 100644 non-updatable-api/Android.bp diff --git a/api/Android.bp b/api/Android.bp index 54031da6e203f..cb6d448caf63c 100644 --- a/api/Android.bp +++ b/api/Android.bp @@ -43,3 +43,55 @@ genrule { cmd: "$(location metalava) --no-banner -convert2xmlnostrip $(in) $(out)", visibility: ["//visibility:public"], } + +genrule { + name: "frameworks-base-api-current-merged.txt", + srcs: [ + ":conscrypt.module.public.api{.public.api.txt}", + ":framework-media{.public.api.txt}", + ":framework-mediaprovider{.public.api.txt}", + ":framework-permission{.public.api.txt}", + ":framework-sdkextensions{.public.api.txt}", + ":framework-statsd{.public.api.txt}", + ":framework-tethering{.public.api.txt}", + ":framework-wifi{.public.api.txt}", + ":non-updatable-current.txt", + ], + out: ["current.txt"], + tools: ["metalava"], + cmd: "$(location metalava) --no-banner --format=v2 $(in) --api $(out)", +} + +genrule { + name: "frameworks-base-api-system-current-merged.txt", + srcs: [ + ":framework-media{.system.api.txt}", + ":framework-mediaprovider{.system.api.txt}", + ":framework-permission{.system.api.txt}", + ":framework-sdkextensions{.system.api.txt}", + ":framework-statsd{.system.api.txt}", + ":framework-tethering{.system.api.txt}", + ":framework-wifi{.system.api.txt}", + ":non-updatable-system-current.txt", + ], + out: ["system-current.txt"], + tools: ["metalava"], + cmd: "$(location metalava) --no-banner --format=v2 $(in) --api $(out)", +} + +genrule { + name: "frameworks-base-api-module-lib-current-merged.txt", + srcs: [ + ":framework-media{.module-lib.api.txt}", + ":framework-mediaprovider{.module-lib.api.txt}", + ":framework-permission{.module-lib.api.txt}", + ":framework-sdkextensions{.module-lib.api.txt}", + ":framework-statsd{.module-lib.api.txt}", + ":framework-tethering{.module-lib.api.txt}", + ":framework-wifi{.module-lib.api.txt}", + ":non-updatable-module-lib-current.txt", + ], + out: ["module-lib-current.txt"], + tools: ["metalava"], + cmd: "$(location metalava) --no-banner --format=v2 $(in) --api $(out)", +} diff --git a/non-updatable-api/Android.bp b/non-updatable-api/Android.bp new file mode 100644 index 0000000000000..4037781c1844e --- /dev/null +++ b/non-updatable-api/Android.bp @@ -0,0 +1,35 @@ +// Copyright (C) 2020 The Android Open Source Project +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package { + default_visibility: ["//visibility:private"], +} + +filegroup { + name: "non-updatable-current.txt", + srcs: ["current.txt"], + visibility: ["//frameworks/base/api"], +} + +filegroup { + name: "non-updatable-system-current.txt", + srcs: ["system-current.txt"], + visibility: ["//frameworks/base/api"], +} + +filegroup { + name: "non-updatable-module-lib-current.txt", + srcs: ["module-lib-current.txt"], + visibility: ["//frameworks/base/api"], +}