summaryrefslogtreecommitdiff
path: root/apex/Android.bp
diff options
context:
space:
mode:
Diffstat (limited to 'apex/Android.bp')
-rw-r--r--apex/Android.bp87
1 files changed, 75 insertions, 12 deletions
diff --git a/apex/Android.bp b/apex/Android.bp
index fbc6663d9d..9734f99dad 100644
--- a/apex/Android.bp
+++ b/apex/Android.bp
@@ -7,23 +7,44 @@ package {
default_applicable_licenses: ["system_bt_license"],
}
-apex {
- name: "com.android.bluetooth",
- enabled: false,
- defaults: ["t-launched-apex-module"],
-
- manifest: "apex_manifest.json",
-
- native_shared_libs: [
- "libbluetooth_jni",
- "libbluetooth"
- ],
+apex_defaults {
+ name: "com.android.bluetooth-defaults",
+ bootclasspath_fragments: ["com.android.bluetooth-bootclasspath-fragment"],
+ systemserverclasspath_fragments: ["com.android.bluetooth-systemserverclasspath-fragment"],
apps: ["Bluetooth"],
- compile_multilib: "both",
+ multilib: {
+ first: {
+ // Extractor process runs only with the primary ABI.
+ jni_libs: [
+ "libbluetooth_jni",
+ ],
+ },
+ },
+ prebuilts: [
+ "bluetooth-linker-config",
+ ],
key: "com.android.bluetooth.key",
certificate: ":com.android.bluetooth.certificate",
+ defaults: ["t-launched-apex-module"],
+ updatable: true,
+ // Indicates that pre-installed version of this apex can be compressed.
+ // Whether it actually will be compressed is controlled on per-device basis.
+ compressible: true,
+}
+
+linker_config {
+ name: "bluetooth-linker-config",
+ src: "linker.config.json",
+ installable: false,
+}
+
+//Mainline bluetooth apex module.
+apex {
+ name: "com.android.bluetooth",
+ defaults: ["com.android.bluetooth-defaults"],
+ manifest: "apex_manifest.json",
}
apex_key {
@@ -36,3 +57,45 @@ android_app_certificate {
name: "com.android.bluetooth.certificate",
certificate: "com.android.bluetooth",
}
+
+sdk {
+ name: "bluetooth-module-sdk",
+ bootclasspath_fragments: ["com.android.bluetooth-bootclasspath-fragment"],
+ systemserverclasspath_fragments: ["com.android.bluetooth-systemserverclasspath-fragment"],
+}
+
+// Encapsulate the contributions made by the com.android.bluetooth to the bootclasspath.
+bootclasspath_fragment {
+ name: "com.android.bluetooth-bootclasspath-fragment",
+ contents: ["framework-bluetooth"],
+ apex_available: ["com.android.bluetooth"],
+
+ // The bootclasspath_fragments that provide APIs on which this depends.
+ fragments: [
+ {
+ apex: "com.android.art",
+ module: "art-bootclasspath-fragment",
+ },
+ ],
+
+ // Additional stubs libraries that this fragment's contents use which are
+ // not provided by another bootclasspath_fragment.
+ additional_stubs: [
+ "android-non-updatable",
+ ],
+
+ // Additional hidden API flag files to override the defaults. This must only be
+ // modified by the Soong or platform compat team.
+ hidden_api: {
+ max_target_o_low_priority: ["hiddenapi/hiddenapi-max-target-o-low-priority.txt"],
+ max_target_r_low_priority: ["hiddenapi/hiddenapi-max-target-r-low-priority.txt"],
+ unsupported: ["hiddenapi/hiddenapi-unsupported.txt"],
+ },
+
+}
+
+systemserverclasspath_fragment {
+ name: "com.android.bluetooth-systemserverclasspath-fragment",
+ standalone_contents: ["service-bluetooth"],
+ apex_available: ["com.android.bluetooth"],
+}