We may add all possible scripts to "root" to clean up the whitelists
of mainline devices.
One of the zygote init scripts is selected by "ro.zygote" property.
Bug: 143121605
Test: build test for all device targets
Change-Id: I4435f1c48a306c3a8d42522ed780d405a32780b4
These JARs are part of the ART APEX, and are now located in
`/apex/com.android.art/javalib`. Remove the supernumerary copies in
`/system/framework` and save ~11 MiB on the system partition.
(cherry picked from commit d4f09f7752)
Test: Device boot test
Bug: 142944799
Change-Id: Ia6f58d858ecdb80c9701696b8f20d5fa2de0c2c7
Merged-In: Ia6f58d858ecdb80c9701696b8f20d5fa2de0c2c7
32-bit libaudiohal is used by 3rd party modules on the system
partition which get loaded by client apps. In the long term,
this dependency has to be eliminated, see b/142811260.
Bug: 141989952
Bug: 142811260
Test: vendor/google/build/build_test.bash
Merged-In: I41241922c7e48c5d8bf95363944932569cb20c0a
Change-Id: I41241922c7e48c5d8bf95363944932569cb20c0a
Now the update_engine is able to read public keysfrom otacerts directly.
So the update_engine_payload_key is no longer needed.
Also remove the key replace in sign_target_files_apks.py. So we should
not use the new script to sign the old target files.
Bug: 116660991
Test: build the system image, unit tests pass
Change-Id: I9dae1f8b397f2b5efafed66a8faac1cb9087c741
This temporariliy turns off treble sysprop neverallow rules which
enforces marking the owner and accessibility to each system property.
Bug: 131162102
Bug: 142684203
Test: m sepolicy_tests
Change-Id: Ie9de9576fcf28c432543ab8f8971c1d048c55819
VNDK APEX replaces VNDK libs under /system/libs/vndk[-sp].
For current VNDK (vndk_package), com.android.vndk.current APEX is
installed instead of VNDK libraries.
For older versions of VNDK (vndk_snapshot_package),
com.android.vndk.v## APEXes are installed along with prebuilt VNDK libs.
The reason why phony targets of VNDK prebuilts are still installed is
that phony targets install the required *.libraries.##.txt files to
/system/etc.
After those .txt files are moved to APEXes, then we can remove those phony
targets.(b/141450808)
Bug: 141451661
Test: m && boot (tested with cuttlefish)
Change-Id: Ibfa06d42ec0081fa7010091ef097bb940bacf8d6
required seems to conflict with apex with the following error:
build/make/core/main.mk:1338: warning: build/make/target/product/aosp_x86_64.mk produces files inside build/make/target/product/mainline_system.mks artifact path requirement.
Test: treehugger
Change-Id: Ifb1072b4585a94355909b33e3b8129455c35714a
Trying to do it on per-device basis is prone to errors and already
bitten us several times. For example, currently aosp_taimen doesn't
install shim apex on system partition, but specifies
ro.apex.updatable = "true", which means that it doesn't pass CTS tests.
Unconditionally installing shim APEX shouldn't introduce any problems
since apexd will skip its activation of devices that don't support
updatable APEX.
Test: m checkbuild
Bug: 140957666
Change-Id: I6b5e668b40b97752295c831684a7291842533c40
healthd had been deprecated from Android P.
Does not need to support it now.
Bug: 142164625
Bug: 138284857
Test: lunch gsi_arm64-userdebug;make -j
Test: No healthd in out folder
Change-Id: I48db70f4bf39f6322bd2e80e536e2ec96b3a6408
When `OVERRIDE_TARGET_FLATTEN_APEX` is defined (e.g. set in the
environment), `TARGET_FLATTEN_APEX` is forcibly assigned its value.
This is useful to enable/disable APEX flattening from the command
line (thus ignoring the product's default configuration), for testing
purposes.
Note: Previously it was possible to set `TARGET_FLATTEN_APEX` directly
and have the same effect, but recent changes in the build
configuration now prevent that option.
Test: Check that:
export OVERRIDE_TARGET_FLATTEN_APEX=true \
&& . ./build/envsetup.sh \
&& lunch aosp_walleye-userdebug \
&& export OVERRIDE_TARGET_FLATTEN_APEX=true \
&& build/soong/soong_ui.bash --dumpvar-mode TARGET_FLATTEN_APEX
returns:
true
Bug: 121117762
Change-Id: Ib9ccae38430340de38e4758b4f55df2c65ea60d5
This change is part of a topic that moves the recovery resources from the
system partition to the vendor partition, if it exists, or the vendor directory
on the system partition otherwise. The recovery resources are moving from the
system image to the vendor partition so that a single system image may be used
with either an A/B or a non-A/B vendor image. The topic removes a delta in the
system image that prevented such reuse in the past.
The recovery resources that are moving are involved with updating the recovery
partition after an update. In a non-A/B configuration, the system boots from
the recovery partition, updates the other partitions (system, vendor, etc.)
Then, the next time the system boots normally, a script updates the recovery
partition (if necessary). This script, the executables it invokes, and the data
files that it uses were previously on the system partition. The resources that
are moving include the following.
* install-recovery.sh
* applypatch
* recovery-resource.dat (if present)
* recovery-from-boot.p (if present)
This change includes the platform build system and release tools changes to
move the recovery resources from system to vendor (or /system/vendor). The
release tools need to know where to generate the recovery patch, and they
discover this from misc_info.txt variable board_uses_vendorimage, which the
platform build system generates.
We remove applypatch from PRODUCT_PACKAGES, but it is added back as a required
module in target/product/base_vendor.mk.
Several release tools rely on the misc_info.txt board_uses_vendorimage variable
to know how to generate and detect the recovery patch.
This change partially removes the --rebuild_recovery flag from the
merge_target_files.py script. The flag will be fully removed in a follow-on
change.
Bug: 68319577
Test: Ensure that recovery partition is updated correctly.
Change-Id: Ia4045bd67ffb3d899efa8d20dab4c4299b87ee5f
Turn on RRO enforcement for /system modules for products
that use mainline_system.mk
Bug: b/137727426
Test: compare_images
Change-Id: Ia1824481c85fb031d5e156307bf7a848e4721d9e
- libstagefright_enc_common
- libstagefright_amrnb_common
Bug: 141885505
Test: build and boot.
Checked libstagefright_enc_common.so doesn't exist in /system/lib64.
libstagefright_amrnb_common.so is still there because other system
module, librtp_jni.so, is using it, but there is no reason to keep
this in base_system.mk.
Change-Id: I43692b50bd23e0b857606b42cb000c8566489dd6
Ensure only /system partition modules defined in mainline_system.mk is
included.
Test: lunch mainline_system_arm64-userdebug; m
Change-Id: I0cf9e28dd95fdc0f8f1eb88aefa07e230223b996
Required in order to run test self test for the vendor copy of
libcrypto.so which may differ from the one in /system and so will use
differently name flag files in order to avoid running the BoringSSL
Known Answer Tests on every process startup, impacting system health.
Bug: 141150335
Test: TH
Change-Id: I1db922379a59fa66fc65b6d92d370f33a2c65799
Merged-In: I1db922379a59fa66fc65b6d92d370f33a2c65799
(cherry picked from commit e3ab8eab25)
Some device requires VNDK_USING_CORE_VARIANT list, but it was not
implemented in previous. Adding this library list to the build target so
it can be added to system image.
Bug: 141695559
Test: m -j passed & Tested from Cuttlefish
Change-Id: Ic6847fd1966d4e1884cdce97015c8c1d1e0f3422