From b939df8d633ecb1117cd39e5fbf39ac0fe6d1c4d Mon Sep 17 00:00:00 2001 From: Nikita Ioffe Date: Tue, 6 Dec 2022 14:12:52 +0000 Subject: [PATCH] Add non-updatable-framework-module-defaults These java_defaults are useful for the java_sdk_libraries that belong to non-updatable APEXes. Defaults are very similar to the framework-module-defaults, the main differences are: 1. non-updatable-framework-module-defaults enables @TestApi surface 2. non-updatable-framework-module-defaults doesn't enable strict_updatability_linting Allow list of the users of these new defaults is controlled by the defaults_visibility, so far only Virtualization apex is allowed to use non-updatable-framework-module-defaults. Bug: 243512044 Test: m Change-Id: Id06fb6fc43be78c1bd92c29e7593df89e412f598 --- sdk/ModuleDefaults.bp | 41 +++++++++++++++++++++++++++++++++++++---- 1 file changed, 37 insertions(+), 4 deletions(-) diff --git a/sdk/ModuleDefaults.bp b/sdk/ModuleDefaults.bp index 5a4f94e..d83fcc8 100644 --- a/sdk/ModuleDefaults.bp +++ b/sdk/ModuleDefaults.bp @@ -108,12 +108,33 @@ java_defaults { defaults_visibility: ["//visibility:private"], - // Disallow disabling the NewApi lint check. - lint: { - strict_updatability_linting: true, + dist_group: "android", +} + +// Defaults for the java_sdk_libraries of non-updatable modules. +// java_sdk_libraries using these defaults should also add themselves to the +// non_updatable_modules list in frameworks/base/api/api.go +java_defaults { + name: "non-updatable-framework-module-defaults", + defaults: ["framework-module-common-defaults"], + + system: { + enabled: true, + sdk_version: "module_current", + }, + module_lib: { + enabled: true, + sdk_version: "module_current", + }, + // Non-updatable modules are allowed to provide @TestApi + test: { + enabled: true, + sdk_version: "module_current", }, - dist_group: "android", + defaults_visibility: [ + "//packages/modules/Virtualization:__subpackages__", + ], } // Defaults for mainline module provided java_sdk_library instances. @@ -130,6 +151,12 @@ java_defaults { enabled: true, sdk_version: "module_current", }, + + // Disallow disabling the NewApi lint check. + lint: { + strict_updatability_linting: true, + }, + defaults_visibility: [ ":__subpackages__", "//frameworks/base/apex:__subpackages__", @@ -151,6 +178,12 @@ java_defaults { enabled: true, sdk_version: "system_server_current", }, + + // Disallow disabling the NewApi lint check. + lint: { + strict_updatability_linting: true, + }, + defaults_visibility: [ ":__subpackages__", "//art/libartservice:__subpackages__",