System image of aosp_arm products is the new GSI in Pi.
Its arch variants need to be the same as the legacy GSI built
with aosp_arm_ab so it can pass related CTS/VTS tests.
Bug: 80401108
Test: $ lunch aosp_arm-userdebug; m -j; emulator # booted OK
$ lunch aosp_arm-userdebug; m -j cts
Change-Id: I29fffca3e02a2251913a327b54640fc622e77a8d
This is to support /product/lib. Shared libraries with
LOCAL_PRODUCT_MODULE := true or product_specific: true has been
installed in /system/lib. They are now installed in /product/lib.
Bug: 73095206
Test: build succeeded && product libraries are installed under
/product/lib
Change-Id: Ic49a0a3e1e47666c4d15189ab6fded8007ecb498
Merged-In: Ic49a0a3e1e47666c4d15189ab6fded8007ecb498
(cherry picked from commit 47c13524aa)
bug: 80137441
Test: build and runaosp_x86-userdebug. adb logcat -b radio.
check the rild read the right property vendor.rild.libpath
Change-Id: I0529c32b79cf791821d71369bcd0fb244c13361c
We add goldfish specific apns config files to /data/misc/apns/etc/
for aosp_* targets to have working telephony and wifi.
BUG: 79584197
Change-Id: I46591d923496420212cd279c0b90f0b4eb11cea4
We need to generate a new file from Doclava. Create a global variable
for the file name.
Bug: 64382372
Bug: 80461842
Test: make out/target/common/obj/PACKAGING/hiddenapi-blacklist.txt
Merged-In: Id850327c29bc626d3d721935edcb2b7afd2fd283
Change-Id: Icd0de1361879b896fd9d3881e405def98c012f0c
P VNDK snapshot needs to include VNDK libs built for 64-bit binder
products, aosp_arm and aosp_x86. This change modifies the following:
1) Revise VNDK snapshot zip file name to use $TARGET_PRODUCT instead of
$TARGET_ARCH in order to distinguish aosp_arm and aosp_arm_ab.
2) Place 32-bit binder libs under a subdirectory 'binder32' such that
the snapshots can be uploaded to prebuilts/vndk/v{VER} with the following
directory structure:
prebuilts/vndk/v{VER}/
arm/
arch-arm-armv7-a-neon/
shared/
...
binder32/
arch-arm-armv7-a-neon/
shared/
...
...
arm64/
arch-arm-armv7-a-neon/
arch-arm64-armv8-a/
...
...
The 32-bit binder libs will be placed in a separate subdirectory so that
they can be easily phased out in future VNDK snapshots.
Bug: 80372796
Test: make -j vndk dist
Change-Id: I7cde2e706e0c2891bab762b9057672f57e798873
Add BOARD_USES_METADATA_PARTITION to GSI to enable metadata folder
under the root folder.
Bug: 80407843
Bug: 79781913
Test: Boot on a Pixel device with GSI applied the patch
Change-Id: I5544b76b54300aa5a87aa4fa3c0ec6feff13a554
We have use case that uses the timestamp for PLATFORM_SECURITY_PATCH in
device specific Makefile, but need to handle the platform-dependent
`date` command. This CL computes and exposes
PLATFORM_SECURITY_PATCH_TIMESTAMP from the core build system.
Bug: 80311893
Test: Use PLATFORM_SECURITY_PATCH_TIMESTAMP in device-specific folder,
on both of Linux and macOS. Check the value.
Change-Id: I27a88dcebde7a1c204491f5f5c45c5160398dbb6
Merged-In: I27a88dcebde7a1c204491f5f5c45c5160398dbb6
(cherry picked from commit 717d9d3ae2)
userdata.img becomes 4GB in P and it doesn't work well with patcher in
android studio. We decided to remove userdata.img in system image zip
and generate userdata.img by emulator.
This cl does not impact real devices.
BUG: 79925096
Change-Id: I5406b28291f140e2ebdbcd7c6f684f60ac59b62b
Signed-off-by: Weilun Du <wdu@google.com>
The current VNDK ABI snapshot expects that CFI is disabled for
components that either in the include paths (from cfi-common.mk) OR
enabled directly in the makefile/blueprint. However, on non-arm64
architectures, the build system was only disabling CFI for vendor
components in the include paths.
This topic corrects it by (a) removing the include paths check to disable
CFI for vendor variants, and (b) inheriting the CFI include paths in
all product configs to ensure that when we update the ABI we're able
to move to relying exclusively on (PRODUCT_)CFI_INCLUDE_PATHS.
Bug: 66301104
Test: ABI matches for all architectures.
Change-Id: I4d845cd9925354d565e06020c479cc3f7ab28f61
The aosp_arm64_ab product config needs to also enable CFI for some
vendor components (if they exist).
Bug: 66301104
Test: lunch aosp_arm64_ab-userdebug && m -j40
Change-Id: Iae670c2d44c00d3dfb0e312e1492b37bbb737d4f
This CL enables CFI on security sensitive components for product
configs that inherit core_64_bit.mk (and core_64_bit_only.mk). Note
that this only requests the build system to do so. Internal build
logic will dictate if this is actually enabled on the build or
not (CFI is currently disabled for ARM32 and MIPS for example).
In addition, this also restricts CFI_INCLUDE_PATHS and
PRODUCT_CFI_INCLUDE_PATHS to Arm64 architectures only. This helps
narrow which targets enable CFI out of the box.
Bug: 66301104
Test: CFI is enabled on aosp_* targets
Change-Id: I52af499dc34cd4b42fbfb1175f6a37aaf17b65dd
Bug: 79999791
Bug: 80000595
Test: CtsOmapiTestCases; works on phones/tablets, needs to be
verified on wearables
Change-Id: I114b9d02097e880d8369b75790fae5b995db8e59
This CL enables CFI for the aosp_arm64_ab product config - which helps
ensure that the VNDK ABI is consistent with product configs that
also enable CFI.
Bug: 66301104
Test: VNDK ABI is consistent with walleye-userdebug
Change-Id: I8ba1f8ebc475a91e9c2a527c813e3c5e1daae897
Allows speed-profile compiling vendor modules.
The profile will not correctly get copied during first boot, but this
is should only be a minor issue.
Bug: 78472563
Bug: 71901335
Test: make
Change-Id: I15c6f90b6bbd284ab48fd750267bed5189c9fea4
We used to write a fake post-timestamp into package metadata for
"--override_timestamp", which allows a package to be pushed based on
the fake timestamp. This CL stops doing that by using the designated
"ota-downgrade=yes" instead, but keeping the "--override_timestamp" flag
for backward compatibility.
Now both "--override_timestamp" and "--downgrade" allow pushing packages
with downgrade timestamps. The only differenece is that "--downgrade"
enforces a data wiping, because it's intended a real downgrade (based on
Android version or security patch level). "--override_timestamp" serves
the path of a legit "upgrade", but unfortunately with build timestamps
in reverse order (e.g. the two builds are cut from different branches).
With this CL, we write "post-timestamp" to all packages.
Bug: 77811049
Test: Generate an incremental pakcage with "--override_timestamp".
Test: Generate an incremental pakcage with "--downgrade".
Test: python -m unittest test_ota_from_target_files
Change-Id: I4ae4ce77cb600a06ffd9b15b6d4c730314aa0b79
Merged-In: I4ae4ce77cb600a06ffd9b15b6d4c730314aa0b79
(cherry picked from commit faa8e0b7e9)
system properties must not be used as a communication channel in between
system and vendor processes. However, there has been no enforcement on
this: system process could write system properties that are owned and
read by vendor processes and vice versa. Such communication should be
done over hwbinder and should be formally specified in HIDL.
Until we finish migrating the existing use cases of sysprops to HIDL,
whitelisting them in system_writes_vendor_properties_violators so that
the violators are clearly tracked.
These violators are allowed only for P, but not for Q.
Bug: 78598545
Test: m -j selinux_policy when choosecombo'ed to aosp_arm64
Change-Id: I8f66aa20bb2d926cf517d40c93f4300c4d16b04b
Bug: 79951743
Test: Run validate_target_files.py on target_files.zip that has
non-monotonic ranges listed in IMAGES/system.map.
Change-Id: I28d3ca6972d361362589cd51e60731af9994a551
Merged-In: I28d3ca6972d361362589cd51e60731af9994a551
(cherry picked from commit d32936d657)
Bug: 79951743
Test: Run validate_target_files.py on target_files.zip that has
non-monotonic ranges listed in IMAGES/system.map.
Change-Id: I28d3ca6972d361362589cd51e60731af9994a551
Merged-In: I28d3ca6972d361362589cd51e60731af9994a551
(cherry picked from commit d32936d657)
This change only impact emulator images.
Test: Compare the system partition before and after this change,
make sure they are identical.
Bug: 79584197
Test: Boot success.
Change-Id: I00427f663f068cc7ba9984e4facaff1b0c98b17f