Bug: http://b/194128476
Coverage instrumentation will support continuous mode when this flag is
set.
Test: CLANG_COVERAGE_CONTINUOUS_MODE m and verify continuous mode works.
Change-Id: I187574c600ba10145dfb2c6c23551d235c33103a
Add PLATFORM_DISPLAY_VERSION to version_defaults.mk that will propagate
to the ro.build.version.release_or_preview_display property and
be shown as the Android version for preview releases by Settings.
Bug: 221950960
Test: manual
Change-Id: I697cc59f77f92aa98a8a2573662797e6d3bd2042
These files are difficult to support in the Starlark product
configuration. They also aren't really a good representation
of products even with Makefiles, because they only display
information from products that have been imported with
import-nodes, but generate empty files for the other products
that are included from the imported ones.
For example, lunching aosp_arm64 then running
`m out/products/build/make/target/product/core_64_bit.mk.txt`
would generate a file full of empty variable assignments.
Bug: 221312856
Test: Presubmits
Change-Id: I18613a628968acc25b57b44e229de7df1b2476ef
Export the list of variants (host, host_cross, device) a build module
supports to module-info for downstream tools. The values correspond to
the Soong `host_supported`, `host_cross_supported`, and `device_supported`
attribute values.
Bug: 220263783
Test: m out/target/product/vsoc_x86_64/module-info.json
Change-Id: I10ae6ea21791d0d100686dcabecbce543a9adc3f
This is clearer and allows us to more easily
add new fields to the struct. One usecase for
more fields is the artifact path requirements.
Bug: 221312707
Test: Verified starlark product config still works for aosp_arm64
Change-Id: I4c4307e916f3b3fc8ca303b10eac3c7c73b76ac6
* Remove 'generic_ramdisk' certification, as we are not certifying
'init_boot' anymore.
* Add a new 'boot' certificate that certifies the whole boot.img.
* The new 'boot' & existing 'generic_kernel' certificates are directly
appended at the end of the boot.img, and the mkbootimg
--boot_signature argument is removed.
Bug: 211741246
Test: m bootimage
Test: ./boot_signature_info.sh boot-5.10.img
Change-Id: I143680b1cab50a6915df56c8273f8741beaf1180
Allows allowlisting modules that can temporarily continue to use a
directory as an input while some module types restrict their allowed
inputs.
Test: CI
Change-Id: Ic968a6f6efad45b6c1095dd214813e326d7493c1
The virt APEX payload public key needs to be embedded in pvmfw so that
is verifies the right set of images. As things are being resigned,
update that embedded key so that it matches the APEX.
Bug: 220018566
Test: sign_target_files_apks
Change-Id: I09be91275ec1d1aa6f921c54a96c5159571ddead
Devices using a prebuilt boot.img, e.g., a GKI, will re-sign
the boot.img to append AVB footers. Currently the value of
"com.android.build.boot.os_version" in the AVB footer is set
to the Android platform version. However, the GKI image might
be from another release branch, e.g., using a Android12-5.10
GKI in a Android 13 codebase.
Adding BOOT_OS_VERSION to allow specify the value separately.
Bug: 211364958
Test: make, then `avbtool info_image --image $OUT/boot.img`.
Change-Id: I335cc7b6c5a455d566f364df6a7dae79facc7a87
The goal of this change is to cause ro.product.first_api_level to be
set in /system/build.prop in targets with PRODUCT_FULL_TREBLE=false
(which may be the case for targets without the usual set of
hardware interfaces, such as the mini targets being added in
https://r.android.com/1966051).
Setting ro.product.first_api_level is necessary for devices with newer
kernels to boot because it controls which metadata encryption format
is used, and an old format that is incompatible with new kernels is
used by default (see commit 4073c0b5241b635cb59e9e8a75ddcc783b5a99ce in
system/vold). There also appear to be e.g. bionic tests that check this
property. So it seems reasonable to set it even if PRODUCT_FULL_TREBLE
is false.
To begin with, stop adding it to ADDITIONAL_SYSTEM_PROPERTIES. There's
basically no point in adding it there because it will be filtered
out by the property blocklist for the system partition, whether
PRODUCT_FULL_TREBLE is true or false. This lets us remove the
blocklist entry, which causes ro.product.first_api_level to
appear in /system/build.prop via ADDITIONAL_VENDOR_PROPERTIES on
PRODUCT_FULL_TREBLE=false targets.
Bug: 217455793
Change-Id: I8c07baf9d308ea734ffed5d9b1776b60cdbf3435
Virtual platforms may have no boot partition as such, so there
is no practical limit on the partition size. Therefore, make it
possible to omit the partition size (i.e. by omitting a definition of
BOARD_*BOOTIMAGE_PARTITION_SIZE), allowing unrestricted boot partition
sizes on those platforms.
The macro get-bootimage-partition-size needs to return an empty string
in the case where the variable is not defined in order for consumers
such as assert-max-image-size and get-hash-image-max-size that test
its result using $(if) to properly disable the size check in that
case. The indentation was causing the macro to return the string
" " instead, which caused an unrequested size check to be inserted.
Fix it by removing the indentation.
A separate patch to avbtool makes it possible to omit the
--partition_size argument when passing --dynamic_partition_size.
Change-Id: Ie836feeb4c3e3b86d9c7950ff45933294cea9410
Bug: 142352330
Some product config makefiles are being refactored for
the conversion to Starlark. In order to test that the
refactor doesn't cause any meaningful change, we test
that the ninja files are the same before/after the refactor.
Currently, they have differences in the order of AB_OTA_PARTIONS,
which shouldn't matter. In order to increase our confidence
and make the ninja files more stable, sort AB_OTA_PARTITIONS
before it's used.
Bug: 220169197
Test: Presubmits
Change-Id: I6a9f9f2990406d810577cf8930416925f2987311
So that it can be added to the soong config.
Bug: 220086085
Test: m nothing && inspect soong.variables
Change-Id: I949059b9284b16220e2489010279aeae98b4b7fb
This change exports the list of test_data_bins as data dependencies
that are required by modules when running the test.
Bug: 215234071
Test: m out/target/product/vsoc_x86_64/module-info.json
Change-Id: Ie5c1ef70055618a5fa0ba1bcfbcba8054743d41a
llvm-ar bundled in the next llvm update will stop accepting the legacy
single-dash argument format.
Bug: 219872355
Test: presubmit
Change-Id: Iede68e4b13c3a01c176d26f335f96879c5c72c12
The PRODUCT_COPY_FILES is populated before definitions.mk mapping
source files to installed files that get copied unchanged.
Need to be able to declare license metadata for the copied files such
that similarly named files in different projects can have different
licenses.
Need a macro to convert target names to their corresponding license
metadata.
Bug: 68860345
Bug: 151177513
Bug: 151953481
Bug: 213388645
Bug: 210912771
Test: m nothing
Change-Id: Ic244b3525e72b6cd8c4c4305bf5ad430d6e24ccb
It defines values for Build.VERSION.KNOWN_CODENAMES constant, and should
contain all codenames starting from Q, including current codename
for in development branches.
Bug: 211747008
Test: presubmit
Change-Id: If8995750e369ba39bfc7041580c21b2f96632a78
This change exports the list of dependencies that are required by
modules at runtime. Note that only the host case is currently
handled.
Bug: 215243373
Test: m out/target/product/vsoc_x86_64/module-info.json
Change-Id: I05199c54da311e59c7ea87595397ee4eecfab6a3
This definition missing will cause merge conflict which is already in
main branch.
Bug: 215243373
Test: m out/target/product/vsoc_x86_64/module-info.json
Change-Id: Ifc103268aad9d6769822ff1eae4db1cc59aee57e
Merged-In: I3b5e9bb3985c2ae83381499a44b339a7b1deb05c
Products can define PRODUCT_VIRTUAL_AB_COMPRESSION_METHOD
to specify the compression algorithm they prefer, or "none"
for no compression at all.
Test: th
Change-Id: I4fa27bd2c87b8f46c51023168d079e9b47ce2924