apex

apex packages other modules into an APEX file which is a packaging format for system-level components like binaries, shared libraries, etc.
 name string, The name of the module. Must be unique across all modules.
 defaults list of string
 host_supported bool, If set to true, build a variant of the module for the host. Defaults to false.
 device_supported bool, If set to true, build a variant of the module for the device. Defaults to true.
 allowed_files string, A txt file containing list of files that are allowed to be included in this APEX.
 androidManifest string, AndroidManifest.xml file used for the zip container of this APEX bundle. If unspecified, a default one is automatically generated.
 apps list of string, List of APKs that are embedded inside this APEX.
 arch interface
arch.arm
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
arch.arm64
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
arch.riscv64
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
arch.x86
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
arch.x86_64
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
bazel_module bazelModuleProperties
In "Bazel mixed build" mode, this represents the Bazel target replacing this Soong module.
 label string, The label of the Bazel target replacing this Soong module. When run in conversion mode, this will import the handcrafted build target into the autogenerated file. Note: this may result in a conflict due to duplicate targets if bp2build_available is also set.
 bp2build_available bool, If true, bp2build will generate the converted Bazel target for this module. Note: this may cause a conflict due to the duplicate targets if label is also set. This is a bool pointer to support tristates: true, false, not set. To opt in a module, set bazel_module: { bp2build_available: true } To opt out a module, set bazel_module: { bp2build_available: false } To defer the default setting for the directory, do not set the value.
 binaries list of string, List of native executables that are embedded inside this APEX.
 bootclasspath_fragments list of string, List of bootclasspath fragments that are embedded inside this APEX bundle.
 bpfs list of string, List of BPF programs inside this APEX bundle.
 canned_fs_config string, Path to the canned fs config file for customizing file's uid/gid/mod/capabilities. The content of this file is appended to the default config, so that the custom entries are preferred. The format is /<path_or_glob> <uid> <gid> <mode> [capabilities=0x<cap>], where path_or_glob is a path or glob pattern for a file or set of files, uid/gid are numerial values of user ID and group ID, mode is octal value for the file mode, and cap is hexadecimal value for the capability.
 certificate string, Specifies the certificate and the private key to sign the zip container of this APEX. If this is "foo", foo.x509.pem and foo.pk8 under PRODUCT_DEFAULT_DEV_CERTIFICATE are used as the certificate and the private key, respectively. If this is ":module", then the certificate and the private key are provided from the android_app_certificate module named "module".
 compat_configs list of string, List of platform_compat_config files that are embedded inside this APEX bundle.
 compile_multilib string, control whether this module compiles for 32-bit, 64-bit, or both. Possible values are "32" (compile for 32-bit only), "64" (compile for 64-bit only), "both" (compile for both architectures), or "first" (compile for 64-bit on a 64-bit platform, and 32-bit on a 32-bit platform).
 compressible bool, Whether this APEX can be compressed or not. Setting this property to false means this APEX will never be compressed. When set to true, APEX will be compressed if other conditions, e.g., target device needs to support APEX compression, are also fulfilled. Default: false.
 custom_sign_tool string, Put extra tags (signer=<value>) to apexkeys.txt, so that release tools can sign this apex with the tool to sign payload contents.
 debug_ramdisk bool, Whether this module is installed to debug ramdisk
 device_specific bool, whether this module is specific to a device, not only for SoC, but also for off-chip peripherals. When set to true, it is installed into /odm (or /vendor/odm if odm partition does not exist, or /system/vendor/odm if both odm and vendor partitions do not exist). This implies `soc_specific:true`.
dist Dist
configuration to distribute output files from this module to the distribution directory (default: $OUT/dist, configurable with $DIST_DIR)
 targets list of string, Copy the output of this module to the $DIST_DIR when `dist` is specified on the command line and any of these targets are also on the command line, or otherwise built
 dest string, The name of the output artifact. This defaults to the basename of the output of the module.
 dir string, The directory within the dist directory to store the artifact. Defaults to the top level directory ("").
 suffix string, A suffix to add to the artifact file name (before any extension).
 append_artifact_with_product bool, If true, then the artifact file will be appended with _<product name>. For example, if the product is coral and the module is an android_app module of name foo, then the artifact would be foo_coral.apk. If false, there is no change to the artifact file name.
 tag string, A string tag to select the OutputFiles associated with the tag. If no tag is specified then it will select the default dist paths provided by the module type. If a tag of "" is specified then it will return the default output files provided by the modules, i.e. the result of calling OutputFiles("").
 dists list of Dist, a list of configurations to distribute output files from this module to the distribution directory (default: $OUT/dist, configurable with $DIST_DIR)
 dynamic_common_lib_apex bool, Whether this is a dynamic common lib apex, if so the native shared libs will be placed in a special way that include the digest of the lib file under /lib(64)?
 enabled bool, emit build rules for this module Disabling a module should only be done for those modules that cannot be built in the current environment. Modules that can build in the current environment but are not usually required (e.g. superceded by a prebuilt) should not be disabled as that will prevent them from being built by the checkbuild target and so prevent early detection of changes that have broken those modules.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 export bool, True if the module is exported to the other components in a multi-tree. Any components in the multi-tree can import this module to use.
 file_contexts string, Determines the file contexts file for setting the security contexts to files in this APEX bundle. For platform APEXes, this should points to a file under /system/sepolicy Default: /system/sepolicy/apex/<module_name>_file_contexts.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 future_updatable bool, Marks that this APEX is designed to be updatable in the future, although it's not updatable yet. This is used to mimic some of the build behaviors that are applied only to updatable APEXes. Currently, this disables the size optimization, so that the size of APEX will not increase when the APEX is actually marked as truly updatable. Default is false.
 generate_hashtree bool, Whenever apex_payload.img of the APEX should include dm-verity hashtree. Default value is true.
 host_required list of string, names of other modules to install on host if this module is installed
 ignore_system_library_special_case bool, For telling the APEX to ignore special handling for system libraries such as bionic. Default is false.
 init_rc list of string, init.rc files to be installed if this module is installed
 installable bool, Whether this APEX is installable to one of the partitions like system, vendor, etc. Default: true.
 java_libs list of string, List of java libraries that are embedded inside this APEX bundle.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 key string, Name of the apex_key module that provides the private key to sign this APEX bundle.
 licenses list of string, Describes the licenses applicable to this module. Must reference license modules.
 logging_parent string, Logging parent value.
 manifest string, Json manifest file describing meta info of this APEX bundle. Refer to system/apex/proto/apex_manifest.proto for the schema. Default: "apex_manifest.json"
 min_sdk_version string, The minimum SDK version that this APEX must support at minimum. This is usually set to the SDK version that the APEX was first introduced.
 multilib interface
multilib.both ApexNativeDependencies
Native dependencies whose compile_multilib is "both"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.first ApexNativeDependencies
Native dependencies whose compile_multilib is "first"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib32 ApexNativeDependencies
Native dependencies whose compile_multilib is "32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib64 ApexNativeDependencies
Native dependencies whose compile_multilib is "64"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.prefer32 ApexNativeDependencies
Native dependencies whose compile_multilib is "prefer32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
 native_bridge_supported bool, Whether this module is built for non-native architectures (also known as native bridge binary)
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 overrides list of string, Names of modules to be overridden. Listed modules can only be other binaries (in Make or Soong). This does not completely prevent installation of the overridden binaries, but if both binaries would be installed by default (in PRODUCT_PACKAGES) the other binary will be removed from PRODUCT_PACKAGES.
 owner string, vendor who owns this module
 package_name string, Apex Container package name. Override value for attribute package:name in AndroidManifest.xml
 payload_fs_type string, The type of filesystem to use when the payload_type is 'image'. Either 'ext4', 'f2fs' or 'erofs'. Default 'ext4'.
 payload_type string, The type of APEX to build. Controls what the APEX payload is. Either 'image', 'zip' or 'both'. When set to image, contents are stored in a filesystem image inside a zip container. When set to zip, contents are stored in a zip container directly. This type is mostly for host-side debugging. When set to both, the two types are both built. Default is 'image'.
 platform_apis bool, Whether this APEX can use platform APIs or not. Can be set to true only when `updatable: false`. Default is false.
 prebuilts list of string, List of prebuilt files that are embedded inside this APEX bundle.
 product_specific bool, whether this module is specific to a software configuration of a product (e.g. country, network operator, etc). When set to true, it is installed into /product (or /system/product if product partition does not exist).
product_variables.always_use_prebuilt_sdks
enabled
  *bool
product_variables.debuggable
init_rc
  []string
required
  []string
host_required
  []string
target_required
  []string
product_variables.flatten_apex
enabled
  *bool
product_variables.pdk
enabled
  *bool
product_variables.unbundled_build
enabled
  *bool
 proprietary bool, whether this is a proprietary vendor module, and should be installed into /vendor
 ramdisk bool, Whether this module is installed to ramdisk
 recovery bool, Whether this module is installed to recovery partition
 required list of string, names of other modules to install if this module is installed
 rros list of string, List of runtime resource overlays (RROs) that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 sh_binaries list of string, List of sh binaries that are embedded inside this APEX bundle.
 soc_specific bool, whether this module is specific to an SoC (System-On-a-Chip). When set to true, it is installed into /vendor (or /system/vendor if vendor partition does not exist).
 system_ext_specific bool, whether this module extends system. When set to true, it is installed into /system_ext (or /system/system_ext if system_ext partition does not exist).
 systemserverclasspath_fragments list of string, List of systemserverclasspath fragments that are embedded inside this APEX bundle.
 target interface
target.android
Multilib properties only for android.
multilib.first ApexNativeDependencies
Native dependencies whose compile_multilib is "first"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.both ApexNativeDependencies
Native dependencies whose compile_multilib is "both"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.prefer32 ApexNativeDependencies
Native dependencies whose compile_multilib is "prefer32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib32 ApexNativeDependencies
Native dependencies whose compile_multilib is "32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib64 ApexNativeDependencies
Native dependencies whose compile_multilib is "64"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
 compile_multilib string
target.host
Multilib properties only for host.
multilib.first ApexNativeDependencies
Native dependencies whose compile_multilib is "first"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.both ApexNativeDependencies
Native dependencies whose compile_multilib is "both"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.prefer32 ApexNativeDependencies
Native dependencies whose compile_multilib is "prefer32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib32 ApexNativeDependencies
Native dependencies whose compile_multilib is "32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib64 ApexNativeDependencies
Native dependencies whose compile_multilib is "64"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
 compile_multilib string
