Reduce duplication for modules-utils libs
Create a defaults module with the common properties we expect utils
to use.
Test: m
Change-Id: Iba667fe6681d2086cd15b4405834e6406643636e
diff --git a/java/com/android/modules/utils/Android.bp b/java/com/android/modules/utils/Android.bp
index 4b677ea..db5c16f 100644
--- a/java/com/android/modules/utils/Android.bp
+++ b/java/com/android/modules/utils/Android.bp
@@ -17,10 +17,25 @@
default_applicable_licenses: ["Android-Apache-2.0"],
}
+java_defaults {
+ name: "modules-utils-defaults",
+ sdk_version: "module_current",
+ min_sdk_version: "29",
+ libs: ["framework-annotations-lib"],
+ visibility: ["//visibility:public"],
+ apex_available: [
+ "//apex_available:anyapex",
+ "//apex_available:platform",
+ ],
+ defaults_visibility: [":__subpackages__"],
+}
+
java_library {
// TODO this rule should be split into smaller, more focused ones,
// ideally each would have its own java package too.
name: "modules-utils-os",
+ defaults: ["modules-utils-defaults"],
+ min_sdk_version: "30",
srcs: [
":module-utils-os-aidls",
"BaseParceledListSlice.java",
@@ -28,65 +43,24 @@
"ParceledListSlice.java",
"StringParceledListSlice.java",
],
- sdk_version: "module_current",
- min_sdk_version: "30",
- visibility: ["//visibility:public"],
- apex_available: [
- "//apex_available:anyapex",
- "//apex_available:platform",
- ],
}
java_library {
name: "modules-utils-handlerexecutor",
-
- sdk_version: "module_current",
- min_sdk_version: "29",
-
+ defaults: ["modules-utils-defaults"],
srcs: ["HandlerExecutor.java"],
static_libs: ["modules-utils-preconditions"],
-
- libs: ["framework-annotations-lib"],
-
- visibility: ["//visibility:public"],
- apex_available: [
- "//apex_available:anyapex",
- // TODO once BT is an apex, remove platform available
- "//apex_available:platform",
- ],
}
java_library {
name: "modules-utils-backgroundthread",
-
- sdk_version: "module_current",
- min_sdk_version: "29",
-
+ defaults: ["modules-utils-defaults"],
srcs: ["BackgroundThread.java"],
static_libs: ["modules-utils-handlerexecutor"],
-
- libs: ["framework-annotations-lib"],
-
- visibility: ["//visibility:public"],
- apex_available: [
- "//apex_available:anyapex",
- "//apex_available:platform",
- ],
}
java_library {
name: "modules-utils-bytesmatcher",
-
- sdk_version: "module_current",
- min_sdk_version: "29",
-
+ defaults: ["modules-utils-defaults"],
srcs: ["BytesMatcher.java"],
-
- libs: ["framework-annotations-lib"],
-
- visibility: ["//visibility:public"],
- apex_available: [
- "//apex_available:anyapex",
- "//apex_available:platform",
- ],
}
diff --git a/java/com/android/modules/utils/build/Android.bp b/java/com/android/modules/utils/build/Android.bp
index 6a2aec6..5e29579 100644
--- a/java/com/android/modules/utils/build/Android.bp
+++ b/java/com/android/modules/utils/build/Android.bp
@@ -19,27 +19,16 @@
java_library {
name: "modules-utils-build",
+ defaults: ["modules-utils-defaults"],
srcs: ["SdkLevel.java"],
libs: ["androidx.annotation_annotation"],
- sdk_version: "module_current",
- min_sdk_version: "29",
- visibility: ["//visibility:public"],
- apex_available: [
- "//apex_available:anyapex",
- "//apex_available:platform",
- ],
}
// For modules which use system sdk
java_library {
name: "modules-utils-build_system",
+ defaults: ["modules-utils-defaults"],
srcs: ["SdkLevel.java"],
libs: ["androidx.annotation_annotation"],
sdk_version: "system_current",
- min_sdk_version: "29",
- visibility: ["//visibility:public"],
- apex_available: [
- "//apex_available:anyapex",
- "//apex_available:platform",
- ],
}