7fd531f5d1
`com.android.art` and its overrides include a `etc/boot-image.prof` which is used on device for profile guided dexopt. ``` $ deapexer list <path_in_product_out>/com.android.art.apex | grep boot-image $ deapexer list <path_in_product_out>/com.google.android.art.apex | grep boot-image ``` To identify that we should include a boot-image.prof in the override apexes, we currently look at ApexInfo.InApexVariants in the context of art's bootclasspath fragment module. InApexVariants are colated based on the min_sdk_version of the top-level apex. At ToT, we have a single variant of `art-bootlcasspath-fragment` for aosp art apex, google art apex and google go art apex. When google go art apex overrides the min_sdk_version, ApexInfo is cleaved, and two distinct variants of art-bootclasspath-fragment are created. The one corresponding to go art apex does not know we should include boot-image.prof To fix this, use AllApexInfoProvider instead. If any of the apexInfos corresponds to com.android.art, include etc/boot-image.prof Test: Added a unit test Test: With https://b.corp.google.com/issues/345173231#comment2 reverted, m com.google.android.go.art && deapexer list <apex> # verified that boot-image.prof exists Bug: 345173231 Bug: 295311875 Change-Id: I5a0e8f74725388f05343c64f268260b1eb139ae5 |
||
---|---|---|
.. | ||
aconfig_test.go | ||
Android.bp | ||
androidmk.go | ||
apex.go | ||
apex_sdk_member.go | ||
apex_singleton.go | ||
apex_test.go | ||
bootclasspath_fragment_test.go | ||
builder.go | ||
classpath_element_test.go | ||
deapexer.go | ||
dexpreopt_bootjars_test.go | ||
key.go | ||
platform_bootclasspath_test.go | ||
prebuilt.go | ||
systemserver_classpath_fragment_test.go | ||
TEST_MAPPING | ||
testing.go | ||
vndk.go |