The size of the ramdisk has greatly increased, which can be a source of
boot time regressions. Strip the modules of debug symbols for the vendor
ramdisk and vendor partitions; vendor stripping can be skipped via BOARD
config.
Bug: 156395749
Signed-off-by: J. Avila <elavila@google.com>
Change-Id: I7d1736da1599e265793173a741053d8a09f1622f
am skip reason: Change-Id I47875bf7a698390e11690150e6516a3064550ca0 with SHA-1 b4702b7006 is in history
Change-Id: I6b4f9ca8522a45c155f8d59e82a2c7996769a110
The oem partition allows system build.prop to import properties from it
by "import /oem/oem.prop xxxx". An _ImportParser() error was raised on
this case.
BUG: 154171021
Test: 1) "atest --host releasetools_test releasetools_py3_test -c"
2) On a device who has oem partition, "make dist" and sign its
target zip file.
Change-Id: I47875bf7a698390e11690150e6516a3064550ca0
Merged-In: I47875bf7a698390e11690150e6516a3064550ca0
am skip reason: Change-Id I637dea3472354236d2fd1ef0a3306712b3283c29 with SHA-1 d6867167d1 is in history
Change-Id: I1e571b74e74a75bcf081c1ff20e4cabef176c719
* changes:
Add an option to input the boot variables for OTA package generation
Reland "Calculate the runtime fingerprint prefixes from build prop"
Reland "Add a wrapper class PartitionBuildProp""
am skip reason: Change-Id I0f4f837412075520153d21c9ca12cf5c3f555de7 with SHA-1 9425870f73 is in history
Change-Id: If2ef43fb2329f6996de2457f87c8e71686000efb
First, make it safer for incremental builds. We used to just be
depending on the bootable/recovery/tools/recovery_l10n/res dir as a
dependency, but that would only trigger a rebuild if a direct child
file/directory was added or removed (so essentially, when a translation
was addded or removed). If a translation was updated, it wouldn't
re-trigger recovery_text_res.
So instead of depending on the directory, depend on the results from
running `find` to list all of the contents in that directory.
Next, move it out of PACKAGING. `m installclean`, which runs in between
incremental builds on our build servers, deletes the obj/PACKAGING
directory. So when recovery_text_res used that directory, we were having
to rebuild it on every incremental build, which isn't optimal when it
takes nearly 90s to build.
So with:
$ lunch aosp_coral-eng
$ m bootimage
$ m installclean
$ m bootimage
The second `m bootimage` went from executing 666 actions in 93s to
executing 658 actions in 6s.
Finally, remove the last uses of $(call include-path-for,recovery),
since they were all in this file (and they weren't using it for include
paths...). We'd like to remove all of these and switch them to header
libraries or other use cases, but in this case, it's just shorter to use
the real path.
Test: treehugger
Test: m bootimage;
touch bootable/recovery/tools/recovery_l10n/res/values/strings.xml
m bootimage
Test: m bootimage; m installclean; m bootimage
Change-Id: I005592e49443aab45ed039a2f0c63f7a69035565
The values of the ro.boot* variables are not part of the image files
and are provided (e.g. by bootloaders) at runtime. Meanwhile, their
values may affect some of the device build properties, as a different
build.prop file can be imported by init during runtime.
This cl adds an option to accepts a list of possible values for some
boot variables. The OTA generation script later use these values to
calculate the alternative runtime fingerprints of the device; and
list the device names and fingerprints in the OTA package's metadata.
The OTA metadata is verified by the OTA server or recovery to ensure
the correct OTA package is used for update. We haven't made any
restrictions on what ro.boot* variables can be used for fingerprint
override. One possible candidate can be the skus listed in
ODM_MANIFEST_SKUS.
Bug: 152167826
Test: unittests pass, generate an OTA file with the new option
Change-Id: I637dea3472354236d2fd1ef0a3306712b3283c29
Merged-In: I637dea3472354236d2fd1ef0a3306712b3283c29
This reverts commit b21e48b499.
In practice, some partners use the 'import' statement to override
the device fingerprint at runtime. The runtime fingerprint will
later add to the metadata of OTA package, so that the OTA server
can deliver the package to corresponding devices correctly.
This CL supports parsing a subset of import statement that the init
process recognizes. And we loose the restriction based on how the
dynamic fingerprint is used in practice. Right now, we only searches
for the override of brand, name and device. And the placeholder
format should be ${placeholder}, with its value supplied by the
script caller.
As part of the implementation, we generate all the possible
combinations of the input boot variables. And recalculate the
fingerprint for each of the combination. Though we load the
build.prop multiple times, the logic is easier to follow. Also,
it's more convenient to enhance the logic if we only want to
allow some of the boot variables combination later.
Bug: 152167826
Change-Id: I4a9fa35c7ac037ff1cf4f9a4bdff602beac3894b
Merged-In: I4a9fa35c7ac037ff1cf4f9a4bdff602beac3894b
Test: unittests pass
This reverts commit 6022545272.
The build prop for a partition used to be a simple key:value
dictionary. But we need more fields to hold the alternative build
props overriden by the 'import' statement. Therefore, add a new
class as a wrapper for these props first.
Bug: 152167826
Change-Id: I5c952cd2a976ba1a09ddc66d56c2b8b55a61986b
Merged-In: I5c952cd2a976ba1a09ddc66d56c2b8b55a61986b
Test: unittests pass
am skip reason: Change-Id I248d4e2097992f00975b344b5da41aa5d8016812 with SHA-1 43872f0eb7 is in history
Change-Id: I627cef554473efad5dede49c348a2f9ef1b7bd8c
am skip reason: Change-Id Ib2925aec6ea7a2a01a554c808d6697d8c85f9fc0 with SHA-1 4e20965769 is in history
Change-Id: Ia90fd62661f9fbbf1acdef7cccbd0774f7ad224f
include stub cellbroadcat app for data preservation by dafault.
Bug: 155844209
Change-Id: I34d1978ce89f4d4edbf327a3b61f7fb87262aae0
Merged-in: I34d1978ce89f4d4edbf327a3b61f7fb87262aae0
If the BoardConfig defined BOARD_VENDOR_RAMDISK_MODULES_LOAD and
BOARD_VENDOR_RAMDISK_RECOVERY_KERNEL_MODULES_LOAD, generate both a
modules.load and modules.load.recovery respectively on the vendor
ramdisk. BOARD_VENDOR_RAMDISK_MODULES must be the set, or super set,
of all the modules represented in both of *_LOAD BOARD variables.
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 151950334
Test: build, confirm, fastboot flashall, boot with split.
Merged-In: Ib2925aec6ea7a2a01a554c808d6697d8c85f9fc0
Change-Id: Ib2925aec6ea7a2a01a554c808d6697d8c85f9fc0
aosp_arm64 has no emulators after the patch:
https://android-review.googlesource.com/c/platform/build/+/1286895
The patch creates all other emulator_* devices by cloning from
generic_*, and modify all sdk_phone_* to use them.
Bug: 111538404
Test: build sdk_phone_armv7-userdebug
Test: build sdk_phone_x86_64-userdebug
Test: build sdk_phone_x86-userdebug
Change-Id: I2b82e999ea919f005729f322cd948e6b72ba6843
am skip reason: Change-Id Ia88c8efecb18db9c27baa466e492bfd898b581d3 with SHA-1 1e6b3e78df is in history
Change-Id: I92391877330262e0e839dfe3873ef5d98238a252
am skip reason: Change-Id I08990b70d45c0663a9700f41b670513674bf7e97 with SHA-1 68bee4b679 is in history
Change-Id: I8bc6d8064209b1564a1b934ee050add1164b7642