platform_build_soong/apex
Spandan Das 50801e20a3 Support min_sdk_version overrides in apexes
The use case for this are go apexes which are only installed in T and
above, even though the base AOSP apexes might be installable on < T
devices.

If provided, the overridden min_sdk_version will be
1. Used as the `min_sdk_version` in the manifest file of the
   top-level override apex binary
2. Used to build the transitive closure of its dependency with that
   min_sdk_version, i.e. with a different apex variant.

(2) requires some special handling. At ToT, the outgoing transition
value is the base apex name (e.g. com.android.foo). Since
min_sdk_version of the overridding apex can be different than the
overridden apex, the base apex name is no longer sufficient. Instead,
transition to the name of the overriding apex com.mycompany.android.foo.
If deduping is possible, transitive deps will get deduped to
`apex_<min_sdk_version>` later.

Test: added a unit test
Test: in internal, modified min_sdk_version of com.google.android.go.art
locally, built BA and Go apexes, and used `aapt2 dump badging` to verify
that BA has minSdkVersion of 31 and Go has minSdkVersion of 33

Bug: 295311875

Change-Id: Ifbe123d1517fccbc0c058042b8a6eeb3609b6787
2024-05-20 16:24:52 +00:00
..
aconfig_test.go Switch to static deps 2024-04-26 13:46:09 +00:00
Android.bp Remove VNDK information from CC and APEX tests 2024-03-28 15:15:01 +09:00
androidmk.go Propagate AconfigFiles in ModuleBase. 2024-01-24 23:45:12 +00:00
apex.go Support min_sdk_version overrides in apexes 2024-05-20 16:24:52 +00:00
apex_sdk_member.go Add apexes property to sdk 2022-07-06 15:58:43 +00:00
apex_singleton.go Generate info about the selected app variant in platform builds 2024-03-14 18:12:30 +00:00
apex_test.go Support min_sdk_version overrides in apexes 2024-05-20 16:24:52 +00:00
bootclasspath_fragment_test.go Fix the args used to dexpreopt system server jars in prebuilt apexes 2024-01-26 18:06:41 +00:00
builder.go Remove Device VNDK version usage from Soong 2024-04-05 01:57:32 +00:00
classpath_element_test.go Convert OtherModuleProvider to generic providers API 2023-12-14 16:12:22 -08:00
deapexer.go Propagate profile_guided requirement of imports to top-level apex 2024-01-30 18:04:52 +00:00
dexpreopt_bootjars_test.go Determine GC type based on BUILT_KERNEL_VERSION_FILE. 2024-02-02 09:23:37 +08:00
key.go Remove ConvertWithBp2build implementations 2023-12-08 13:51:05 -08:00
platform_bootclasspath_test.go Align boot jar exclusion with apex_contributions 2024-05-16 00:35:28 +00:00
prebuilt.go Align boot jar exclusion with apex_contributions 2024-05-16 00:35:28 +00:00
systemserver_classpath_fragment_test.go Propagate profile_guided requirement of imports to top-level apex 2024-01-30 18:04:52 +00:00
TEST_MAPPING Add TEST_MAPPING for build/soong/apex 2019-08-07 17:33:24 +09:00
testing.go Add allowed-deps tests 2023-04-27 09:56:04 +09:00
vndk.go Remove PlatformVndkVersion property 2024-04-01 16:37:20 +09:00