64-bit GSI requires support both 64_32-bit and 64-bit devices at
the same time. Add a new variable TARGET_DYNAMIC_64_32_MEDIASERVER
to put mediaserver_dynamic.rc into GSI. Which starts 64-bit
mediaserver if ro.zygote is zygote64. Otherwise, it keeps the
original behavior to start 32-bit meidaserver.
Bug: 236664614
Test: make gsi_arm64-user; Check system/etc/init
Test: make gsi_arm-user; Check systen/etc/init
Test: cts-tradefed; run cts-on-gsi -m CtsViewTestCases
Change-Id: I74699ec5fafadcbe78a7fef6d10aaed752cd5afa
Original change: https://android-review.googlesource.com/c/platform/build/+/2063871
Change-Id: I5f1a0f2800475784acffc8e17891cf58c959d2aa
Ignore-AOSP-First: this is an automerge
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
Signing tool assumes GSI targets has boot.img and get error without
these settings.
Bug: 229814765
Change-Id: I1e8e7f6375e396e1c2feb858b97e7d27dc5a2dec
The EROFS is planned to replace the ext4 as the file system format
of readonly partitions. This patch is enabling the ability to
build GSI with EROFS. The usage is
$ GSI_FILE_SYSTEM_TYPE=erofs make -j
Bug: 227552340
Test: lunch gsi_arm64-user; GSI_FILE_SYSTEM_TYPE=erofs make -j
Test: Verify the file system format of system.img
Change-Id: Ie815002c677d099c4db0ab7ca22db16ac6123659
This adds a product that generates a soong.variables config similar to
the one manually maintained for the ndk build at the moment.
Bug: 174315599
Test: TARGET_PRODUCT=ndk m nothing && inspect out/soong/soong.variables
Change-Id: Ia10079b8a1ed8edf4efa2a6a5b04a079eece5360
After having gki_$arch, there is no longer need for building GKI
by target gsi_$arch. The BoardConfigGkiCommon.mk is also moved
to /device/generic/common. The patch removes all GKI related
settings and files from target gsi_$arch.
Bug: 212486689
Test: build dist of gsi_arm64-userdebug
Test: build dist of aosp_arm64-userdebug
Change-Id: I369f42ad1f6e3f519bb62c3f035e699df1c7468f
These options are for certifying official GKI release, so they should
never be added to build command of recovery.img and boot-debug.img.
Also define gki_signing_signature_args in misc_info.txt iff.
BOARD_GKI_SIGNING_KEY_PATH is defined, so there's one less conditional.
We need to define it even if BOARD_GKI_SIGNING_SIGNATURE_ARGS is empty,
so that sign_target_files_apks.py can modify the option during image
signing.
Bug: 210367929
Test: Presubmit
Change-Id: I9546fcda796586d97af244955e15c1b8dc9f6d92
This reverts commit af35677f03.
Bug: 185769808
Test: banchan com.android.media.swcodec module_arm64; m apps_only dist
Test: banchan com.android.media.swcodec aosp_arm64; m apps_only dist
In both cases, the built APEX doesn't have libsync.so in it.
apex_manifest.pb has libsync.so as requireNativeLibs.
Change-Id: I62397d50a6970a9316f0d6ddd36736f149bc7c2c
GKI devices should be using vendor_boot-debug.img from their device
build instead.
Bug: 200945738
Test: Presubmit
Change-Id: I4ff19f8ccef9befc826c02a628cc15f5d2f68b10
There will be no android13-5.4. This CL is to clean up build rules
that refers to the gki-5.4.
Bug: 199807830
Test: lunch aosp_arm64-userdebug
Change-Id: Ia982eb2ee3d1eb64db72c1836e433bcc53e71e3f
This is for GKI 1.0 devices to pass VtsHalKeymasterV4_0TargetTest.
For GKI 2.0 devices, they will use device-specific
BOOT_SECURITY_PATCH to sign a prebuilt GKI boot.img to
override this value.
See https://r.android.com//1711437 for details.
Bug: 192513934
Test: `lunch gsi_arm64-user` then `make bootimage`
Test: `avbtool info_image --image $OUT/boot-4.19-gz.img`, checks
com.android.build.boot.security_patch exists
Change-Id: I3909cccd0eae7c142d3c01d0ecb2c249286b9ebe
The patch fixes the boot-*-allsyms.img of gsi_arm64-userdebug to
pack the kernel with allsyms instead of without allsyms.
Bug: 192318869
Test: build gsi_arm64-userdebug; check the kernel in boot-*-allsyms.img
Test: build gsi_x86_64-userdebug; check the kernel in boot-*-allsyms.img
Change-Id: Ic89dbe27e166d57283c7bef574d525863d20e79f
Originally, the mainline kernel is for Android12.
The mainline kernel is changing to the next Android version.
We don't need to includes mainline boot.img in GSI targets.
Bug: 191120961
Test: TH and check the built result
Change-Id: Icd7677f362077eb675760d51a8f01c5db8baf7e1
If no board name, output nothing to the android-info.txt.
Currently the output of 'board=' might trigger some parsing error
on some clients.
Bug: 189990989
Test: make out/target/product/generic_arm64/android-info.txt
Change-Id: Ia9aab6c092c07349aa57f0e73f8c69b6e05874c1
There are GKI arm64 and x86_64 now. The patch restructures the
GKI common settings to a new common BoardConfig file
"BoardConfigGkiCommon.mk".
It includes the ramdisk and boot image settings for GKI.
The patch also removes obsolete TARGET_PRELINK_MODULE.
Bug: 177859525
Bug: 181277965
Test: lunch gsi_arm64-userdebug ; make dist
Test: lunch gsi_x86_64-userdebug ; make dist
Change-Id: I204c8937d97140cc3c6ed3473d494f03f534ed75
Merged-In: I204c8937d97140cc3c6ed3473d494f03f534ed75
There are GKI arm64 and x86_64 now. The patch restructures the
GKI common settings to a new common BoardConfig file
"BoardConfigGkiCommon.mk".
It includes the ramdisk and boot image settings for GKI.
The patch also removes obsolete TARGET_PRELINK_MODULE.
Bug: 177859525
Bug: 181277965
Test: lunch gsi_arm64-userdebug ; make dist
Test: lunch gsi_x86_64-userdebug ; make dist
Change-Id: I204c8937d97140cc3c6ed3473d494f03f534ed75
In the release signing process, it uses --signing_helper_with_files
for avbtool. This can be done by passing
--gki_signing_signature_args="--signing_helper_with_files=/path/to/helper.sh"
for mkbootimg.
However, this only works when there is a default value of
"gki_signing_signature_args" in the misc_info.txt, to be appended
with more extra args. Adding a default value "--prop foo:bar" to make
it work.
Note: also move the BOARD_GKI_* signing config to
BoardConfigGsiCommon.mk, so we don't have to duplicate the settings
for each architecture.
Bug: 178559811
Bug: 177862434
Test: `make bootimage`
`unpack_bootimg --boot_img $OUT/boot.img --out unpack`
`avbtool info_image --image ./unpack/boot_signature`
Change-Id: I8bd8ad3acf324931b47d45fd30bc590206b1927e
Delete 5.10-android12 because it is not frozen yet.
Bug: 185445182
Bug: 186647770
Bug: 187432172
Test: build aosp_cf_arm64_phone-eng
Change-Id: Ic28cd0078ba65f92f6867c6106c1d70f442b7040
The default algorithm is sha1, which shouldn't be used now.
Becaues sha256 is more robust against malicious attacks.
Bug: 187021780
Test: TreeHugger
Change-Id: Ia325f59d09687d6d501d9710cbdd3339d7566c60
This setting changes which libraries are included in the media.swcodec
apex, and is a step on the way of eliminating the differences when
building between module_arm64 and aosp_arm64.
Bug: 185769808
Bug: 185789027
Test: compare media.swcodec apex build with module_arm64 and aosp_arm64
Change-Id: Iafb0194827f984a7ba108f519016d24b2980e2e1
aosp_arm64 and gsi_arm64 build the boot.img binaries with prebuilt
kernels.Exporting the prebuilt-info.txt in dist folder makes to
easier to see which kernel build on AndroidCI.
Bug: 183504624
Test: lunch gsi_arm64-userdebug; make -j dist
Change-Id: I18f63af8588ced93e57b9d24e3b196d6f5694e72
Some devices e.g. cuttlefish include BoardConfigMainlineCommon.mk.
This allows BOARD_VNDK_VERSION to be changed other than current, to
allow mixed build experiment with BOARD_VNDK_VERSION.
Test: try setting BOARD_VNDK_VERSION and get_build_var
Change-Id: I7eb7fe6527f24ee2a3b4af32194a48ca98146a78
* changes:
Set BUILD_BROKEN_VENDOR_PROPERTY_NAMESPACE for goldfish
Add BUILD_BROKEN_VENDOR_PROPERTY_NAMESPACE to BoardConfig
Add PRODUCT_SHIPPING_API_LEVEL to productVariables
device/generic/goldfish/sepolicy/common/property_contexts still contains
violations, so temporarily setting build_broken to relax vendor property
check.
Bug: 176210699
Test: m vendor_property_contexts
Change-Id: Ia7d7830a7e994fd0766fd8854524bb6f9fa5cce6
files.
To clean up an unnecessary indirection. Instead introduce a common file
for module products.
Test: lunch module_{arm,arm64,x86,x86_64}
inspect the build banners
Change-Id: Ia312431a664e731f5d801ee2671f62f5cd23bd51
The config sets a few system properties that end up in command-line
arguments passed to dex2oat. Without these properties dex2oat invocation
fails, because options -Xms and -Xmx are do not have an argument.
Test: buid_mainline_modules.sh
Bug: 176171716
Change-Id: I4fd1f059aad5d48495948bfd668307de8b3d9ee1
Add a new BoardConfigModuleCommon for settings of this sort.
Bug: 176840868
Test: forrest module coverage build
Merged-In: Ie62261ecc0f0967f677a890a382fa1da060f7ff2
Change-Id: Ie62261ecc0f0967f677a890a382fa1da060f7ff2
(cherry picked from commit c0423c8dae)
Add a new BoardConfigModuleCommon for settings of this sort.
Bug: 176840868
Test: forrest module coverage build
Change-Id: Ie62261ecc0f0967f677a890a382fa1da060f7ff2
Goldfish specific board variable:
BOARD_EMULATOR_DYNAMIC_PARTITIONS_SIZE
is used to create misc_info.txt, which is needed to mix GSI or CSI on
Goldfish vendor image, and need to reflect the size of the current
super.img, which is now set to 4G+8M (from 3G+8M previously).
Bug: 174442566
Test: $ lunch aosp_x86_arm-userdebug; m
$ ls -l $OUT/super.img # make sure it's 4 GB
$ grep -i dynamic_partitions_group_size $OUT/misc_info.txt
super_emulator_dynamic_partitions_group_size=4294967296
Change-Id: Idd0fb302b20780ac97959fabec231a632205d46d
Current super image for GF is almost full in sdk_gphone_x86_arm
product, and not big enough to include CSI for mixed configuration,
which is a bit bigger than the system image of sdk_gphone_x86_arm.
Bug: 174442566
Test: $ lunch aosp_x86_arm-userdebug; m
$ ls -l $OUT/super.img # make sure it's 4 GB
Change-Id: Ia2473231c8490995a10700cbd6e0f82598a5e078
Prior to this the generic_* devices were typically used for this
purpose. There are a few reasons to create new specific ones:
- the generic_arm64 device has a hack specifically for building
multi-arch packages that we want to avoid
- the generic_* devices include a bunch of emulator config that does not
make sense for unbundled builds
Bug: 172256440
Test: verify unbundled builds migrated from generic_* don't change
Change-Id: Ia937461aa24a5d5b542f8688a1b71ac3fdeb596b
This device/product is suitable for a soong-only build that builds for
all the architectures needed for mainline modules sdk prebuilts.
Bug: 174315599
Test: TARGET_PRODUCT=mainline_sdk soong_ui --make-mode --skip-kati;
(inspect soong.variables)
Change-Id: I3ab5d3611e25a666de39752dedaddbf32ddf6df7
Prior to this the generic_* devices were typically used for this
purpose. There are a few reasons to create new specific ones:
- the generic_arm64 device has a hack specifically for building
multi-arch packages that we want to avoid
- the generic_* devices include a bunch of emulator config that does not
make sense for unbundled builds
Bug: 172256440
Test: verify unbundled builds migrated from generic_* don't change
Merged-In: Ia937461aa24a5d5b542f8688a1b71ac3fdeb596b
Change-Id: Ia937461aa24a5d5b542f8688a1b71ac3fdeb596b
The hashtree is used in verified boot, and sha256 is more robust against
malicious attacks. Also, sha256 uses the same space as sha1 in the
hashtree. And there isn't much performance regression per
https://b.corp.google.com/issues/156162446#comment18
By putting the config in BoardConfigMainlineCommon.mk, we enable sha256
on all Pixels. And devices who want to use a different hash algorithm
can override it in it's own board configs.
Bug: 156162446
Test: boot the device and check performance
Change-Id: I9f1d3bcf241bc65adf10376cc5ae7ab1986216fa
The aosp_arm64 kernel 4.19 prebuilt name is now kernel-4.19-gz instead
of Image.gz.
Bug: 172246735
Signed-off-by: Will McVicker <willmcvicker@google.com>
Change-Id: I4e6a1fefdf207f97cc6ec5e6ebec261473d1218d
Merged-In: I4e6a1fefdf207f97cc6ec5e6ebec261473d1218d
The aosp_arm64 kernel 4.19 prebuilt name is now kernel-4.19-gz instead
of Image.gz.
Bug: 172246735
Signed-off-by: Will McVicker <willmcvicker@google.com>
Change-Id: I4e6a1fefdf207f97cc6ec5e6ebec261473d1218d