Bob Badour | 2efc476 | 2021-02-03 18:36:27 -0800 | [diff] [blame] | 1 | package { |
| 2 | default_applicable_licenses: ["Android-Apache-2.0"], |
| 3 | } |
| 4 | |
Victor Hsieh | 384bf6a | 2021-11-11 13:28:09 -0800 | [diff] [blame] | 5 | microdroid_filesystem_images = [ |
Andrew Scull | d6267ae | 2022-06-13 13:47:59 +0000 | [diff] [blame] | 6 | "microdroid_super", |
Victor Hsieh | 384bf6a | 2021-11-11 13:28:09 -0800 | [diff] [blame] | 7 | "microdroid_vbmeta", |
Victor Hsieh | 384bf6a | 2021-11-11 13:28:09 -0800 | [diff] [blame] | 8 | ] |
| 9 | |
Cole Faust | 5fb8d86 | 2024-08-23 16:10:00 -0700 | [diff] [blame] | 10 | soong_config_module_type { |
| 11 | name: "virt_apex", |
| 12 | module_type: "apex", |
| 13 | config_namespace: "ANDROID", |
| 14 | bool_variables: [ |
| 15 | "avf_enabled", |
| 16 | ], |
| 17 | properties: [ |
| 18 | "defaults", |
| 19 | ], |
| 20 | } |
| 21 | |
| 22 | virt_apex { |
Nikita Ioffe | 50e2ebe | 2022-10-24 17:16:25 +0100 | [diff] [blame] | 23 | name: "com.android.virt", |
Cole Faust | 5fb8d86 | 2024-08-23 16:10:00 -0700 | [diff] [blame] | 24 | soong_config_variables: { |
| 25 | avf_enabled: { |
| 26 | defaults: ["com.android.virt_avf_enabled"], |
| 27 | conditions_default: { |
| 28 | defaults: ["com.android.virt_avf_disabled"], |
| 29 | }, |
| 30 | }, |
| 31 | }, |
Nikita Ioffe | 50e2ebe | 2022-10-24 17:16:25 +0100 | [diff] [blame] | 32 | } |
| 33 | |
Inseob Kim | c2a710d | 2024-07-23 16:14:14 +0900 | [diff] [blame] | 34 | apex_defaults { |
Nikita Ioffe | 50e2ebe | 2022-10-24 17:16:25 +0100 | [diff] [blame] | 35 | name: "com.android.virt_common", |
Jiyong Park | da119cb | 2020-12-07 15:58:23 +0900 | [diff] [blame] | 36 | // TODO(jiyong): make it updatable |
Mathew Inwood | 9af36dd | 2021-02-16 14:43:40 +0000 | [diff] [blame] | 37 | updatable: false, |
Nikita Ioffe | c0b0961 | 2023-01-27 01:49:39 +0000 | [diff] [blame] | 38 | future_updatable: false, |
Jiyong Park | b6c45e7 | 2021-06-22 20:24:56 +0900 | [diff] [blame] | 39 | platform_apis: true, |
Jiyong Park | da119cb | 2020-12-07 15:58:23 +0900 | [diff] [blame] | 40 | |
| 41 | manifest: "manifest.json", |
| 42 | |
| 43 | key: "com.android.virt.key", |
| 44 | certificate: ":com.android.virt.certificate", |
Nikita Ioffe | 50e2ebe | 2022-10-24 17:16:25 +0100 | [diff] [blame] | 45 | |
| 46 | apps: [ |
| 47 | "android.system.virtualmachine.res", |
Inseob Kim | c2a710d | 2024-07-23 16:14:14 +0900 | [diff] [blame] | 48 | ] + select(release_flag("RELEASE_AVF_SUPPORT_CUSTOM_VM_WITH_PARAVIRTUALIZED_DEVICES"), { |
Jeongik Cha | 856767c | 2024-08-26 16:23:51 +0900 | [diff] [blame] | 49 | true: [ |
| 50 | "VmLauncherApp", |
| 51 | "VmTerminalApp", |
| 52 | ], |
Inseob Kim | c2a710d | 2024-07-23 16:14:14 +0900 | [diff] [blame] | 53 | default: [], |
| 54 | }), |
Nikita Ioffe | 50e2ebe | 2022-10-24 17:16:25 +0100 | [diff] [blame] | 55 | |
| 56 | file_contexts: ":com.android.virt-file_contexts", |
Nikita Ioffe | f28eec2 | 2022-10-18 23:17:34 +0100 | [diff] [blame] | 57 | |
| 58 | bootclasspath_fragments: [ |
| 59 | "com.android.virt-bootclasspath-fragment", |
| 60 | ], |
Nikita Ioffe | b78c620 | 2022-11-18 17:01:36 +0000 | [diff] [blame] | 61 | jni_libs: [ |
David Brazdil | 7958839 | 2022-10-20 17:04:46 +0100 | [diff] [blame] | 62 | "libvirtualizationservice_jni", |
Nikita Ioffe | b78c620 | 2022-11-18 17:01:36 +0000 | [diff] [blame] | 63 | "libvirtualmachine_jni", |
| 64 | ], |
Jooyung Han | 3b980eb | 2023-11-03 14:48:00 +0900 | [diff] [blame] | 65 | // TODO(b/295593640) Unfortunately these are added to the apex even though they are unused. |
| 66 | // Once the build system is fixed, remove this. |
| 67 | unwanted_transitive_deps: [ |
Jooyung Han | 3b980eb | 2023-11-03 14:48:00 +0900 | [diff] [blame] | 68 | "libsso", |
| 69 | "libutils", |
| 70 | ], |
Inseob Kim | c2a710d | 2024-07-23 16:14:14 +0900 | [diff] [blame] | 71 | |
| 72 | systemserverclasspath_fragments: select(release_flag("RELEASE_AVF_ENABLE_LLPVM_CHANGES"), { |
| 73 | true: ["com.android.virt-systemserver-fragment"], |
| 74 | default: [], |
| 75 | }), |
| 76 | |
| 77 | canned_fs_config: select(release_flag("RELEASE_AVF_ENABLE_VIRT_CPUFREQ"), { |
| 78 | true: "canned_fs_config_sys_nice", |
| 79 | default: "canned_fs_config", |
| 80 | }), |
Inseob Kim | 77c7f71 | 2023-11-06 17:01:02 +0900 | [diff] [blame] | 81 | } |
| 82 | |
Kiyoung Kim | 0e359fb | 2024-10-11 17:06:20 +0900 | [diff] [blame] | 83 | vintf_fragment { |
| 84 | name: "virtualizationservice.xml", |
| 85 | src: "virtualizationservice.xml", |
| 86 | } |
| 87 | |
Inseob Kim | c2a710d | 2024-07-23 16:14:14 +0900 | [diff] [blame] | 88 | apex_defaults { |
Nikita Ioffe | 50e2ebe | 2022-10-24 17:16:25 +0100 | [diff] [blame] | 89 | name: "com.android.virt_avf_enabled", |
| 90 | |
| 91 | defaults: ["com.android.virt_common"], |
| 92 | |
Jooyung Han | 05063d1 | 2021-10-27 01:50:51 +0900 | [diff] [blame] | 93 | custom_sign_tool: "sign_virt_apex", |
Jiyong Park | da119cb | 2020-12-07 15:58:23 +0900 | [diff] [blame] | 94 | |
Andrew Walbran | dfc953d | 2021-06-10 13:59:56 +0000 | [diff] [blame] | 95 | // crosvm and virtualizationservice are only enabled for 64-bit targets on device |
Jiyong Park | 2199f20 | 2020-12-07 15:58:47 +0900 | [diff] [blame] | 96 | arch: { |
| 97 | arm64: { |
| 98 | binaries: [ |
Jiyong Park | 69b3937 | 2021-01-05 23:14:46 +0900 | [diff] [blame] | 99 | "crosvm", |
David Brazdil | 1f53070 | 2022-10-03 12:18:10 +0100 | [diff] [blame] | 100 | "virtmgr", |
Andrew Walbran | dfc953d | 2021-06-10 13:59:56 +0000 | [diff] [blame] | 101 | "virtualizationservice", |
Inseob Kim | c2a710d | 2024-07-23 16:14:14 +0900 | [diff] [blame] | 102 | ] + select(release_flag("RELEASE_AVF_ENABLE_DEVICE_ASSIGNMENT"), { |
| 103 | true: ["vfio_handler"], |
| 104 | default: [], |
| 105 | }) + select(release_flag("RELEASE_AVF_ENABLE_NETWORK"), { |
| 106 | true: ["vmnic"], |
| 107 | default: [], |
Inseob Kim | 7c7d452 | 2024-08-01 23:46:39 +0900 | [diff] [blame] | 108 | }) + select(release_flag("RELEASE_AVF_ENABLE_EARLY_VM"), { |
| 109 | true: ["early_virtmgr"], |
| 110 | default: [], |
Inseob Kim | c2a710d | 2024-07-23 16:14:14 +0900 | [diff] [blame] | 111 | }), |
Victor Hsieh | 384bf6a | 2021-11-11 13:28:09 -0800 | [diff] [blame] | 112 | filesystems: microdroid_filesystem_images, |
Alice Wang | be8330c | 2023-10-19 08:55:07 +0000 | [diff] [blame] | 113 | prebuilts: [ |
| 114 | "rialto_bin", |
maciek swiech | bc53388 | 2024-09-11 19:27:59 +0000 | [diff] [blame] | 115 | "android_bootloader_crosvm_aarch64", |
Alice Wang | be8330c | 2023-10-19 08:55:07 +0000 | [diff] [blame] | 116 | ], |
Jiyong Park | 69b3937 | 2021-01-05 23:14:46 +0900 | [diff] [blame] | 117 | }, |
| 118 | x86_64: { |
| 119 | binaries: [ |
Jiyong Park | 2199f20 | 2020-12-07 15:58:47 +0900 | [diff] [blame] | 120 | "crosvm", |
David Brazdil | 1f53070 | 2022-10-03 12:18:10 +0100 | [diff] [blame] | 121 | "virtmgr", |
Andrew Walbran | dfc953d | 2021-06-10 13:59:56 +0000 | [diff] [blame] | 122 | "virtualizationservice", |
Inseob Kim | c2a710d | 2024-07-23 16:14:14 +0900 | [diff] [blame] | 123 | ] + select(release_flag("RELEASE_AVF_ENABLE_DEVICE_ASSIGNMENT"), { |
| 124 | true: ["vfio_handler"], |
| 125 | default: [], |
| 126 | }) + select(release_flag("RELEASE_AVF_ENABLE_NETWORK"), { |
| 127 | true: ["vmnic"], |
| 128 | default: [], |
Inseob Kim | 7c7d452 | 2024-08-01 23:46:39 +0900 | [diff] [blame] | 129 | }) + select(release_flag("RELEASE_AVF_ENABLE_EARLY_VM"), { |
| 130 | true: ["early_virtmgr"], |
| 131 | default: [], |
Inseob Kim | c2a710d | 2024-07-23 16:14:14 +0900 | [diff] [blame] | 132 | }), |
Victor Hsieh | 384bf6a | 2021-11-11 13:28:09 -0800 | [diff] [blame] | 133 | filesystems: microdroid_filesystem_images, |
maciek swiech | bc53388 | 2024-09-11 19:27:59 +0000 | [diff] [blame] | 134 | prebuilts: [ |
| 135 | "android_bootloader_crosvm_x86_64", |
| 136 | ], |
Jiyong Park | 2199f20 | 2020-12-07 15:58:47 +0900 | [diff] [blame] | 137 | }, |
| 138 | }, |
Jiyong Park | 8d1eb7e | 2021-02-16 13:23:00 +0900 | [diff] [blame] | 139 | binaries: [ |
Victor Hsieh | 573c649 | 2021-03-11 14:19:18 -0800 | [diff] [blame] | 140 | "fd_server", |
Andrew Walbran | ea9fa48 | 2021-03-04 16:11:12 +0000 | [diff] [blame] | 141 | "vm", |
Inseob Kim | 7c7d452 | 2024-08-01 23:46:39 +0900 | [diff] [blame] | 142 | ], |
Inseob Kim | 72f06a3 | 2021-04-12 14:48:42 +0900 | [diff] [blame] | 143 | prebuilts: [ |
Seungjae Yoo | e85831e | 2022-12-12 09:34:58 +0900 | [diff] [blame] | 144 | "microdroid_initrd_debuggable", |
Shikha Panwar | f46f96b | 2022-08-22 14:11:14 +0000 | [diff] [blame] | 145 | "microdroid_initrd_normal", |
Jiyong Park | e9b74d0 | 2021-06-21 14:39:12 +0900 | [diff] [blame] | 146 | "microdroid.json", |
Shikha Panwar | ed8ace4 | 2022-09-28 12:52:16 +0000 | [diff] [blame] | 147 | "microdroid_kernel", |
Alan Stokes | 1d2d415 | 2024-02-21 10:49:55 +0000 | [diff] [blame] | 148 | "com.android.virt.init.rc", |
Inseob Kim | c2a710d | 2024-07-23 16:14:14 +0900 | [diff] [blame] | 149 | ] + select(soong_config_variable("ANDROID", "avf_microdroid_guest_gki_version"), { |
| 150 | "android15_66": [ |
| 151 | "microdroid_gki-android15-6.6_initrd_debuggable", |
| 152 | "microdroid_gki-android15-6.6_initrd_normal", |
| 153 | "microdroid_gki-android15-6.6_kernel", |
| 154 | "microdroid_gki-android15-6.6.json", |
| 155 | ], |
| 156 | default: [], |
| 157 | }) + select(release_flag("RELEASE_AVF_ENABLE_DEVICE_ASSIGNMENT"), { |
| 158 | true: ["com.android.virt.vfio_handler.rc"], |
| 159 | default: [], |
| 160 | }) + select(release_flag("RELEASE_AVF_ENABLE_NETWORK"), { |
| 161 | true: ["com.android.virt.vmnic.rc"], |
| 162 | default: [], |
| 163 | }), |
Jiyong Park | 17e3ed4 | 2022-08-29 17:27:00 +0900 | [diff] [blame] | 164 | host_required: [ |
| 165 | "vm_shell", |
| 166 | ], |
Nikita Ioffe | b0b6756 | 2022-11-22 15:48:06 +0000 | [diff] [blame] | 167 | apps: [ |
| 168 | "EmptyPayloadApp", |
| 169 | ], |
Inseob Kim | c2a710d | 2024-07-23 16:14:14 +0900 | [diff] [blame] | 170 | androidManifest: select(release_flag("RELEASE_AVF_ENABLE_LLPVM_CHANGES"), { |
| 171 | true: "AndroidManifest.xml", |
| 172 | default: unset, |
| 173 | }), |
Kiyoung Kim | 0e359fb | 2024-10-11 17:06:20 +0900 | [diff] [blame] | 174 | vintf_fragment_modules: select(soong_config_variable("ANDROID", "avf_remote_attestation_enabled"), { |
Inseob Kim | c2a710d | 2024-07-23 16:14:14 +0900 | [diff] [blame] | 175 | "true": ["virtualizationservice.xml"], |
| 176 | default: unset, |
| 177 | }), |
Jiyong Park | da119cb | 2020-12-07 15:58:23 +0900 | [diff] [blame] | 178 | } |
| 179 | |
Nikita Ioffe | 50e2ebe | 2022-10-24 17:16:25 +0100 | [diff] [blame] | 180 | apex_defaults { |
| 181 | name: "com.android.virt_avf_disabled", |
| 182 | |
| 183 | defaults: ["com.android.virt_common"], |
| 184 | } |
| 185 | |
Jiyong Park | da119cb | 2020-12-07 15:58:23 +0900 | [diff] [blame] | 186 | apex_key { |
| 187 | name: "com.android.virt.key", |
| 188 | public_key: "com.android.virt.avbpubkey", |
| 189 | private_key: "com.android.virt.pem", |
| 190 | } |
| 191 | |
| 192 | android_app_certificate { |
| 193 | name: "com.android.virt.certificate", |
| 194 | certificate: "com.android.virt", |
| 195 | } |
Jeff Vander Stoep | 63ab238 | 2021-03-25 22:18:53 +0100 | [diff] [blame] | 196 | |
Inseob Kim | c2a710d | 2024-07-23 16:14:14 +0900 | [diff] [blame] | 197 | genrule { |
Alan Stokes | 1d2d415 | 2024-02-21 10:49:55 +0000 | [diff] [blame] | 198 | name: "virtualizationservice_rc_combined", |
Inseob Kim | c2a710d | 2024-07-23 16:14:14 +0900 | [diff] [blame] | 199 | srcs: [ |
| 200 | "virtualizationservice.rc.base", |
| 201 | ] + select(release_flag("RELEASE_AVF_ENABLE_LLPVM_CHANGES"), { |
| 202 | true: ["virtualizationservice.rc.llpvm"], |
| 203 | default: [], |
| 204 | }) + select(soong_config_variable("ANDROID", "avf_remote_attestation_enabled"), { |
| 205 | "true": ["virtualizationservice.rc.ra"], |
| 206 | default: [], |
| 207 | }), |
Alan Stokes | 1d2d415 | 2024-02-21 10:49:55 +0000 | [diff] [blame] | 208 | out: ["virtualizationservice.rc"], |
| 209 | cmd: "cat $(in) > $(out)", |
Alice Wang | b5b9032 | 2023-11-14 07:38:18 +0000 | [diff] [blame] | 210 | } |
| 211 | |
| 212 | prebuilt_etc { |
Alan Stokes | 1d2d415 | 2024-02-21 10:49:55 +0000 | [diff] [blame] | 213 | name: "com.android.virt.init.rc", |
| 214 | src: ":virtualizationservice_rc_combined", |
Alice Wang | b5b9032 | 2023-11-14 07:38:18 +0000 | [diff] [blame] | 215 | filename: "virtualizationservice.rc", |
Seungjae Yoo | 13af0b6 | 2024-05-20 14:15:13 +0900 | [diff] [blame] | 216 | no_full_install: true, |
Jeff Vander Stoep | 63ab238 | 2021-03-25 22:18:53 +0100 | [diff] [blame] | 217 | } |
Jooyung Han | 504105f | 2021-10-26 15:54:50 +0900 | [diff] [blame] | 218 | |
Nikita Ioffe | 94a8a18 | 2023-11-16 16:37:48 +0000 | [diff] [blame] | 219 | prebuilt_etc { |
| 220 | name: "com.android.virt.vfio_handler.rc", |
| 221 | src: "vfio_handler.rc", |
| 222 | filename: "vfio_handler.rc", |
Seungjae Yoo | 13af0b6 | 2024-05-20 14:15:13 +0900 | [diff] [blame] | 223 | no_full_install: true, |
| 224 | } |
| 225 | |
| 226 | prebuilt_etc { |
| 227 | name: "com.android.virt.vmnic.rc", |
| 228 | src: "vmnic.rc", |
| 229 | filename: "vmnic.rc", |
| 230 | no_full_install: true, |
Nikita Ioffe | 94a8a18 | 2023-11-16 16:37:48 +0000 | [diff] [blame] | 231 | } |
| 232 | |
Jooyung Han | 504105f | 2021-10-26 15:54:50 +0900 | [diff] [blame] | 233 | // Virt apex needs a custom signer for its payload |
| 234 | python_binary_host { |
| 235 | name: "sign_virt_apex", |
| 236 | srcs: [ |
| 237 | "sign_virt_apex.py", |
| 238 | ], |
| 239 | version: { |
Jooyung Han | 504105f | 2021-10-26 15:54:50 +0900 | [diff] [blame] | 240 | py3: { |
Jooyung Han | 504105f | 2021-10-26 15:54:50 +0900 | [diff] [blame] | 241 | embedded_launcher: true, |
| 242 | }, |
| 243 | }, |
Jooyung Han | 05063d1 | 2021-10-27 01:50:51 +0900 | [diff] [blame] | 244 | required: [ |
Shikha Panwar | a7605cf | 2023-01-12 09:29:39 +0000 | [diff] [blame] | 245 | // sign_virt_apex should be runnable from outside the source tree, |
| 246 | // therefore, any required tool should be listed in build/make/core/Makefile as well. |
Jooyung Han | 05063d1 | 2021-10-27 01:50:51 +0900 | [diff] [blame] | 247 | "img2simg", |
Shikha Panwar | a7605cf | 2023-01-12 09:29:39 +0000 | [diff] [blame] | 248 | "initrd_bootconfig", |
Jooyung Han | 05063d1 | 2021-10-27 01:50:51 +0900 | [diff] [blame] | 249 | "lpmake", |
| 250 | "lpunpack", |
Inseob Kim | 2e2f48a | 2024-02-21 22:56:08 +0900 | [diff] [blame] | 251 | "lz4", |
Jooyung Han | 05063d1 | 2021-10-27 01:50:51 +0900 | [diff] [blame] | 252 | "simg2img", |
| 253 | ], |
Jooyung Han | 504105f | 2021-10-26 15:54:50 +0900 | [diff] [blame] | 254 | } |
Jooyung Han | d35952e | 2021-11-08 17:53:47 +0900 | [diff] [blame] | 255 | |
Jooyung Han | 02dceed | 2021-11-08 17:50:22 +0900 | [diff] [blame] | 256 | sh_test_host { |
| 257 | name: "sign_virt_apex_test", |
| 258 | src: "sign_virt_apex_test.sh", |
| 259 | test_config: "sign_virt_apex_test.xml", |
| 260 | data_bins: [ |
| 261 | // deapexer |
| 262 | "deapexer", |
| 263 | "debugfs_static", |
Dennis Shen | 28c7944 | 2022-11-08 14:26:13 +0000 | [diff] [blame] | 264 | "fsck.erofs", |
Jooyung Han | 02dceed | 2021-11-08 17:50:22 +0900 | [diff] [blame] | 265 | |
| 266 | // sign_virt_apex |
| 267 | "avbtool", |
| 268 | "img2simg", |
Shikha Panwar | a7605cf | 2023-01-12 09:29:39 +0000 | [diff] [blame] | 269 | "initrd_bootconfig", |
Jooyung Han | 02dceed | 2021-11-08 17:50:22 +0900 | [diff] [blame] | 270 | "lpmake", |
| 271 | "lpunpack", |
Inseob Kim | 2e2f48a | 2024-02-21 22:56:08 +0900 | [diff] [blame] | 272 | "lz4", |
Jooyung Han | 02dceed | 2021-11-08 17:50:22 +0900 | [diff] [blame] | 273 | "sign_virt_apex", |
| 274 | "simg2img", |
| 275 | ], |
| 276 | data_libs: [ |
| 277 | "libbase", |
| 278 | "libc++", |
| 279 | "libcrypto_utils", |
| 280 | "libcrypto", |
| 281 | "libext4_utils", |
| 282 | "liblog", |
| 283 | "liblp", |
| 284 | "libsparse", |
| 285 | "libz", |
| 286 | ], |
| 287 | data: [ |
| 288 | ":com.android.virt", |
Jooyung Han | 6afd667 | 2022-02-22 05:22:23 +0900 | [diff] [blame] | 289 | ":test.com.android.virt.pem", |
Jooyung Han | 02dceed | 2021-11-08 17:50:22 +0900 | [diff] [blame] | 290 | ], |
| 291 | test_suites: ["general-tests"], |
| 292 | } |
| 293 | |
Jooyung Han | 6afd667 | 2022-02-22 05:22:23 +0900 | [diff] [blame] | 294 | filegroup { |
| 295 | name: "test.com.android.virt.pem", |
| 296 | srcs: ["test.com.android.virt.pem"], |
| 297 | } |
| 298 | |
Jooyung Han | 1c3d2fa | 2022-02-24 02:35:59 +0900 | [diff] [blame] | 299 | filegroup { |
| 300 | name: "test2.com.android.virt.pem", |
| 301 | srcs: ["test2.com.android.virt.pem"], |
| 302 | } |
| 303 | |
Jooyung Han | d35952e | 2021-11-08 17:53:47 +0900 | [diff] [blame] | 304 | // custom tool to replace bytes in a file |
| 305 | python_binary_host { |
| 306 | name: "replace_bytes", |
| 307 | srcs: [ |
| 308 | "replace_bytes.py", |
| 309 | ], |
| 310 | version: { |
Jooyung Han | d35952e | 2021-11-08 17:53:47 +0900 | [diff] [blame] | 311 | py3: { |
Jooyung Han | d35952e | 2021-11-08 17:53:47 +0900 | [diff] [blame] | 312 | embedded_launcher: true, |
| 313 | }, |
| 314 | }, |
| 315 | } |
Nikita Ioffe | f28eec2 | 2022-10-18 23:17:34 +0100 | [diff] [blame] | 316 | |
| 317 | // Encapsulate the contributions made by the com.android.virt to the bootclasspath. |
| 318 | bootclasspath_fragment { |
| 319 | name: "com.android.virt-bootclasspath-fragment", |
| 320 | contents: ["framework-virtualization"], |
| 321 | apex_available: ["com.android.virt"], |
| 322 | |
| 323 | // The bootclasspath_fragments that provide APIs on which this depends. |
| 324 | fragments: [ |
| 325 | { |
| 326 | apex: "com.android.art", |
| 327 | module: "art-bootclasspath-fragment", |
| 328 | }, |
| 329 | ], |
| 330 | |
| 331 | // Additional stubs libraries that this fragment's contents use which are |
| 332 | // not provided by another bootclasspath_fragment. |
| 333 | additional_stubs: [ |
| 334 | "android-non-updatable", |
| 335 | ], |
| 336 | |
| 337 | hidden_api: { |
| 338 | |
| 339 | // This module does not contain any split packages. |
| 340 | split_packages: [], |
| 341 | |
| 342 | // The following packages and all their subpackages currently only |
| 343 | // contain classes from this bootclasspath_fragment. Listing a package |
| 344 | // here won't prevent other bootclasspath modules from adding classes in |
| 345 | // any of those packages but it will prevent them from adding those |
| 346 | // classes into an API surface, e.g. public, system, etc.. Doing so will |
| 347 | // result in a build failure due to inconsistent flags. |
| 348 | package_prefixes: [ |
| 349 | "android.system.virtualmachine", |
| 350 | "android.system.virtualizationservice", |
| 351 | // android.sysprop.*, renamed by jarjar |
| 352 | "com.android.system.virtualmachine.sysprop", |
| 353 | ], |
| 354 | }, |
| 355 | } |
Nikita Ioffe | ad4c719 | 2024-02-02 13:07:00 +0000 | [diff] [blame] | 356 | |
Inseob Kim | c2a710d | 2024-07-23 16:14:14 +0900 | [diff] [blame] | 357 | systemserverclasspath_fragment { |
Nikita Ioffe | ad4c719 | 2024-02-02 13:07:00 +0000 | [diff] [blame] | 358 | name: "com.android.virt-systemserver-fragment", |
| 359 | contents: [ |
| 360 | "service-virtualization", |
| 361 | ], |
| 362 | apex_available: ["com.android.virt"], |
Inseob Kim | c2a710d | 2024-07-23 16:14:14 +0900 | [diff] [blame] | 363 | enabled: select(release_flag("RELEASE_AVF_ENABLE_LLPVM_CHANGES"), { |
| 364 | true: true, |
| 365 | default: false, |
| 366 | }), |
Nikita Ioffe | ad4c719 | 2024-02-02 13:07:00 +0000 | [diff] [blame] | 367 | } |