From 8eb42eecbf0bff3d91b74d3e41100988f2876d15 Mon Sep 17 00:00:00 2001 From: Anton Hansson Date: Wed, 14 Apr 2021 18:30:19 +0100 Subject: [PATCH] Add build rules for updated SDK 30 android.jars These build rules are work-in-progress libraries to produce SDK jars based on SDK 30 but with updated mainline module stubs. They aren't yet ready to be used, as some of the components need tweaking (for example, the android-non-updatable prebuilt does not have resources in it) Migrate in the android.jar defaults from frameworks/base to avoid taking a dependency on that repository. Bug: 184839225 Test: m android_30_modules_current{,_system} Change-Id: Ie696406c57f437c9c46d727311ff2956b2c8c4ea --- sdk/Android.bp | 5 +++- sdk/StubLibraries.bp | 61 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 65 insertions(+), 1 deletion(-) create mode 100644 sdk/StubLibraries.bp diff --git a/sdk/Android.bp b/sdk/Android.bp index 71f29ab..8606d1d 100644 --- a/sdk/Android.bp +++ b/sdk/Android.bp @@ -12,4 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -build = ["ModuleDefaults.bp"] +build = [ + "ModuleDefaults.bp", + "StubLibraries.bp", +] diff --git a/sdk/StubLibraries.bp b/sdk/StubLibraries.bp new file mode 100644 index 0000000..f2cfae1 --- /dev/null +++ b/sdk/StubLibraries.bp @@ -0,0 +1,61 @@ +// Copyright (C) 2021 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. + +java_defaults { + name: "android.jar_defaults", + sdk_version: "none", + system_modules: "none", + java_version: "1.8", + compile_dex: true, + defaults_visibility: ["//frameworks/base"], + visibility: ["//visibility:public"], +} + +java_library_static { + name: "android_30xcurrent", + static_libs: [ + "sdk_public_30_android-non-updatable", // Prebuilt non-updatable 30 stub. + "private-stub-annotations-jar", + + // Public stubs for BCP modules in Android R built from source + "conscrypt.module.public.api.stubs", + "framework-media.stubs", + "framework-mediaprovider.stubs", + "framework-permission.stubs", + "framework-sdkextensions.stubs", + "framework-statsd.stubs", + "framework-tethering.stubs", + "framework-wifi.stubs", + ], + defaults: ["android.jar_defaults"], +} + +java_library_static { + name: "android_system_30xcurrent", + static_libs: [ + "sdk_system_30_android-non-updatable", // Prebuilt non-updatable 30 stub. + "private-stub-annotations-jar", + + // System stubs for BCP modules in Android R built from source + "conscrypt.module.public.api.stubs", // Only has public stubs + "framework-media.stubs.system", + "framework-mediaprovider.stubs.system", + "framework-permission.stubs.system", + "framework-sdkextensions.stubs.system", + "framework-statsd.stubs.system", + "framework-tethering.stubs.system", + "framework-wifi.stubs.system", + ], + defaults: ["android.jar_defaults"], +}