target.linux_bionic
Multilib properties only for host linux_bionic.
multilib.first ApexNativeDependencies
Native dependencies whose compile_multilib is "first"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.both ApexNativeDependencies
Native dependencies whose compile_multilib is "both"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.prefer32 ApexNativeDependencies
Native dependencies whose compile_multilib is "prefer32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib32 ApexNativeDependencies
Native dependencies whose compile_multilib is "32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib64 ApexNativeDependencies
Native dependencies whose compile_multilib is "64"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
target.linux_glibc
Multilib properties only for host linux_glibc.
multilib.first ApexNativeDependencies
Native dependencies whose compile_multilib is "first"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.both ApexNativeDependencies
Native dependencies whose compile_multilib is "both"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.prefer32 ApexNativeDependencies
Native dependencies whose compile_multilib is "prefer32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib32 ApexNativeDependencies
Native dependencies whose compile_multilib is "32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib64 ApexNativeDependencies
Native dependencies whose compile_multilib is "64"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
 target_required list of string, names of other modules to install on target if this module is installed
 test_only_force_compression bool, Whenever apex should be compressed, regardless of product flag used. Should be only used in tests.
 test_only_unsigned_payload bool, Whenever apex_payload.img of the APEX should not be dm-verity signed. Should be only used in tests.
 tests list of string, List of native tests that are embedded inside this APEX.
 trim_against string, Trim against a specific Dynamic Common Lib APEX
 updatable bool, Whether this APEX is considered updatable or not. When set to true, this will enforce additional rules for making sure that the APEX is truly updatable. To be updatable, min_sdk_version should be set as well. This will also disable the size optimizations like symlinking to the system libs. Default is true.
 use_file_contexts_as_is bool, By default, file_contexts is amended by force-labelling / and /apex_manifest.pb as system_file to avoid mistakes. When set as true, no force-labelling.
 use_vndk_as_stable bool, If set true, VNDK libs are considered as stable libs and are not included in this APEX. Should be only used in non-system apexes (e.g. vendor: true). Default is false.
 vendor bool, whether this module is specific to an SoC (System-On-a-Chip). When set to true, it is installed into /vendor (or /system/vendor if vendor partition does not exist). Use `soc_specific` instead for better meaning.
 vendor_ramdisk bool, Whether this module is installed to vendor ramdisk
 vintf_fragments list of string, VINTF manifest fragments to be installed if this module is installed
 visibility list of string, Controls the visibility of this module to other modules. Allowable values are one or more of these formats:

 ["//visibility:public"]: Anyone can use this module.
 ["//visibility:private"]: Only rules in the module's package (not its subpackages) can use
     this module.
 ["//visibility:override"]: Discards any rules inherited from defaults or a creating module.
     Can only be used at the beginning of a list of visibility rules.
 ["//some/package:__pkg__", "//other/package:__pkg__"]: Only modules in some/package and
     other/package (defined in some/package/*.bp and other/package/*.bp) have access to
     this module. Note that sub-packages do not have access to the rule; for example,
     //some/package/foo:bar or //other/package/testing:bla wouldn't have access. __pkg__
     is a special module and must be used verbatim. It represents all of the modules in the
     package.
 ["//project:__subpackages__", "//other:__subpackages__"]: Only modules in packages project
     or other or in one of their sub-packages have access to this module. For example,
     //project:rule, //project/library:lib or //other/testing/internal:munge are allowed
     to depend on this rule (but not //independent:evil)
 ["//project"]: This is shorthand for ["//project:__pkg__"]
 [":__subpackages__"]: This is shorthand for ["//project:__subpackages__"] where
     //project is the module's package. e.g. using [":__subpackages__"] in
     packages/apps/Settings/Android.bp is equivalent to
     //packages/apps/Settings:__subpackages__.
 ["//visibility:legacy_public"]: The default visibility, behaves as //visibility:public
     for now. It is an error if it is used in a module.

If a module does not specify the `visibility` property then it uses the `default_visibility` property of the `package` module in the module's package. If the `default_visibility` property is not set for the module's package then it will use the `default_visibility` of its closest ancestor package for which a `default_visibility` property is specified. If no `default_visibility` property can be found then the module uses the global default of `//visibility:legacy_public`. The `visibility` property has no effect on a defaults module although it does apply to any non-defaults module that uses it. To set the visibility of a defaults module, use the `defaults_visibility` property on the defaults module; not to be confused with the `default_visibility` property on the package module. See https://android.googlesource.com/platform/build/soong/+/master/README.md#visibility for more details.

apex_defaults

apex_defaults provides defaultable properties to other apex modules.
 name string, The name of the module. Must be unique across all modules.
 defaults list of string
 host_supported bool, If set to true, build a variant of the module for the host. Defaults to false.
 device_supported bool, If set to true, build a variant of the module for the device. Defaults to true.
 allowed_files string, A txt file containing list of files that are allowed to be included in this APEX.
 androidManifest string, AndroidManifest.xml file used for the zip container of this APEX bundle. If unspecified, a default one is automatically generated.
 apex_available list of string, Availability of this module in APEXes. Only the listed APEXes can contain this module. If the module has stubs then other APEXes and the platform may access it through them (subject to visibility). "//apex_available:anyapex" is a pseudo APEX name that matches to any APEX. "//apex_available:platform" refers to non-APEX partitions like "system.img". "com.android.gki.*" matches any APEX module name with the prefix "com.android.gki.". Default is ["//apex_available:platform"].
 apps list of string, List of APKs that are embedded inside this APEX.
 arch interface
arch.arm
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
arch.arm64
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
arch.riscv64
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
arch.x86
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
arch.x86_64
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
bazel_module bazelModuleProperties
In "Bazel mixed build" mode, this represents the Bazel target replacing this Soong module.
 label string, The label of the Bazel target replacing this Soong module. When run in conversion mode, this will import the handcrafted build target into the autogenerated file. Note: this may result in a conflict due to duplicate targets if bp2build_available is also set.
 bp2build_available bool, If true, bp2build will generate the converted Bazel target for this module. Note: this may cause a conflict due to the duplicate targets if label is also set. This is a bool pointer to support tristates: true, false, not set. To opt in a module, set bazel_module: { bp2build_available: true } To opt out a module, set bazel_module: { bp2build_available: false } To defer the default setting for the directory, do not set the value.
 binaries list of string, List of native executables that are embedded inside this APEX.
 bootclasspath_fragments list of string, List of bootclasspath fragments that are embedded inside this APEX bundle.
 bpfs list of string, List of BPF programs inside this APEX bundle.
 canned_fs_config string, Path to the canned fs config file for customizing file's uid/gid/mod/capabilities. The content of this file is appended to the default config, so that the custom entries are preferred. The format is /<path_or_glob> <uid> <gid> <mode> [capabilities=0x<cap>], where path_or_glob is a path or glob pattern for a file or set of files, uid/gid are numerial values of user ID and group ID, mode is octal value for the file mode, and cap is hexadecimal value for the capability.
 certificate string, Specifies the certificate and the private key to sign the zip container of this APEX. If this is "foo", foo.x509.pem and foo.pk8 under PRODUCT_DEFAULT_DEV_CERTIFICATE are used as the certificate and the private key, respectively. If this is ":module", then the certificate and the private key are provided from the android_app_certificate module named "module".
 compat_configs list of string, List of platform_compat_config files that are embedded inside this APEX bundle.
 compile_multilib string, control whether this module compiles for 32-bit, 64-bit, or both. Possible values are "32" (compile for 32-bit only), "64" (compile for 64-bit only), "both" (compile for both architectures), or "first" (compile for 64-bit on a 64-bit platform, and 32-bit on a 32-bit platform).
 compressible bool, Whether this APEX can be compressed or not. Setting this property to false means this APEX will never be compressed. When set to true, APEX will be compressed if other conditions, e.g., target device needs to support APEX compression, are also fulfilled. Default: false.
 custom_sign_tool string, Put extra tags (signer=<value>) to apexkeys.txt, so that release tools can sign this apex with the tool to sign payload contents.
 debug_ramdisk bool, Whether this module is installed to debug ramdisk
 defaults_visibility list of string, Controls the visibility of the defaults module itself.
 device_specific bool, whether this module is specific to a device, not only for SoC, but also for off-chip peripherals. When set to true, it is installed into /odm (or /vendor/odm if odm partition does not exist, or /system/vendor/odm if both odm and vendor partitions do not exist). This implies `soc_specific:true`.
dist Dist
configuration to distribute output files from this module to the distribution directory (default: $OUT/dist, configurable with $DIST_DIR)
 targets list of string, Copy the output of this module to the $DIST_DIR when `dist` is specified on the command line and any of these targets are also on the command line, or otherwise built
 dest string, The name of the output artifact. This defaults to the basename of the output of the module.
 dir string, The directory within the dist directory to store the artifact. Defaults to the top level directory ("").
 suffix string, A suffix to add to the artifact file name (before any extension).
 append_artifact_with_product bool, If true, then the artifact file will be appended with _<product name>. For example, if the product is coral and the module is an android_app module of name foo, then the artifact would be foo_coral.apk. If false, there is no change to the artifact file name.
 tag string, A string tag to select the OutputFiles associated with the tag. If no tag is specified then it will select the default dist paths provided by the module type. If a tag of "" is specified then it will return the default output files provided by the modules, i.e. the result of calling OutputFiles("").
 dists list of Dist, a list of configurations to distribute output files from this module to the distribution directory (default: $OUT/dist, configurable with $DIST_DIR)
 dynamic_common_lib_apex bool, Whether this is a dynamic common lib apex, if so the native shared libs will be placed in a special way that include the digest of the lib file under /lib(64)?
 enabled bool, emit build rules for this module Disabling a module should only be done for those modules that cannot be built in the current environment. Modules that can build in the current environment but are not usually required (e.g. superceded by a prebuilt) should not be disabled as that will prevent them from being built by the checkbuild target and so prevent early detection of changes that have broken those modules.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 file_contexts string, Determines the file contexts file for setting the security contexts to files in this APEX bundle. For platform APEXes, this should points to a file under /system/sepolicy Default: /system/sepolicy/apex/<module_name>_file_contexts.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 future_updatable bool, Marks that this APEX is designed to be updatable in the future, although it's not updatable yet. This is used to mimic some of the build behaviors that are applied only to updatable APEXes. Currently, this disables the size optimization, so that the size of APEX will not increase when the APEX is actually marked as truly updatable. Default is false.
 generate_hashtree bool, Whenever apex_payload.img of the APEX should include dm-verity hashtree. Default value is true.
 host_required list of string, names of other modules to install on host if this module is installed
 ignore_system_library_special_case bool, For telling the APEX to ignore special handling for system libraries such as bionic. Default is false.
 init_rc list of string, init.rc files to be installed if this module is installed
 installable bool, Whether this APEX is installable to one of the partitions like system, vendor, etc. Default: true.
 java_libs list of string, List of java libraries that are embedded inside this APEX bundle.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 key string, Name of the apex_key module that provides the private key to sign this APEX bundle.
 licenses list of string, Describes the licenses applicable to this module. Must reference license modules.
 logging_parent string, Logging parent value.
 manifest string, Json manifest file describing meta info of this APEX bundle. Refer to system/apex/proto/apex_manifest.proto for the schema. Default: "apex_manifest.json"
 min_sdk_version string, The minimum SDK version that this APEX must support at minimum. This is usually set to the SDK version that the APEX was first introduced.
 multilib interface
multilib.both ApexNativeDependencies
Native dependencies whose compile_multilib is "both"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.first ApexNativeDependencies
Native dependencies whose compile_multilib is "first"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib32 ApexNativeDependencies
Native dependencies whose compile_multilib is "32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib64 ApexNativeDependencies
Native dependencies whose compile_multilib is "64"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.prefer32 ApexNativeDependencies
Native dependencies whose compile_multilib is "prefer32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
 native_bridge_supported bool, Whether this module is built for non-native architectures (also known as native bridge binary)
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 overrides list of string, Names of modules to be overridden. Listed modules can only be other binaries (in Make or Soong). This does not completely prevent installation of the overridden binaries, but if both binaries would be installed by default (in PRODUCT_PACKAGES) the other binary will be removed from PRODUCT_PACKAGES.
 owner string, vendor who owns this module
 package_name string, Apex Container package name. Override value for attribute package:name in AndroidManifest.xml
 payload_fs_type string, The type of filesystem to use when the payload_type is 'image'. Either 'ext4', 'f2fs' or 'erofs'. Default 'ext4'.
 payload_type string, The type of APEX to build. Controls what the APEX payload is. Either 'image', 'zip' or 'both'. When set to image, contents are stored in a filesystem image inside a zip container. When set to zip, contents are stored in a zip container directly. This type is mostly for host-side debugging. When set to both, the two types are both built. Default is 'image'.
 platform_apis bool, Whether this APEX can use platform APIs or not. Can be set to true only when `updatable: false`. Default is false.
 prebuilts list of string, List of prebuilt files that are embedded inside this APEX bundle.
 product_specific bool, whether this module is specific to a software configuration of a product (e.g. country, network operator, etc). When set to true, it is installed into /product (or /system/product if product partition does not exist).
product_variables.always_use_prebuilt_sdks
enabled
  *bool
product_variables.debuggable
init_rc
  []string
required
  []string
host_required
  []string
target_required
  []string
product_variables.flatten_apex
enabled
  *bool
product_variables.pdk
enabled
  *bool
product_variables.unbundled_build
enabled
  *bool
 proprietary bool, whether this is a proprietary vendor module, and should be installed into /vendor
 ramdisk bool, Whether this module is installed to ramdisk
 recovery bool, Whether this module is installed to recovery partition
 required list of string, names of other modules to install if this module is installed
 rros list of string, List of runtime resource overlays (RROs) that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 sh_binaries list of string, List of sh binaries that are embedded inside this APEX bundle.
 soc_specific bool, whether this module is specific to an SoC (System-On-a-Chip). When set to true, it is installed into /vendor (or /system/vendor if vendor partition does not exist).
 system_ext_specific bool, whether this module extends system. When set to true, it is installed into /system_ext (or /system/system_ext if system_ext partition does not exist).
 systemserverclasspath_fragments list of string, List of systemserverclasspath fragments that are embedded inside this APEX bundle.
 target interface
target.android
 compile_multilib string
multilib.first ApexNativeDependencies
Native dependencies whose compile_multilib is "first"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.both ApexNativeDependencies
Native dependencies whose compile_multilib is "both"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.prefer32 ApexNativeDependencies
Native dependencies whose compile_multilib is "prefer32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib32 ApexNativeDependencies
Native dependencies whose compile_multilib is "32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib64 ApexNativeDependencies
Native dependencies whose compile_multilib is "64"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
target.host
Multilib properties only for host.
multilib.first ApexNativeDependencies
Native dependencies whose compile_multilib is "first"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.both ApexNativeDependencies
Native dependencies whose compile_multilib is "both"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.prefer32 ApexNativeDependencies
Native dependencies whose compile_multilib is "prefer32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib32 ApexNativeDependencies
Native dependencies whose compile_multilib is "32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib64 ApexNativeDependencies
Native dependencies whose compile_multilib is "64"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
 compile_multilib string
target.linux_bionic
Multilib properties only for host linux_bionic.
multilib.first ApexNativeDependencies
Native dependencies whose compile_multilib is "first"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.both ApexNativeDependencies
Native dependencies whose compile_multilib is "both"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.prefer32 ApexNativeDependencies
Native dependencies whose compile_multilib is "prefer32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib32 ApexNativeDependencies
Native dependencies whose compile_multilib is "32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib64 ApexNativeDependencies
Native dependencies whose compile_multilib is "64"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
target.linux_glibc
Multilib properties only for host linux_glibc.
multilib.first ApexNativeDependencies
Native dependencies whose compile_multilib is "first"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.both ApexNativeDependencies
Native dependencies whose compile_multilib is "both"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.prefer32 ApexNativeDependencies
Native dependencies whose compile_multilib is "prefer32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib32 ApexNativeDependencies
Native dependencies whose compile_multilib is "32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib64 ApexNativeDependencies
Native dependencies whose compile_multilib is "64"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
 target_required list of string, names of other modules to install on target if this module is installed
 test_only_force_compression bool, Whenever apex should be compressed, regardless of product flag used. Should be only used in tests.
 test_only_unsigned_payload bool, Whenever apex_payload.img of the APEX should not be dm-verity signed. Should be only used in tests.
 tests list of string, List of native tests that are embedded inside this APEX.
 trim_against string, Trim against a specific Dynamic Common Lib APEX
 updatable bool, Whether this APEX is considered updatable or not. When set to true, this will enforce additional rules for making sure that the APEX is truly updatable. To be updatable, min_sdk_version should be set as well. This will also disable the size optimizations like symlinking to the system libs. Default is true.
 use_file_contexts_as_is bool, By default, file_contexts is amended by force-labelling / and /apex_manifest.pb as system_file to avoid mistakes. When set as true, no force-labelling.
 use_vndk_as_stable bool, If set true, VNDK libs are considered as stable libs and are not included in this APEX. Should be only used in non-system apexes (e.g. vendor: true). Default is false.
 vendor bool, whether this module is specific to an SoC (System-On-a-Chip). When set to true, it is installed into /vendor (or /system/vendor if vendor partition does not exist). Use `soc_specific` instead for better meaning.
 vendor_ramdisk bool, Whether this module is installed to vendor ramdisk
 vintf_fragments list of string, VINTF manifest fragments to be installed if this module is installed
 visibility list of string, Controls the visibility of this module to other modules. Allowable values are one or more of these formats:

 ["//visibility:public"]: Anyone can use this module.
 ["//visibility:private"]: Only rules in the module's package (not its subpackages) can use
     this module.
 ["//visibility:override"]: Discards any rules inherited from defaults or a creating module.
     Can only be used at the beginning of a list of visibility rules.
 ["//some/package:__pkg__", "//other/package:__pkg__"]: Only modules in some/package and
     other/package (defined in some/package/*.bp and other/package/*.bp) have access to
     this module. Note that sub-packages do not have access to the rule; for example,
     //some/package/foo:bar or //other/package/testing:bla wouldn't have access. __pkg__
     is a special module and must be used verbatim. It represents all of the modules in the
     package.
 ["//project:__subpackages__", "//other:__subpackages__"]: Only modules in packages project
     or other or in one of their sub-packages have access to this module. For example,
     //project:rule, //project/library:lib or //other/testing/internal:munge are allowed
     to depend on this rule (but not //independent:evil)
 ["//project"]: This is shorthand for ["//project:__pkg__"]
 [":__subpackages__"]: This is shorthand for ["//project:__subpackages__"] where
     //project is the module's package. e.g. using [":__subpackages__"] in
     packages/apps/Settings/Android.bp is equivalent to
     //packages/apps/Settings:__subpackages__.
 ["//visibility:legacy_public"]: The default visibility, behaves as //visibility:public
     for now. It is an error if it is used in a module.

If a module does not specify the `visibility` property then it uses the `default_visibility` property of the `package` module in the module's package. If the `default_visibility` property is not set for the module's package then it will use the `default_visibility` of its closest ancestor package for which a `default_visibility` property is specified. If no `default_visibility` property can be found then the module uses the global default of `//visibility:legacy_public`. The `visibility` property has no effect on a defaults module although it does apply to any non-defaults module that uses it. To set the visibility of a defaults module, use the `defaults_visibility` property on the defaults module; not to be confused with the `default_visibility` property on the package module. See https://android.googlesource.com/platform/build/soong/+/master/README.md#visibility for more details.

apex_key

 name string, The name of the module. Must be unique across all modules.
 host_supported bool, If set to true, build a variant of the module for the host. Defaults to false.
 device_supported bool, If set to true, build a variant of the module for the device. Defaults to true.
 arch interface
bazel_module bazelModuleProperties
In "Bazel mixed build" mode, this represents the Bazel target replacing this Soong module.
 label string, The label of the Bazel target replacing this Soong module. When run in conversion mode, this will import the handcrafted build target into the autogenerated file. Note: this may result in a conflict due to duplicate targets if bp2build_available is also set.
 bp2build_available bool, If true, bp2build will generate the converted Bazel target for this module. Note: this may cause a conflict due to the duplicate targets if label is also set. This is a bool pointer to support tristates: true, false, not set. To opt in a module, set bazel_module: { bp2build_available: true } To opt out a module, set bazel_module: { bp2build_available: false } To defer the default setting for the directory, do not set the value.
 compile_multilib string, control whether this module compiles for 32-bit, 64-bit, or both. Possible values are "32" (compile for 32-bit only), "64" (compile for 64-bit only), "both" (compile for both architectures), or "first" (compile for 64-bit on a 64-bit platform, and 32-bit on a 32-bit platform).
 debug_ramdisk bool, Whether this module is installed to debug ramdisk
 device_specific bool, whether this module is specific to a device, not only for SoC, but also for off-chip peripherals. When set to true, it is installed into /odm (or /vendor/odm if odm partition does not exist, or /system/vendor/odm if both odm and vendor partitions do not exist). This implies `soc_specific:true`.
dist Dist
configuration to distribute output files from this module to the distribution directory (default: $OUT/dist, configurable with $DIST_DIR)
 targets list of string, Copy the output of this module to the $DIST_DIR when `dist` is specified on the command line and any of these targets are also on the command line, or otherwise built
 dest string, The name of the output artifact. This defaults to the basename of the output of the module.
 dir string, The directory within the dist directory to store the artifact. Defaults to the top level directory ("").
 suffix string, A suffix to add to the artifact file name (before any extension).
 append_artifact_with_product bool, If true, then the artifact file will be appended with _<product name>. For example, if the product is coral and the module is an android_app module of name foo, then the artifact would be foo_coral.apk. If false, there is no change to the artifact file name.
 tag string, A string tag to select the OutputFiles associated with the tag. If no tag is specified then it will select the default dist paths provided by the module type. If a tag of "" is specified then it will return the default output files provided by the modules, i.e. the result of calling OutputFiles("").
 dists list of Dist, a list of configurations to distribute output files from this module to the distribution directory (default: $OUT/dist, configurable with $DIST_DIR)
 enabled bool, emit build rules for this module Disabling a module should only be done for those modules that cannot be built in the current environment. Modules that can build in the current environment but are not usually required (e.g. superceded by a prebuilt) should not be disabled as that will prevent them from being built by the checkbuild target and so prevent early detection of changes that have broken those modules.
 host_required list of string, names of other modules to install on host if this module is installed
 init_rc list of string, init.rc files to be installed if this module is installed
 installable bool, Whether this key is installable to one of the partitions. Defualt: true.
 licenses list of string, Describes the licenses applicable to this module. Must reference license modules.
 multilib interface
 native_bridge_supported bool, Whether this module is built for non-native architectures (also known as native bridge binary)
 owner string, vendor who owns this module
 private_key string, Path or module to the private key file in pem format. Used to sign APEXs.
 product_specific bool, whether this module is specific to a software configuration of a product (e.g. country, network operator, etc). When set to true, it is installed into /product (or /system/product if product partition does not exist).
product_variables.always_use_prebuilt_sdks
enabled
  *bool
product_variables.debuggable
init_rc
  []string
required
  []string
host_required
  []string
target_required
  []string
product_variables.flatten_apex
enabled
  *bool
product_variables.pdk
enabled
  *bool
product_variables.unbundled_build
enabled
  *bool
 proprietary bool, whether this is a proprietary vendor module, and should be installed into /vendor
 public_key string, Path or module to the public key file in avbpubkey format. Installed to the device. Base name of the file is used as the ID for the key.
 ramdisk bool, Whether this module is installed to ramdisk
 recovery bool, Whether this module is installed to recovery partition
 required list of string, names of other modules to install if this module is installed
 soc_specific bool, whether this module is specific to an SoC (System-On-a-Chip). When set to true, it is installed into /vendor (or /system/vendor if vendor partition does not exist).
 system_ext_specific bool, whether this module extends system. When set to true, it is installed into /system_ext (or /system/system_ext if system_ext partition does not exist).
 target interface
target.android
 compile_multilib string
target.host
 compile_multilib string
 target_required list of string, names of other modules to install on target if this module is installed
 vendor bool, whether this module is specific to an SoC (System-On-a-Chip). When set to true, it is installed into /vendor (or /system/vendor if vendor partition does not exist). Use `soc_specific` instead for better meaning.
 vendor_ramdisk bool, Whether this module is installed to vendor ramdisk
 vintf_fragments list of string, VINTF manifest fragments to be installed if this module is installed
 visibility list of string, Controls the visibility of this module to other modules. Allowable values are one or more of these formats:

 ["//visibility:public"]: Anyone can use this module.
 ["//visibility:private"]: Only rules in the module's package (not its subpackages) can use
     this module.
 ["//visibility:override"]: Discards any rules inherited from defaults or a creating module.
     Can only be used at the beginning of a list of visibility rules.
 ["//some/package:__pkg__", "//other/package:__pkg__"]: Only modules in some/package and
     other/package (defined in some/package/*.bp and other/package/*.bp) have access to
     this module. Note that sub-packages do not have access to the rule; for example,
     //some/package/foo:bar or //other/package/testing:bla wouldn't have access. __pkg__
     is a special module and must be used verbatim. It represents all of the modules in the
     package.
 ["//project:__subpackages__", "//other:__subpackages__"]: Only modules in packages project
     or other or in one of their sub-packages have access to this module. For example,
     //project:rule, //project/library:lib or //other/testing/internal:munge are allowed
     to depend on this rule (but not //independent:evil)
 ["//project"]: This is shorthand for ["//project:__pkg__"]
 [":__subpackages__"]: This is shorthand for ["//project:__subpackages__"] where
     //project is the module's package. e.g. using [":__subpackages__"] in
     packages/apps/Settings/Android.bp is equivalent to
     //packages/apps/Settings:__subpackages__.
 ["//visibility:legacy_public"]: The default visibility, behaves as //visibility:public
     for now. It is an error if it is used in a module.

If a module does not specify the `visibility` property then it uses the `default_visibility` property of the `package` module in the module's package. If the `default_visibility` property is not set for the module's package then it will use the `default_visibility` of its closest ancestor package for which a `default_visibility` property is specified. If no `default_visibility` property can be found then the module uses the global default of `//visibility:legacy_public`. The `visibility` property has no effect on a defaults module although it does apply to any non-defaults module that uses it. To set the visibility of a defaults module, use the `defaults_visibility` property on the defaults module; not to be confused with the `default_visibility` property on the package module. See https://android.googlesource.com/platform/build/soong/+/master/README.md#visibility for more details.

apex_set

prebuilt_apex imports an `.apex` file into the build graph as if it was built with apex.
 name string, The name of the module. Must be unique across all modules.
 apex_name string, Canonical name of this APEX. Used to determine the path to the activated APEX on device (/apex/<apex_name>). If unspecified, follows the name property.
 arch interface
 compile_multilib string, control whether this module compiles for 32-bit, 64-bit, or both. Possible values are "32" (compile for 32-bit only), "64" (compile for 64-bit only), "both" (compile for both architectures), or "first" (compile for 64-bit on a 64-bit platform, and 32-bit on a 32-bit platform).
 debug_ramdisk bool, Whether this module is installed to debug ramdisk
 device_specific bool, whether this module is specific to a device, not only for SoC, but also for off-chip peripherals. When set to true, it is installed into /odm (or /vendor/odm if odm partition does not exist, or /system/vendor/odm if both odm and vendor partitions do not exist). This implies `soc_specific:true`.
dist Dist
configuration to distribute output files from this module to the distribution directory (default: $OUT/dist, configurable with $DIST_DIR)
 targets list of string, Copy the output of this module to the $DIST_DIR when `dist` is specified on the command line and any of these targets are also on the command line, or otherwise built
 dest string, The name of the output artifact. This defaults to the basename of the output of the module.
 dir string, The directory within the dist directory to store the artifact. Defaults to the top level directory ("").
 suffix string, A suffix to add to the artifact file name (before any extension).
 append_artifact_with_product bool, If true, then the artifact file will be appended with _<product name>. For example, if the product is coral and the module is an android_app module of name foo, then the artifact would be foo_coral.apk. If false, there is no change to the artifact file name.
 tag string, A string tag to select the OutputFiles associated with the tag. If no tag is specified then it will select the default dist paths provided by the module type. If a tag of "" is specified then it will return the default output files provided by the modules, i.e. the result of calling OutputFiles("").
 dists list of Dist, a list of configurations to distribute output files from this module to the distribution directory (default: $OUT/dist, configurable with $DIST_DIR)
 enabled bool, emit build rules for this module Disabling a module should only be done for those modules that cannot be built in the current environment. Modules that can build in the current environment but are not usually required (e.g. superceded by a prebuilt) should not be disabled as that will prevent them from being built by the checkbuild target and so prevent early detection of changes that have broken those modules.
 exported_bootclasspath_fragments list of string, List of bootclasspath fragments inside this prebuilt APEX bundle and for which this APEX bundle will create an APEX variant.
 exported_java_libs list of string, List of java libraries that are embedded inside this prebuilt APEX bundle and for which this APEX bundle will create an APEX variant and provide dex implementation jars for use by dexpreopt and boot jars package check.
 exported_systemserverclasspath_fragments list of string, List of systemserverclasspath fragments inside this prebuilt APEX bundle and for which this APEX bundle will create an APEX variant.
 filename string, optional name for the installed apex. If unspecified, name of the module is used as the file name
 host_required list of string, names of other modules to install on host if this module is installed
 init_rc list of string, init.rc files to be installed if this module is installed
 installable bool, whether the extracted apex file is installable.
 licenses list of string, Describes the licenses applicable to this module. Must reference license modules.
 multilib interface
 native_bridge_supported bool, Whether this module is built for non-native architectures (also known as native bridge binary)
 overrides list of string, names of modules to be overridden. Listed modules can only be other binaries (in Make or Soong). This does not completely prevent installation of the overridden binaries, but if both binaries would be installed by default (in PRODUCT_PACKAGES) the other binary will be removed from PRODUCT_PACKAGES.
 owner string, vendor who owns this module
 prefer bool, When prefer is set to true the prebuilt will be used instead of any source module with a matching name.
 prerelease bool, apexes in this set use prerelease SDK version
 product_specific bool, whether this module is specific to a software configuration of a product (e.g. country, network operator, etc). When set to true, it is installed into /product (or /system/product if product partition does not exist).
product_variables.always_use_prebuilt_sdks
enabled
  *bool
product_variables.debuggable
init_rc
  []string
required
  []string
host_required
  []string
target_required
  []string
product_variables.flatten_apex
enabled
  *bool
product_variables.pdk
enabled
  *bool
product_variables.unbundled_build
enabled
  *bool
 proprietary bool, whether this is a proprietary vendor module, and should be installed into /vendor
 ramdisk bool, Whether this module is installed to ramdisk
 recovery bool, Whether this module is installed to recovery partition
 required list of string, names of other modules to install if this module is installed
sanitized.address
 set string
sanitized.hwaddress
 set string
sanitized.none
 set string
 set string, the .apks file path that contains prebuilt apex files to be extracted.
 soc_specific bool, whether this module is specific to an SoC (System-On-a-Chip). When set to true, it is installed into /vendor (or /system/vendor if vendor partition does not exist).
 system_ext_specific bool, whether this module extends system. When set to true, it is installed into /system_ext (or /system/system_ext if system_ext partition does not exist).
 target interface
target.android
 compile_multilib string
target.host
 compile_multilib string
 target_required list of string, names of other modules to install on target if this module is installed
 use_source_config_var ConfigVarProperties, When specified this names a Soong config variable that controls the prefer property. If the value of the named Soong config variable is true then prefer is set to false and vice versa. If the Soong config variable is not set then it defaults to false, so prefer defaults to true. If specified then the prefer property is ignored in favor of the value of the Soong config variable.
 vendor bool, whether this module is specific to an SoC (System-On-a-Chip). When set to true, it is installed into /vendor (or /system/vendor if vendor partition does not exist). Use `soc_specific` instead for better meaning.
 vendor_ramdisk bool, Whether this module is installed to vendor ramdisk
 vintf_fragments list of string, VINTF manifest fragments to be installed if this module is installed
 visibility list of string, Controls the visibility of this module to other modules. Allowable values are one or more of these formats:

 ["//visibility:public"]: Anyone can use this module.
 ["//visibility:private"]: Only rules in the module's package (not its subpackages) can use
     this module.
 ["//visibility:override"]: Discards any rules inherited from defaults or a creating module.
     Can only be used at the beginning of a list of visibility rules.
 ["//some/package:__pkg__", "//other/package:__pkg__"]: Only modules in some/package and
     other/package (defined in some/package/*.bp and other/package/*.bp) have access to
     this module. Note that sub-packages do not have access to the rule; for example,
     //some/package/foo:bar or //other/package/testing:bla wouldn't have access. __pkg__
     is a special module and must be used verbatim. It represents all of the modules in the
     package.
 ["//project:__subpackages__", "//other:__subpackages__"]: Only modules in packages project
     or other or in one of their sub-packages have access to this module. For example,
     //project:rule, //project/library:lib or //other/testing/internal:munge are allowed
     to depend on this rule (but not //independent:evil)
 ["//project"]: This is shorthand for ["//project:__pkg__"]
 [":__subpackages__"]: This is shorthand for ["//project:__subpackages__"] where
     //project is the module's package. e.g. using [":__subpackages__"] in
     packages/apps/Settings/Android.bp is equivalent to
     //packages/apps/Settings:__subpackages__.
 ["//visibility:legacy_public"]: The default visibility, behaves as //visibility:public
     for now. It is an error if it is used in a module.

If a module does not specify the `visibility` property then it uses the `default_visibility` property of the `package` module in the module's package. If the `default_visibility` property is not set for the module's package then it will use the `default_visibility` of its closest ancestor package for which a `default_visibility` property is specified. If no `default_visibility` property can be found then the module uses the global default of `//visibility:legacy_public`. The `visibility` property has no effect on a defaults module although it does apply to any non-defaults module that uses it. To set the visibility of a defaults module, use the `defaults_visibility` property on the defaults module; not to be confused with the `default_visibility` property on the package module. See https://android.googlesource.com/platform/build/soong/+/master/README.md#visibility for more details.

apex_test

apex_test is an APEX for testing. The difference from the ordinary apex module type is that certain compatibility checks such as apex_available are not done for apex_test.
 name string, The name of the module. Must be unique across all modules.
 defaults list of string
 host_supported bool, If set to true, build a variant of the module for the host. Defaults to false.
 device_supported bool, If set to true, build a variant of the module for the device. Defaults to true.
 allowed_files string, A txt file containing list of files that are allowed to be included in this APEX.
 androidManifest string, AndroidManifest.xml file used for the zip container of this APEX bundle. If unspecified, a default one is automatically generated.
 apps list of string, List of APKs that are embedded inside this APEX.
 arch interface
arch.arm
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
arch.arm64
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
arch.riscv64
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
arch.x86
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
arch.x86_64
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
bazel_module bazelModuleProperties
In "Bazel mixed build" mode, this represents the Bazel target replacing this Soong module.
 label string, The label of the Bazel target replacing this Soong module. When run in conversion mode, this will import the handcrafted build target into the autogenerated file. Note: this may result in a conflict due to duplicate targets if bp2build_available is also set.
 bp2build_available bool, If true, bp2build will generate the converted Bazel target for this module. Note: this may cause a conflict due to the duplicate targets if label is also set. This is a bool pointer to support tristates: true, false, not set. To opt in a module, set bazel_module: { bp2build_available: true } To opt out a module, set bazel_module: { bp2build_available: false } To defer the default setting for the directory, do not set the value.
 binaries list of string, List of native executables that are embedded inside this APEX.
 bootclasspath_fragments list of string, List of bootclasspath fragments that are embedded inside this APEX bundle.
 bpfs list of string, List of BPF programs inside this APEX bundle.
 canned_fs_config string, Path to the canned fs config file for customizing file's uid/gid/mod/capabilities. The content of this file is appended to the default config, so that the custom entries are preferred. The format is /<path_or_glob> <uid> <gid> <mode> [capabilities=0x<cap>], where path_or_glob is a path or glob pattern for a file or set of files, uid/gid are numerial values of user ID and group ID, mode is octal value for the file mode, and cap is hexadecimal value for the capability.
 certificate string, Specifies the certificate and the private key to sign the zip container of this APEX. If this is "foo", foo.x509.pem and foo.pk8 under PRODUCT_DEFAULT_DEV_CERTIFICATE are used as the certificate and the private key, respectively. If this is ":module", then the certificate and the private key are provided from the android_app_certificate module named "module".
 compat_configs list of string, List of platform_compat_config files that are embedded inside this APEX bundle.
 compile_multilib string, control whether this module compiles for 32-bit, 64-bit, or both. Possible values are "32" (compile for 32-bit only), "64" (compile for 64-bit only), "both" (compile for both architectures), or "first" (compile for 64-bit on a 64-bit platform, and 32-bit on a 32-bit platform).
 compressible bool, Whether this APEX can be compressed or not. Setting this property to false means this APEX will never be compressed. When set to true, APEX will be compressed if other conditions, e.g., target device needs to support APEX compression, are also fulfilled. Default: false.
 custom_sign_tool string, Put extra tags (signer=<value>) to apexkeys.txt, so that release tools can sign this apex with the tool to sign payload contents.
 debug_ramdisk bool, Whether this module is installed to debug ramdisk
 device_specific bool, whether this module is specific to a device, not only for SoC, but also for off-chip peripherals. When set to true, it is installed into /odm (or /vendor/odm if odm partition does not exist, or /system/vendor/odm if both odm and vendor partitions do not exist). This implies `soc_specific:true`.
dist Dist
configuration to distribute output files from this module to the distribution directory (default: $OUT/dist, configurable with $DIST_DIR)
 targets list of string, Copy the output of this module to the $DIST_DIR when `dist` is specified on the command line and any of these targets are also on the command line, or otherwise built
 dest string, The name of the output artifact. This defaults to the basename of the output of the module.
 dir string, The directory within the dist directory to store the artifact. Defaults to the top level directory ("").
 suffix string, A suffix to add to the artifact file name (before any extension).
 append_artifact_with_product bool, If true, then the artifact file will be appended with _<product name>. For example, if the product is coral and the module is an android_app module of name foo, then the artifact would be foo_coral.apk. If false, there is no change to the artifact file name.
 tag string, A string tag to select the OutputFiles associated with the tag. If no tag is specified then it will select the default dist paths provided by the module type. If a tag of "" is specified then it will return the default output files provided by the modules, i.e. the result of calling OutputFiles("").
 dists list of Dist, a list of configurations to distribute output files from this module to the distribution directory (default: $OUT/dist, configurable with $DIST_DIR)
 dynamic_common_lib_apex bool, Whether this is a dynamic common lib apex, if so the native shared libs will be placed in a special way that include the digest of the lib file under /lib(64)?
 enabled bool, emit build rules for this module Disabling a module should only be done for those modules that cannot be built in the current environment. Modules that can build in the current environment but are not usually required (e.g. superceded by a prebuilt) should not be disabled as that will prevent them from being built by the checkbuild target and so prevent early detection of changes that have broken those modules.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 export bool, True if the module is exported to the other components in a multi-tree. Any components in the multi-tree can import this module to use.
 file_contexts string, Determines the file contexts file for setting the security contexts to files in this APEX bundle. For platform APEXes, this should points to a file under /system/sepolicy Default: /system/sepolicy/apex/<module_name>_file_contexts.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 future_updatable bool, Marks that this APEX is designed to be updatable in the future, although it's not updatable yet. This is used to mimic some of the build behaviors that are applied only to updatable APEXes. Currently, this disables the size optimization, so that the size of APEX will not increase when the APEX is actually marked as truly updatable. Default is false.
 generate_hashtree bool, Whenever apex_payload.img of the APEX should include dm-verity hashtree. Default value is true.
 host_required list of string, names of other modules to install on host if this module is installed
 ignore_system_library_special_case bool, For telling the APEX to ignore special handling for system libraries such as bionic. Default is false.
 init_rc list of string, init.rc files to be installed if this module is installed
 installable bool, Whether this APEX is installable to one of the partitions like system, vendor, etc. Default: true.
 java_libs list of string, List of java libraries that are embedded inside this APEX bundle.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 key string, Name of the apex_key module that provides the private key to sign this APEX bundle.
 licenses list of string, Describes the licenses applicable to this module. Must reference license modules.
 logging_parent string, Logging parent value.
 manifest string, Json manifest file describing meta info of this APEX bundle. Refer to system/apex/proto/apex_manifest.proto for the schema. Default: "apex_manifest.json"
 min_sdk_version string, The minimum SDK version that this APEX must support at minimum. This is usually set to the SDK version that the APEX was first introduced.
 multilib interface
multilib.both ApexNativeDependencies
Native dependencies whose compile_multilib is "both"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.first ApexNativeDependencies
Native dependencies whose compile_multilib is "first"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib32 ApexNativeDependencies
Native dependencies whose compile_multilib is "32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib64 ApexNativeDependencies
Native dependencies whose compile_multilib is "64"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.prefer32 ApexNativeDependencies
Native dependencies whose compile_multilib is "prefer32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
 native_bridge_supported bool, Whether this module is built for non-native architectures (also known as native bridge binary)
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 overrides list of string, Names of modules to be overridden. Listed modules can only be other binaries (in Make or Soong). This does not completely prevent installation of the overridden binaries, but if both binaries would be installed by default (in PRODUCT_PACKAGES) the other binary will be removed from PRODUCT_PACKAGES.
 owner string, vendor who owns this module
 package_name string, Apex Container package name. Override value for attribute package:name in AndroidManifest.xml
 payload_fs_type string, The type of filesystem to use when the payload_type is 'image'. Either 'ext4', 'f2fs' or 'erofs'. Default 'ext4'.
 payload_type string, The type of APEX to build. Controls what the APEX payload is. Either 'image', 'zip' or 'both'. When set to image, contents are stored in a filesystem image inside a zip container. When set to zip, contents are stored in a zip container directly. This type is mostly for host-side debugging. When set to both, the two types are both built. Default is 'image'.
 platform_apis bool, Whether this APEX can use platform APIs or not. Can be set to true only when `updatable: false`. Default is false.
 prebuilts list of string, List of prebuilt files that are embedded inside this APEX bundle.
 product_specific bool, whether this module is specific to a software configuration of a product (e.g. country, network operator, etc). When set to true, it is installed into /product (or /system/product if product partition does not exist).
product_variables.always_use_prebuilt_sdks
enabled
  *bool
product_variables.debuggable
init_rc
  []string
required
  []string
host_required
  []string
target_required
  []string
product_variables.flatten_apex
enabled
  *bool
product_variables.pdk
enabled
  *bool
product_variables.unbundled_build
enabled
  *bool
 proprietary bool, whether this is a proprietary vendor module, and should be installed into /vendor
 ramdisk bool, Whether this module is installed to ramdisk
 recovery bool, Whether this module is installed to recovery partition
 required list of string, names of other modules to install if this module is installed
 rros list of string, List of runtime resource overlays (RROs) that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 sh_binaries list of string, List of sh binaries that are embedded inside this APEX bundle.
 soc_specific bool, whether this module is specific to an SoC (System-On-a-Chip). When set to true, it is installed into /vendor (or /system/vendor if vendor partition does not exist).
 system_ext_specific bool, whether this module extends system. When set to true, it is installed into /system_ext (or /system/system_ext if system_ext partition does not exist).
 systemserverclasspath_fragments list of string, List of systemserverclasspath fragments that are embedded inside this APEX bundle.
 target interface
target.android
Multilib properties only for android.
multilib.first ApexNativeDependencies
Native dependencies whose compile_multilib is "first"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.both ApexNativeDependencies
Native dependencies whose compile_multilib is "both"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.prefer32 ApexNativeDependencies
Native dependencies whose compile_multilib is "prefer32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib32 ApexNativeDependencies
Native dependencies whose compile_multilib is "32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib64 ApexNativeDependencies
Native dependencies whose compile_multilib is "64"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
 compile_multilib string
target.host
Multilib properties only for host.
multilib.first ApexNativeDependencies
Native dependencies whose compile_multilib is "first"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.both ApexNativeDependencies
Native dependencies whose compile_multilib is "both"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.prefer32 ApexNativeDependencies
Native dependencies whose compile_multilib is "prefer32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib32 ApexNativeDependencies
Native dependencies whose compile_multilib is "32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib64 ApexNativeDependencies
Native dependencies whose compile_multilib is "64"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
 compile_multilib string
target.linux_bionic
Multilib properties only for host linux_bionic.
multilib.first ApexNativeDependencies
Native dependencies whose compile_multilib is "first"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.both ApexNativeDependencies
Native dependencies whose compile_multilib is "both"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.prefer32 ApexNativeDependencies
Native dependencies whose compile_multilib is "prefer32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib32 ApexNativeDependencies
Native dependencies whose compile_multilib is "32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib64 ApexNativeDependencies
Native dependencies whose compile_multilib is "64"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
target.linux_glibc
Multilib properties only for host linux_glibc.
multilib.first ApexNativeDependencies
Native dependencies whose compile_multilib is "first"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.both ApexNativeDependencies
Native dependencies whose compile_multilib is "both"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.prefer32 ApexNativeDependencies
Native dependencies whose compile_multilib is "prefer32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib32 ApexNativeDependencies
Native dependencies whose compile_multilib is "32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib64 ApexNativeDependencies
Native dependencies whose compile_multilib is "64"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
 target_required list of string, names of other modules to install on target if this module is installed
 test_only_force_compression bool, Whenever apex should be compressed, regardless of product flag used. Should be only used in tests.
 test_only_unsigned_payload bool, Whenever apex_payload.img of the APEX should not be dm-verity signed. Should be only used in tests.
 tests list of string, List of native tests that are embedded inside this APEX.
 trim_against string, Trim against a specific Dynamic Common Lib APEX
 updatable bool, Whether this APEX is considered updatable or not. When set to true, this will enforce additional rules for making sure that the APEX is truly updatable. To be updatable, min_sdk_version should be set as well. This will also disable the size optimizations like symlinking to the system libs. Default is true.
 use_file_contexts_as_is bool, By default, file_contexts is amended by force-labelling / and /apex_manifest.pb as system_file to avoid mistakes. When set as true, no force-labelling.
 use_vndk_as_stable bool, If set true, VNDK libs are considered as stable libs and are not included in this APEX. Should be only used in non-system apexes (e.g. vendor: true). Default is false.
 vendor bool, whether this module is specific to an SoC (System-On-a-Chip). When set to true, it is installed into /vendor (or /system/vendor if vendor partition does not exist). Use `soc_specific` instead for better meaning.
 vendor_ramdisk bool, Whether this module is installed to vendor ramdisk
 vintf_fragments list of string, VINTF manifest fragments to be installed if this module is installed
 visibility list of string, Controls the visibility of this module to other modules. Allowable values are one or more of these formats:

 ["//visibility:public"]: Anyone can use this module.
 ["//visibility:private"]: Only rules in the module's package (not its subpackages) can use
     this module.
 ["//visibility:override"]: Discards any rules inherited from defaults or a creating module.
     Can only be used at the beginning of a list of visibility rules.
 ["//some/package:__pkg__", "//other/package:__pkg__"]: Only modules in some/package and
     other/package (defined in some/package/*.bp and other/package/*.bp) have access to
     this module. Note that sub-packages do not have access to the rule; for example,
     //some/package/foo:bar or //other/package/testing:bla wouldn't have access. __pkg__
     is a special module and must be used verbatim. It represents all of the modules in the
     package.
 ["//project:__subpackages__", "//other:__subpackages__"]: Only modules in packages project
     or other or in one of their sub-packages have access to this module. For example,
     //project:rule, //project/library:lib or //other/testing/internal:munge are allowed
     to depend on this rule (but not //independent:evil)
 ["//project"]: This is shorthand for ["//project:__pkg__"]
 [":__subpackages__"]: This is shorthand for ["//project:__subpackages__"] where
     //project is the module's package. e.g. using [":__subpackages__"] in
     packages/apps/Settings/Android.bp is equivalent to
     //packages/apps/Settings:__subpackages__.
 ["//visibility:legacy_public"]: The default visibility, behaves as //visibility:public
     for now. It is an error if it is used in a module.

If a module does not specify the `visibility` property then it uses the `default_visibility` property of the `package` module in the module's package. If the `default_visibility` property is not set for the module's package then it will use the `default_visibility` of its closest ancestor package for which a `default_visibility` property is specified. If no `default_visibility` property can be found then the module uses the global default of `//visibility:legacy_public`. The `visibility` property has no effect on a defaults module although it does apply to any non-defaults module that uses it. To set the visibility of a defaults module, use the `defaults_visibility` property on the defaults module; not to be confused with the `default_visibility` property on the package module. See https://android.googlesource.com/platform/build/soong/+/master/README.md#visibility for more details.

apex_vndk

apex_vndk creates a special variant of apex modules which contains only VNDK libraries. If `vndk_version` is specified, the VNDK libraries of the specified VNDK version are gathered automatically. If not specified, then the "current" versions are gathered.
 name string, The name of the module. Must be unique across all modules.
 defaults list of string
 host_supported bool, If set to true, build a variant of the module for the host. Defaults to false.
 device_supported bool, If set to true, build a variant of the module for the device. Defaults to true.
 allowed_files string, A txt file containing list of files that are allowed to be included in this APEX.
 androidManifest string, AndroidManifest.xml file used for the zip container of this APEX bundle. If unspecified, a default one is automatically generated.
 apps list of string, List of APKs that are embedded inside this APEX.
 arch interface
arch.arm
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
arch.arm64
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
arch.riscv64
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
arch.x86
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
arch.x86_64
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
bazel_module bazelModuleProperties
In "Bazel mixed build" mode, this represents the Bazel target replacing this Soong module.
 label string, The label of the Bazel target replacing this Soong module. When run in conversion mode, this will import the handcrafted build target into the autogenerated file. Note: this may result in a conflict due to duplicate targets if bp2build_available is also set.
 bp2build_available bool, If true, bp2build will generate the converted Bazel target for this module. Note: this may cause a conflict due to the duplicate targets if label is also set. This is a bool pointer to support tristates: true, false, not set. To opt in a module, set bazel_module: { bp2build_available: true } To opt out a module, set bazel_module: { bp2build_available: false } To defer the default setting for the directory, do not set the value.
 binaries list of string, List of native executables that are embedded inside this APEX.
 bootclasspath_fragments list of string, List of bootclasspath fragments that are embedded inside this APEX bundle.
 bpfs list of string, List of BPF programs inside this APEX bundle.
 canned_fs_config string, Path to the canned fs config file for customizing file's uid/gid/mod/capabilities. The content of this file is appended to the default config, so that the custom entries are preferred. The format is /<path_or_glob> <uid> <gid> <mode> [capabilities=0x<cap>], where path_or_glob is a path or glob pattern for a file or set of files, uid/gid are numerial values of user ID and group ID, mode is octal value for the file mode, and cap is hexadecimal value for the capability.
 certificate string, Specifies the certificate and the private key to sign the zip container of this APEX. If this is "foo", foo.x509.pem and foo.pk8 under PRODUCT_DEFAULT_DEV_CERTIFICATE are used as the certificate and the private key, respectively. If this is ":module", then the certificate and the private key are provided from the android_app_certificate module named "module".
 compat_configs list of string, List of platform_compat_config files that are embedded inside this APEX bundle.
 compile_multilib string, control whether this module compiles for 32-bit, 64-bit, or both. Possible values are "32" (compile for 32-bit only), "64" (compile for 64-bit only), "both" (compile for both architectures), or "first" (compile for 64-bit on a 64-bit platform, and 32-bit on a 32-bit platform).
 compressible bool, Whether this APEX can be compressed or not. Setting this property to false means this APEX will never be compressed. When set to true, APEX will be compressed if other conditions, e.g., target device needs to support APEX compression, are also fulfilled. Default: false.
 custom_sign_tool string, Put extra tags (signer=<value>) to apexkeys.txt, so that release tools can sign this apex with the tool to sign payload contents.
 debug_ramdisk bool, Whether this module is installed to debug ramdisk
 device_specific bool, whether this module is specific to a device, not only for SoC, but also for off-chip peripherals. When set to true, it is installed into /odm (or /vendor/odm if odm partition does not exist, or /system/vendor/odm if both odm and vendor partitions do not exist). This implies `soc_specific:true`.
dist Dist
configuration to distribute output files from this module to the distribution directory (default: $OUT/dist, configurable with $DIST_DIR)
 targets list of string, Copy the output of this module to the $DIST_DIR when `dist` is specified on the command line and any of these targets are also on the command line, or otherwise built
 dest string, The name of the output artifact. This defaults to the basename of the output of the module.
 dir string, The directory within the dist directory to store the artifact. Defaults to the top level directory ("").
 suffix string, A suffix to add to the artifact file name (before any extension).
 append_artifact_with_product bool, If true, then the artifact file will be appended with _<product name>. For example, if the product is coral and the module is an android_app module of name foo, then the artifact would be foo_coral.apk. If false, there is no change to the artifact file name.
 tag string, A string tag to select the OutputFiles associated with the tag. If no tag is specified then it will select the default dist paths provided by the module type. If a tag of "" is specified then it will return the default output files provided by the modules, i.e. the result of calling OutputFiles("").
 dists list of Dist, a list of configurations to distribute output files from this module to the distribution directory (default: $OUT/dist, configurable with $DIST_DIR)
 dynamic_common_lib_apex bool, Whether this is a dynamic common lib apex, if so the native shared libs will be placed in a special way that include the digest of the lib file under /lib(64)?
 enabled bool, emit build rules for this module Disabling a module should only be done for those modules that cannot be built in the current environment. Modules that can build in the current environment but are not usually required (e.g. superceded by a prebuilt) should not be disabled as that will prevent them from being built by the checkbuild target and so prevent early detection of changes that have broken those modules.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 export bool, True if the module is exported to the other components in a multi-tree. Any components in the multi-tree can import this module to use.
 file_contexts string, Determines the file contexts file for setting the security contexts to files in this APEX bundle. For platform APEXes, this should points to a file under /system/sepolicy Default: /system/sepolicy/apex/<module_name>_file_contexts.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 future_updatable bool, Marks that this APEX is designed to be updatable in the future, although it's not updatable yet. This is used to mimic some of the build behaviors that are applied only to updatable APEXes. Currently, this disables the size optimization, so that the size of APEX will not increase when the APEX is actually marked as truly updatable. Default is false.
 generate_hashtree bool, Whenever apex_payload.img of the APEX should include dm-verity hashtree. Default value is true.
 host_required list of string, names of other modules to install on host if this module is installed
 ignore_system_library_special_case bool, For telling the APEX to ignore special handling for system libraries such as bionic. Default is false.
 init_rc list of string, init.rc files to be installed if this module is installed
 installable bool, Whether this APEX is installable to one of the partitions like system, vendor, etc. Default: true.
 java_libs list of string, List of java libraries that are embedded inside this APEX bundle.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 key string, Name of the apex_key module that provides the private key to sign this APEX bundle.
 licenses list of string, Describes the licenses applicable to this module. Must reference license modules.
 logging_parent string, Logging parent value.
 manifest string, Json manifest file describing meta info of this APEX bundle. Refer to system/apex/proto/apex_manifest.proto for the schema. Default: "apex_manifest.json"
 min_sdk_version string, The minimum SDK version that this APEX must support at minimum. This is usually set to the SDK version that the APEX was first introduced.
 multilib interface
multilib.both ApexNativeDependencies
Native dependencies whose compile_multilib is "both"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.first ApexNativeDependencies
Native dependencies whose compile_multilib is "first"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib32 ApexNativeDependencies
Native dependencies whose compile_multilib is "32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib64 ApexNativeDependencies
Native dependencies whose compile_multilib is "64"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.prefer32 ApexNativeDependencies
Native dependencies whose compile_multilib is "prefer32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
 native_bridge_supported bool, Whether this module is built for non-native architectures (also known as native bridge binary)
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 overrides list of string, Names of modules to be overridden. Listed modules can only be other binaries (in Make or Soong). This does not completely prevent installation of the overridden binaries, but if both binaries would be installed by default (in PRODUCT_PACKAGES) the other binary will be removed from PRODUCT_PACKAGES.
 owner string, vendor who owns this module
 package_name string, Apex Container package name. Override value for attribute package:name in AndroidManifest.xml
 payload_fs_type string, The type of filesystem to use when the payload_type is 'image'. Either 'ext4', 'f2fs' or 'erofs'. Default 'ext4'.
 payload_type string, The type of APEX to build. Controls what the APEX payload is. Either 'image', 'zip' or 'both'. When set to image, contents are stored in a filesystem image inside a zip container. When set to zip, contents are stored in a zip container directly. This type is mostly for host-side debugging. When set to both, the two types are both built. Default is 'image'.
 platform_apis bool, Whether this APEX can use platform APIs or not. Can be set to true only when `updatable: false`. Default is false.
 prebuilts list of string, List of prebuilt files that are embedded inside this APEX bundle.
 product_specific bool, whether this module is specific to a software configuration of a product (e.g. country, network operator, etc). When set to true, it is installed into /product (or /system/product if product partition does not exist).
product_variables.always_use_prebuilt_sdks
enabled
  *bool
product_variables.debuggable
init_rc
  []string
required
  []string
host_required
  []string
target_required
  []string
product_variables.flatten_apex
enabled
  *bool
product_variables.pdk
enabled
  *bool
product_variables.unbundled_build
enabled
  *bool
 proprietary bool, whether this is a proprietary vendor module, and should be installed into /vendor
 ramdisk bool, Whether this module is installed to ramdisk
 recovery bool, Whether this module is installed to recovery partition
 required list of string, names of other modules to install if this module is installed
 rros list of string, List of runtime resource overlays (RROs) that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 sh_binaries list of string, List of sh binaries that are embedded inside this APEX bundle.
 soc_specific bool, whether this module is specific to an SoC (System-On-a-Chip). When set to true, it is installed into /vendor (or /system/vendor if vendor partition does not exist).
 system_ext_specific bool, whether this module extends system. When set to true, it is installed into /system_ext (or /system/system_ext if system_ext partition does not exist).
 systemserverclasspath_fragments list of string, List of systemserverclasspath fragments that are embedded inside this APEX bundle.
 target interface
target.android
 compile_multilib string
multilib.first ApexNativeDependencies
Native dependencies whose compile_multilib is "first"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.both ApexNativeDependencies
Native dependencies whose compile_multilib is "both"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.prefer32 ApexNativeDependencies
Native dependencies whose compile_multilib is "prefer32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib32 ApexNativeDependencies
Native dependencies whose compile_multilib is "32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib64 ApexNativeDependencies
Native dependencies whose compile_multilib is "64"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
target.host
 compile_multilib string
multilib.first ApexNativeDependencies
Native dependencies whose compile_multilib is "first"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.both ApexNativeDependencies
Native dependencies whose compile_multilib is "both"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.prefer32 ApexNativeDependencies
Native dependencies whose compile_multilib is "prefer32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib32 ApexNativeDependencies
Native dependencies whose compile_multilib is "32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib64 ApexNativeDependencies
Native dependencies whose compile_multilib is "64"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
target.linux_bionic
Multilib properties only for host linux_bionic.
multilib.first ApexNativeDependencies
Native dependencies whose compile_multilib is "first"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.both ApexNativeDependencies
Native dependencies whose compile_multilib is "both"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.prefer32 ApexNativeDependencies
Native dependencies whose compile_multilib is "prefer32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib32 ApexNativeDependencies
Native dependencies whose compile_multilib is "32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib64 ApexNativeDependencies
Native dependencies whose compile_multilib is "64"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
target.linux_glibc
Multilib properties only for host linux_glibc.
multilib.first ApexNativeDependencies
Native dependencies whose compile_multilib is "first"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.both ApexNativeDependencies
Native dependencies whose compile_multilib is "both"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.prefer32 ApexNativeDependencies
Native dependencies whose compile_multilib is "prefer32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib32 ApexNativeDependencies
Native dependencies whose compile_multilib is "32"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
multilib.lib64 ApexNativeDependencies
Native dependencies whose compile_multilib is "64"
 native_shared_libs list of string, List of native libraries that are embedded inside this APEX.
 jni_libs list of string, List of JNI libraries that are embedded inside this APEX.
 rust_dyn_libs list of string, List of rust dyn libraries that are embedded inside this APEX.
 binaries list of string, List of native executables that are embedded inside this APEX.
 tests list of string, List of native tests that are embedded inside this APEX.
 filesystems list of string, List of filesystem images that are embedded inside this APEX bundle.
 exclude_native_shared_libs list of string, List of native libraries to exclude from this APEX.
 exclude_jni_libs list of string, List of JNI libraries to exclude from this APEX.
 exclude_rust_dyn_libs list of string, List of rust dyn libraries to exclude from this APEX.
 exclude_binaries list of string, List of native executables to exclude from this APEX.
 exclude_tests list of string, List of native tests to exclude from this APEX.
 exclude_filesystems list of string, List of filesystem images to exclude from this APEX bundle.
 target_required list of string, names of other modules to install on target if this module is installed
 test_only_force_compression bool, Whenever apex should be compressed, regardless of product flag used. Should be only used in tests.
 test_only_unsigned_payload bool, Whenever apex_payload.img of the APEX should not be dm-verity signed. Should be only used in tests.
 tests list of string, List of native tests that are embedded inside this APEX.
 trim_against string, Trim against a specific Dynamic Common Lib APEX
 updatable bool, Whether this APEX is considered updatable or not. When set to true, this will enforce additional rules for making sure that the APEX is truly updatable. To be updatable, min_sdk_version should be set as well. This will also disable the size optimizations like symlinking to the system libs. Default is true.
 use_file_contexts_as_is bool, By default, file_contexts is amended by force-labelling / and /apex_manifest.pb as system_file to avoid mistakes. When set as true, no force-labelling.
 use_vndk_as_stable bool, If set true, VNDK libs are considered as stable libs and are not included in this APEX. Should be only used in non-system apexes (e.g. vendor: true). Default is false.
 vendor bool, whether this module is specific to an SoC (System-On-a-Chip). When set to true, it is installed into /vendor (or /system/vendor if vendor partition does not exist). Use `soc_specific` instead for better meaning.
 vendor_ramdisk bool, Whether this module is installed to vendor ramdisk
 vintf_fragments list of string, VINTF manifest fragments to be installed if this module is installed
 visibility list of string, Controls the visibility of this module to other modules. Allowable values are one or more of these formats:

 ["//visibility:public"]: Anyone can use this module.
 ["//visibility:private"]: Only rules in the module's package (not its subpackages) can use
     this module.
 ["//visibility:override"]: Discards any rules inherited from defaults or a creating module.
     Can only be used at the beginning of a list of visibility rules.
 ["//some/package:__pkg__", "//other/package:__pkg__"]: Only modules in some/package and
     other/package (defined in some/package/*.bp and other/package/*.bp) have access to
     this module. Note that sub-packages do not have access to the rule; for example,
     //some/package/foo:bar or //other/package/testing:bla wouldn't have access. __pkg__
     is a special module and must be used verbatim. It represents all of the modules in the
     package.
 ["//project:__subpackages__", "//other:__subpackages__"]: Only modules in packages project
     or other or in one of their sub-packages have access to this module. For example,
     //project:rule, //project/library:lib or //other/testing/internal:munge are allowed
     to depend on this rule (but not //independent:evil)
 ["//project"]: This is shorthand for ["//project:__pkg__"]
 [":__subpackages__"]: This is shorthand for ["//project:__subpackages__"] where
     //project is the module's package. e.g. using [":__subpackages__"] in
     packages/apps/Settings/Android.bp is equivalent to
     //packages/apps/Settings:__subpackages__.
 ["//visibility:legacy_public"]: The default visibility, behaves as //visibility:public
     for now. It is an error if it is used in a module.

If a module does not specify the `visibility` property then it uses the `default_visibility` property of the `package` module in the module's package. If the `default_visibility` property is not set for the module's package then it will use the `default_visibility` of its closest ancestor package for which a `default_visibility` property is specified. If no `default_visibility` property can be found then the module uses the global default of `//visibility:legacy_public`. The `visibility` property has no effect on a defaults module although it does apply to any non-defaults module that uses it. To set the visibility of a defaults module, use the `defaults_visibility` property on the defaults module; not to be confused with the `default_visibility` property on the package module. See https://android.googlesource.com/platform/build/soong/+/master/README.md#visibility for more details.
 vndk_version string, Indicates VNDK version of which this VNDK APEX bundles VNDK libs. Default is Platform VNDK Version.

override_apex

override_apex is used to create an apex module based on another apex module by overriding some of its properties.
 name string, The name of the module. Must be unique across all modules.
 allowed_files string, A txt file containing list of files that are allowed to be included in this APEX.
 apps list of string, List of APKs that are embedded inside this APEX.
 arch interface
 base string, Name of the base module to be overridden
bazel_module bazelModuleProperties
In "Bazel mixed build" mode, this represents the Bazel target replacing this Soong module.
 label string, The label of the Bazel target replacing this Soong module. When run in conversion mode, this will import the handcrafted build target into the autogenerated file. Note: this may result in a conflict due to duplicate targets if bp2build_available is also set.
 bp2build_available bool, If true, bp2build will generate the converted Bazel target for this module. Note: this may cause a conflict due to the duplicate targets if label is also set. This is a bool pointer to support tristates: true, false, not set. To opt in a module, set bazel_module: { bp2build_available: true } To opt out a module, set bazel_module: { bp2build_available: false } To defer the default setting for the directory, do not set the value.
 bpfs list of string, List of BPF programs inside this APEX bundle.
 certificate string, Specifies the certificate and the private key to sign the zip container of this APEX. If this is "foo", foo.x509.pem and foo.pk8 under PRODUCT_DEFAULT_DEV_CERTIFICATE are used as the certificate and the private key, respectively. If this is ":module", then the certificate and the private key are provided from the android_app_certificate module named "module".
 compile_multilib string, control whether this module compiles for 32-bit, 64-bit, or both. Possible values are "32" (compile for 32-bit only), "64" (compile for 64-bit only), "both" (compile for both architectures), or "first" (compile for 64-bit on a 64-bit platform, and 32-bit on a 32-bit platform).
 compressible bool, Whether this APEX can be compressed or not. Setting this property to false means this APEX will never be compressed. When set to true, APEX will be compressed if other conditions, e.g., target device needs to support APEX compression, are also fulfilled. Default: false.
 debug_ramdisk bool, Whether this module is installed to debug ramdisk
 device_specific bool, whether this module is specific to a device, not only for SoC, but also for off-chip peripherals. When set to true, it is installed into /odm (or /vendor/odm if odm partition does not exist, or /system/vendor/odm if both odm and vendor partitions do not exist). This implies `soc_specific:true`.
dist Dist
configuration to distribute output files from this module to the distribution directory (default: $OUT/dist, configurable with $DIST_DIR)
 targets list of string, Copy the output of this module to the $DIST_DIR when `dist` is specified on the command line and any of these targets are also on the command line, or otherwise built
 dest string, The name of the output artifact. This defaults to the basename of the output of the module.
 dir string, The directory within the dist directory to store the artifact. Defaults to the top level directory ("").
 suffix string, A suffix to add to the artifact file name (before any extension).
 append_artifact_with_product bool, If true, then the artifact file will be appended with _<product name>. For example, if the product is coral and the module is an android_app module of name foo, then the artifact would be foo_coral.apk. If false, there is no change to the artifact file name.
 tag string, A string tag to select the OutputFiles associated with the tag. If no tag is specified then it will select the default dist paths provided by the module type. If a tag of "" is specified then it will return the default output files provided by the modules, i.e. the result of calling OutputFiles("").
 dists list of Dist, a list of configurations to distribute output files from this module to the distribution directory (default: $OUT/dist, configurable with $DIST_DIR)
 enabled bool, emit build rules for this module Disabling a module should only be done for those modules that cannot be built in the current environment. Modules that can build in the current environment but are not usually required (e.g. superceded by a prebuilt) should not be disabled as that will prevent them from being built by the checkbuild target and so prevent early detection of changes that have broken those modules.
 host_required list of string, names of other modules to install on host if this module is installed
 init_rc list of string, init.rc files to be installed if this module is installed
 key string, Name of the apex_key module that provides the private key to sign this APEX bundle.
 licenses list of string, Describes the licenses applicable to this module. Must reference license modules.
 logging_parent string, Logging parent value.
 multilib interface
 native_bridge_supported bool, Whether this module is built for non-native architectures (also known as native bridge binary)
 overrides list of string, Names of modules to be overridden. Listed modules can only be other binaries (in Make or Soong). This does not completely prevent installation of the overridden binaries, but if both binaries would be installed by default (in PRODUCT_PACKAGES) the other binary will be removed from PRODUCT_PACKAGES.
 owner string, vendor who owns this module
 package_name string, Apex Container package name. Override value for attribute package:name in AndroidManifest.xml
 prebuilts list of string, List of prebuilt files that are embedded inside this APEX bundle.
 product_specific bool, whether this module is specific to a software configuration of a product (e.g. country, network operator, etc). When set to true, it is installed into /product (or /system/product if product partition does not exist).
product_variables.always_use_prebuilt_sdks
enabled
  *bool
product_variables.debuggable
init_rc
  []string
required
  []string
host_required
  []string
target_required
  []string
product_variables.flatten_apex
enabled
  *bool
product_variables.pdk
enabled
  *bool
product_variables.unbundled_build
enabled
  *bool
 proprietary bool, whether this is a proprietary vendor module, and should be installed into /vendor
 ramdisk bool, Whether this module is installed to ramdisk
 recovery bool, Whether this module is installed to recovery partition
 required list of string, names of other modules to install if this module is installed
 soc_specific bool, whether this module is specific to an SoC (System-On-a-Chip). When set to true, it is installed into /vendor (or /system/vendor if vendor partition does not exist).
 system_ext_specific bool, whether this module extends system. When set to true, it is installed into /system_ext (or /system/system_ext if system_ext partition does not exist).
 target interface
target.android
 compile_multilib string
target.host
 compile_multilib string
 target_required list of string, names of other modules to install on target if this module is installed
 trim_against string, Trim against a specific Dynamic Common Lib APEX
 vendor bool, whether this module is specific to an SoC (System-On-a-Chip). When set to true, it is installed into /vendor (or /system/vendor if vendor partition does not exist). Use `soc_specific` instead for better meaning.
 vendor_ramdisk bool, Whether this module is installed to vendor ramdisk
 vintf_fragments list of string, VINTF manifest fragments to be installed if this module is installed
 visibility list of string, Controls the visibility of this module to other modules. Allowable values are one or more of these formats:

 ["//visibility:public"]: Anyone can use this module.
 ["//visibility:private"]: Only rules in the module's package (not its subpackages) can use
     this module.
 ["//visibility:override"]: Discards any rules inherited from defaults or a creating module.
     Can only be used at the beginning of a list of visibility rules.
 ["//some/package:__pkg__", "//other/package:__pkg__"]: Only modules in some/package and
     other/package (defined in some/package/*.bp and other/package/*.bp) have access to
     this module. Note that sub-packages do not have access to the rule; for example,
     //some/package/foo:bar or //other/package/testing:bla wouldn't have access. __pkg__
     is a special module and must be used verbatim. It represents all of the modules in the
     package.
 ["//project:__subpackages__", "//other:__subpackages__"]: Only modules in packages project
     or other or in one of their sub-packages have access to this module. For example,
     //project:rule, //project/library:lib or //other/testing/internal:munge are allowed
     to depend on this rule (but not //independent:evil)
 ["//project"]: This is shorthand for ["//project:__pkg__"]
 [":__subpackages__"]: This is shorthand for ["//project:__subpackages__"] where
     //project is the module's package. e.g. using [":__subpackages__"] in
     packages/apps/Settings/Android.bp is equivalent to
     //packages/apps/Settings:__subpackages__.
 ["//visibility:legacy_public"]: The default visibility, behaves as //visibility:public
     for now. It is an error if it is used in a module.

If a module does not specify the `visibility` property then it uses the `default_visibility` property of the `package` module in the module's package. If the `default_visibility` property is not set for the module's package then it will use the `default_visibility` of its closest ancestor package for which a `default_visibility` property is specified. If no `default_visibility` property can be found then the module uses the global default of `//visibility:legacy_public`. The `visibility` property has no effect on a defaults module although it does apply to any non-defaults module that uses it. To set the visibility of a defaults module, use the `defaults_visibility` property on the defaults module; not to be confused with the `default_visibility` property on the package module. See https://android.googlesource.com/platform/build/soong/+/master/README.md#visibility for more details.

prebuilt_apex

prebuilt_apex imports an `.apex` file into the build graph as if it was built with apex.
 name string, The name of the module. Must be unique across all modules.
 src string, the path to the prebuilt .apex file to import. This cannot be marked as `android:"arch_variant"` because the `prebuilt_apex` is only mutated for android_common. That is so that it will have the same arch variant as, and so be compatible with, the source `apex` module type that it replaces.
 apex_name string, Canonical name of this APEX. Used to determine the path to the activated APEX on device (/apex/<apex_name>). If unspecified, follows the name property.
 arch interface
arch.arm
 src string
arch.arm64
 src string
arch.riscv64
 src string
arch.x86
 src string
arch.x86_64
 src string
 compile_multilib string, control whether this module compiles for 32-bit, 64-bit, or both. Possible values are "32" (compile for 32-bit only), "64" (compile for 64-bit only), "both" (compile for both architectures), or "first" (compile for 64-bit on a 64-bit platform, and 32-bit on a 32-bit platform).
 debug_ramdisk bool, Whether this module is installed to debug ramdisk
 device_specific bool, whether this module is specific to a device, not only for SoC, but also for off-chip peripherals. When set to true, it is installed into /odm (or /vendor/odm if odm partition does not exist, or /system/vendor/odm if both odm and vendor partitions do not exist). This implies `soc_specific:true`.
dist Dist
configuration to distribute output files from this module to the distribution directory (default: $OUT/dist, configurable with $DIST_DIR)
 targets list of string, Copy the output of this module to the $DIST_DIR when `dist` is specified on the command line and any of these targets are also on the command line, or otherwise built
 dest string, The name of the output artifact. This defaults to the basename of the output of the module.
 dir string, The directory within the dist directory to store the artifact. Defaults to the top level directory ("").
 suffix string, A suffix to add to the artifact file name (before any extension).
 append_artifact_with_product bool, If true, then the artifact file will be appended with _<product name>. For example, if the product is coral and the module is an android_app module of name foo, then the artifact would be foo_coral.apk. If false, there is no change to the artifact file name.
 tag string, A string tag to select the OutputFiles associated with the tag. If no tag is specified then it will select the default dist paths provided by the module type. If a tag of "" is specified then it will return the default output files provided by the modules, i.e. the result of calling OutputFiles("").
 dists list of Dist, a list of configurations to distribute output files from this module to the distribution directory (default: $OUT/dist, configurable with $DIST_DIR)
 enabled bool, emit build rules for this module Disabling a module should only be done for those modules that cannot be built in the current environment. Modules that can build in the current environment but are not usually required (e.g. superceded by a prebuilt) should not be disabled as that will prevent them from being built by the checkbuild target and so prevent early detection of changes that have broken those modules.
 exported_bootclasspath_fragments list of string, List of bootclasspath fragments inside this prebuilt APEX bundle and for which this APEX bundle will create an APEX variant.
 exported_java_libs list of string, List of java libraries that are embedded inside this prebuilt APEX bundle and for which this APEX bundle will create an APEX variant and provide dex implementation jars for use by dexpreopt and boot jars package check.
 exported_systemserverclasspath_fragments list of string, List of systemserverclasspath fragments inside this prebuilt APEX bundle and for which this APEX bundle will create an APEX variant.
 filename string, optional name for the installed apex. If unspecified, name of the module is used as the file name
 host_required list of string, names of other modules to install on host if this module is installed
 init_rc list of string, init.rc files to be installed if this module is installed
 installable bool, whether the extracted apex file is installable.
 licenses list of string, Describes the licenses applicable to this module. Must reference license modules.
 multilib interface
 native_bridge_supported bool, Whether this module is built for non-native architectures (also known as native bridge binary)
 overrides list of string, names of modules to be overridden. Listed modules can only be other binaries (in Make or Soong). This does not completely prevent installation of the overridden binaries, but if both binaries would be installed by default (in PRODUCT_PACKAGES) the other binary will be removed from PRODUCT_PACKAGES.
 owner string, vendor who owns this module
 prefer bool, When prefer is set to true the prebuilt will be used instead of any source module with a matching name.
 product_specific bool, whether this module is specific to a software configuration of a product (e.g. country, network operator, etc). When set to true, it is installed into /product (or /system/product if product partition does not exist).
product_variables.always_use_prebuilt_sdks
enabled
  *bool
product_variables.debuggable
init_rc
  []string
required
  []string
host_required
  []string
target_required
  []string
product_variables.flatten_apex
enabled
  *bool
product_variables.native_coverage
src
  *string
product_variables.pdk
enabled
  *bool
product_variables.unbundled_build
enabled
  *bool
 proprietary bool, whether this is a proprietary vendor module, and should be installed into /vendor
 ramdisk bool, Whether this module is installed to ramdisk
 recovery bool, Whether this module is installed to recovery partition
 required list of string, names of other modules to install if this module is installed
 soc_specific bool, whether this module is specific to an SoC (System-On-a-Chip). When set to true, it is installed into /vendor (or /system/vendor if vendor partition does not exist).
 system_ext_specific bool, whether this module extends system. When set to true, it is installed into /system_ext (or /system/system_ext if system_ext partition does not exist).
 target interface
target.android
 compile_multilib string
target.host
 compile_multilib string
 target_required list of string, names of other modules to install on target if this module is installed
 use_source_config_var ConfigVarProperties, When specified this names a Soong config variable that controls the prefer property. If the value of the named Soong config variable is true then prefer is set to false and vice versa. If the Soong config variable is not set then it defaults to false, so prefer defaults to true. If specified then the prefer property is ignored in favor of the value of the Soong config variable.
 vendor bool, whether this module is specific to an SoC (System-On-a-Chip). When set to true, it is installed into /vendor (or /system/vendor if vendor partition does not exist). Use `soc_specific` instead for better meaning.
 vendor_ramdisk bool, Whether this module is installed to vendor ramdisk
 vintf_fragments list of string, VINTF manifest fragments to be installed if this module is installed
 visibility list of string, Controls the visibility of this module to other modules. Allowable values are one or more of these formats:

 ["//visibility:public"]: Anyone can use this module.
 ["//visibility:private"]: Only rules in the module's package (not its subpackages) can use
     this module.
 ["//visibility:override"]: Discards any rules inherited from defaults or a creating module.
     Can only be used at the beginning of a list of visibility rules.
 ["//some/package:__pkg__", "//other/package:__pkg__"]: Only modules in some/package and
     other/package (defined in some/package/*.bp and other/package/*.bp) have access to
     this module. Note that sub-packages do not have access to the rule; for example,
     //some/package/foo:bar or //other/package/testing:bla wouldn't have access. __pkg__
     is a special module and must be used verbatim. It represents all of the modules in the
     package.
 ["//project:__subpackages__", "//other:__subpackages__"]: Only modules in packages project
     or other or in one of their sub-packages have access to this module. For example,
     //project:rule, //project/library:lib or //other/testing/internal:munge are allowed
     to depend on this rule (but not //independent:evil)
 ["//project"]: This is shorthand for ["//project:__pkg__"]
 [":__subpackages__"]: This is shorthand for ["//project:__subpackages__"] where
     //project is the module's package. e.g. using [":__subpackages__"] in
     packages/apps/Settings/Android.bp is equivalent to
     //packages/apps/Settings:__subpackages__.
 ["//visibility:legacy_public"]: The default visibility, behaves as //visibility:public
     for now. It is an error if it is used in a module.

If a module does not specify the `visibility` property then it uses the `default_visibility` property of the `package` module in the module's package. If the `default_visibility` property is not set for the module's package then it will use the `default_visibility` of its closest ancestor package for which a `default_visibility` property is specified. If no `default_visibility` property can be found then the module uses the global default of `//visibility:legacy_public`. The `visibility` property has no effect on a defaults module although it does apply to any non-defaults module that uses it. To set the visibility of a defaults module, use the `defaults_visibility` property on the defaults module; not to be confused with the `default_visibility` property on the package module. See https://android.googlesource.com/platform/build/soong/+/master/README.md#visibility for more details.