Right now they're named ro.bootimage.* which is really confusing.
Change it so that if generic ramdisk is in boot.img, then name the
properties as ro.bootimage.*, otherwise if generic ramdisk is in
init_boot.img, then name the prop as ro.init_boot.*.
Bug: 211823573
Test: m dist
Change-Id: Icff3c7be04b9a3c6490fbf49ba4f05565b029890
Bug: http://b/214396112
It is needed for code coverage smoke test. Retain the
`llvm-profdata.zip` name since it is used in Tradefed.
This fixes aosp/2017370 which incorrectly packaged llvm-profdata twice.
Test: `CLANG_COVERAGE=true m dist` and inspect llvm-profdata.zip
Change-Id: Ic1cbebff3f6fbea04a6c58c6d57557d0ffde14ae
GKI boot images will not set system version & SPL value in the
boot image header. They can be set by the device manufacturer
in the AVB properties instead.
Bug: 211741246
Test: build and `unpack_bootimg`
Change-Id: Ib357184636cb0c0c9b2a380ab3e3da7621d21790
Currently inherit-product and the rest of the product
configuration infrastructure does not handle wildcards.
However, they still get passed through unchanged, until
they reach the raw Make include statement, which expands
them. This essentially makes a meta-product that is the
result of combining all the makefiles that were matched.
In Starlark, the behavior is to actually treat each file
as it's own product. This causes a discrepency when using
`m product-graph`, where make shows one node for all those
files and Stalark has a node for each.
This is probably unintentional behavior, so change Make
to also import each file as separate products. On the
product I was investigating, the only difference this
made in the ninja file was in the product graph.
Bug: 221312856
Test: Presubmits
Change-Id: I9ca7aff0b0790aeb6e42861ce2745feed8a1a7c4
Usages of SOONG_CONFIG_art_module_source_build have been
replaced with ART_MODULE_BUILD_FROM_SOURCE now.
Bug: 220940864
Test: Presubmits
Change-Id: Ibe2115e385efe3ec02cd66ff3c5aca73ce986508
prebuilt ART module.
They were added with the intention of flipping the last fallback to use
prebuilts by default, but that has been descoped. Instead let the ART
module variable default to the generic MODULE_BUILD_FROM_SOURCE.
Test: env MODULE_BUILD_FROM_SOURCE=true \
build/soong/soong_ui.bash --dumpvars-mode \
--vars="MODULE_BUILD_FROM_SOURCE ART_MODULE_BUILD_FROM_SOURCE"
MODULE_BUILD_FROM_SOURCE='true'
ART_MODULE_BUILD_FROM_SOURCE='true'
Test: env MODULE_BUILD_FROM_SOURCE=false \
build/soong/soong_ui.bash --dumpvars-mode \
--vars="MODULE_BUILD_FROM_SOURCE ART_MODULE_BUILD_FROM_SOURCE"
MODULE_BUILD_FROM_SOURCE='false'
ART_MODULE_BUILD_FROM_SOURCE='false'
Test: env MODULE_BUILD_FROM_SOURCE=false \
ART_MODULE_BUILD_FROM_SOURCE=true \
build/soong/soong_ui.bash --dumpvars-mode \
--vars="MODULE_BUILD_FROM_SOURCE ART_MODULE_BUILD_FROM_SOURCE"
MODULE_BUILD_FROM_SOURCE='false'
ART_MODULE_BUILD_FROM_SOURCE='true'
Bug: 172480615
Bug: 184842499
Change-Id: I433e0236e595422f4d6fe2b4b2411491e3c600cf
It is needed for code coverage smoke test. Retain the
`llvm-profdata.zip` name since it is used in Tradefed.
Test: `CLANG_COVERAGE=true m dist` and inspect llvm-profdata.zip
Change-Id: Icb48b0fa22deec8c3c49f0e5bb3ae33450883e0e
In order to use Starlark-based product and board configuration for
a product, add its name to the STARLARK_OPT_IN_PRODUCTS list in
the AndroidProducts.mk file where this product is defined.
Fixes: 220379303
Test: Temporarily added STARLARK_OPT_IN_PRODUCTS to build/make/target/product/AndroidProducts.mk
Change-Id: Iacd23cec00a7a1958701873bce0fc9d5f79b1f17
The make version, find-copy-subdir-files, has very
similiar functionality: it adds `| sed "s://:/:g"`
to its results.
Fixes: 223221122
Test: Manually
Change-Id: Iaac96f760d46304aed27a7d31bb4e8bd930c2c55
Most branches, most of the time, will build modules from source. By
changing the default we make it easier to switch a whole branch to use
module prebuilts by requiring only one CL to be committed on that branch
and nowhere else.
Before this change, dozens of Soong targets needed to be updated when
deciding to start using prebuilts for modules and sdk stubs. In
addition, the typical need is to enable prebuilts on a single branch at
the time, which resulted in a dozens of "D0 N0T MERGE ANYWHERE" CLs,
causing a lot of confusion.
Bug: 184842499
Test: (on a branch with ModuleMetadataGoogle enabled as prebuilt):
m out/target/product/sunfish/product/app/ModuleMetadataGoogle/ModuleMetadataGoogle.apk
(verified with `aapt2 dump badging` that apk is built from source)
MODULE_BUILD_FROM_SOURCE=false m out/target/product/sunfish/product/app/ModuleMetadataGoogle/ModuleMetadataGoogle.apk
(verified with `aapt2 dump badging` that apk is prebuilt)
Change-Id: I625c48640c4bb1edf360605a1daac293a4a0a07a
EROFS images by default will only work on newer kernels. Old versions of
5.4 and 4.19 need an extra flag to mkfs.erofs.
Add BUILD_EROFS_USE_LEGACY_COMPRESSION to force this flag.
Bug: 222373106
Test: build with BUILD_EROFS_USE_LEGACY_COMPRESSION enabled
Change-Id: I3818e14356beaa11073c6b9fea6a6ad999bba4aa
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
These wrapper scripts are difficult to maintain and there's not really
any value add. The argument strings don't match and every new build flag
has to be connected in an extra place.
Bug: 222715577
Test: make with EROFS enabled
Change-Id: Ie0e51cc30aa08b004d5d8345a2a2d885e193ffa9