Use `soong_config_module_type` to install `*-developer-gsi.avbpubkey`
to either `ramdisk` or `vendor_ramdisk` based on the value of
`BOARD_MOVE_GSI_AVB_KEYS_TO_VENDOR_BOOT` in each device.
In build/soong/android/paths.go's modulePartition() function, there is
already logic to construct `vendor_ramdisk` and `ramdisk` partitions
based on the different values of
`BOARD_MOVE_RECOVERY_RESOURCES_TO_VENDOR_BOOT` and
`BOARD_USES_RECOVERY_AS_BOOT`. And the logic is identical to the
original Android.mk.
Therefore, this change only needs to determine whether the avb public
keys should be placed in `vendor_ramdisk` or `ramdisk` based on the
value of `BOARD_MOVE_GSI_AVB_KEYS_TO_VENDOR_BOOT`. The rest of the
judgment logic can be ignored.
Bug: 347636127
Test: 1) lunch aosp_cf_x86_64_phone && m q-developer-gsi.avbpubkey
2) check it installed to vendor_ramdisk/first_stage_ramdisk/avb/
3) lunch yukawa && m q-developer-gsi.avbpubkey
4) check it installed to ramdisk/avb/q-developer-gsi.avbpubkey
Change-Id: I6de1a038261f2feeae4504d8097c7392b166848d
71 lines
2 KiB
Text
71 lines
2 KiB
Text
// Copyright (C) 2024 The Android Open Source Project
|
|
//
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
//
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
|
|
soong_config_module_type {
|
|
name: "avb_keys_prebuilt_avb",
|
|
module_type: "prebuilt_avb",
|
|
config_namespace: "ANDROID",
|
|
bool_variables: [
|
|
"BOARD_MOVE_GSI_AVB_KEYS_TO_VENDOR_BOOT",
|
|
],
|
|
properties: [
|
|
"ramdisk",
|
|
"vendor_ramdisk",
|
|
],
|
|
}
|
|
|
|
avb_keys_prebuilt_avb {
|
|
name: "q-developer-gsi.avbpubkey",
|
|
src: "q-developer-gsi.avbpubkey",
|
|
soong_config_variables: {
|
|
BOARD_MOVE_GSI_AVB_KEYS_TO_VENDOR_BOOT: {
|
|
ramdisk: false,
|
|
vendor_ramdisk: true,
|
|
conditions_default: {
|
|
ramdisk: true,
|
|
vendor_ramdisk: false,
|
|
},
|
|
},
|
|
},
|
|
}
|
|
|
|
avb_keys_prebuilt_avb {
|
|
name: "r-developer-gsi.avbpubkey",
|
|
src: "r-developer-gsi.avbpubkey",
|
|
soong_config_variables: {
|
|
BOARD_MOVE_GSI_AVB_KEYS_TO_VENDOR_BOOT: {
|
|
ramdisk: false,
|
|
vendor_ramdisk: true,
|
|
conditions_default: {
|
|
ramdisk: true,
|
|
vendor_ramdisk: false,
|
|
},
|
|
},
|
|
},
|
|
}
|
|
|
|
avb_keys_prebuilt_avb {
|
|
name: "s-developer-gsi.avbpubkey",
|
|
src: "s-developer-gsi.avbpubkey",
|
|
soong_config_variables: {
|
|
BOARD_MOVE_GSI_AVB_KEYS_TO_VENDOR_BOOT: {
|
|
ramdisk: false,
|
|
vendor_ramdisk: true,
|
|
conditions_default: {
|
|
ramdisk: true,
|
|
vendor_ramdisk: false,
|
|
},
|
|
},
|
|
},
|
|
}
|