Don't remove entries for overriddable modules

Previously, when there is apex_set that is overriding another module,
the entry for the overridden module is removed from apexkeys.txt.
However, this is wrong because the existence of the apex_set module
doesn't necessary mean that the module is insatalled instead of the
overridden module. That is determined by PRODUCT_PACKAGES which Soong
has no knowledge of. Therefore, we don't delete the entry for the
overridden (actually possibly overridable) modules in the file.

Bug: 158729168
Test: m
Change-Id: I85d0c756f862323bae556bf657d66ec50038985f
This commit is contained in:
Jiyong Park 2020-06-18 19:34:42 +09:00
parent 8d6286befe
commit ac5e79f900
2 changed files with 1 additions and 7 deletions

View File

@ -4988,7 +4988,7 @@ func TestApexKeysTxt(t *testing.T) {
apexKeysText := ctx.SingletonForTests("apex_keys_text")
content := apexKeysText.MaybeDescription("apexkeys.txt").BuildParams.Args["content"]
ensureContains(t, content, `name="myapex_set.apex" public_key="PRESIGNED" private_key="PRESIGNED" container_certificate="PRESIGNED" container_private_key="PRESIGNED" partition="system"`)
ensureNotContains(t, content, "myapex.apex")
ensureContains(t, content, `name="myapex.apex" public_key="PRESIGNED" private_key="PRESIGNED" container_certificate="PRESIGNED" container_private_key="PRESIGNED" partition="system"`)
}
func TestMain(m *testing.M) {

View File

@ -160,12 +160,6 @@ func (s *apexKeysText) GenerateBuildActions(ctx android.SingletonContext) {
presigned: true,
partition: m.PartitionTag(ctx.DeviceConfig()),
}
for _, om := range m.Overrides() {
if _, ok := apexKeyMap[om]; ok {
delete(apexKeyMap, om)
}
}
apexKeyMap[m.BaseModuleName()] = entry
}
})