GSI includes both flattened and unflattened apex at the same time.
However, a flattend apex is not built if the module is built from
prebuilt binary. So, we enable 'MODULE_BUILD_FROM_SOURCE := true'
to force GSI built all modules from source.
Bug: 194917545
Test: build gsi_gms_arm64-user
Test: check com.google.android.art exists in /system/system_ext/apex/
Change-Id: I89eef3e8d06ec1f9d3245513c2dbbff0777e2c62
If RBC_PRODUCT_CONFIG variable is set, obtain product configuration
variables by converting product configuration makefiles to Starlark
files and then executing them.
Also, introduce RBC_NO_PRODUCT_GRAPH variable to suppress product graph
generation. We cannot generate product graph with Starlark, so this
option allows to verify that the rest of the contents of the generated
Ninja files remains the same when Starlark-based converter is used.
This allows to perform the regression testing, i.e. running
`RBC_NO_PRODUCT_GRAPH=t DISABLE_ARTIFACT_PATH_REQUIREMENTS=t m nothing`
and
`RBC_PRODUCT_CONFIG=t m nothing`
should generate identical *.ninja files.
Bug: 181797530
Test: Manual
Change-Id: Ic6173a9640f32766b71c02a2b1833ce7a278e4cc
The pin_camera flag being false makes some in-market devices
(redfin, bramble, coral, etc.) not pin the camera app by default.
Although a Phenotype flag overrides this value,
the OTA flag delivery can fail and ends up non-ping state.
This change makes sure that the device pins the camera app by default
by removing pinner.pin_camera properties modification from this file.
The current default is to pin the camera. See PinnerServices.java
Note that the camera pinning is still disabled on crosshatch family,
sicne it is known to be prone to the memory shortage.
See device-crosshatch.mk.
Also note that some newer devices already pin by default because
they don't refer this file, although the name implies it might.
Test: On Redfin:
$ vendor/google/tools/flashall -w
$ adb root && adb wait-for-device && adb shell am start -a com.android.setupwizard.FOUR_CORNER_EXIT
$ adb shell dumpsys pinner
Bug: 195035033
Bug: 184897981
Merged-In: I81207d0527f758d4800319a3a3c323919daaf814
Change-Id: I81207d0527f758d4800319a3a3c323919daaf814
Prebuilt modules do not provide sanitizer binaries to using them in this
context is unsafe.
Bug: 194067130
Test: TH
Merged-In: I3682ae9ad963a8cd13bb395fe84dae515dc6d30f
Change-Id: I3682ae9ad963a8cd13bb395fe84dae515dc6d30f
_prop_files is missing a trailing _
Bug: 195034733
Test: manual - check that expected prop files are in the image
Change-Id: Ie042acc74fa56d5515cacd5f41ddc0f82d74f20c
Orgianlly, init.vndk-*.rc are placed under system_ext/etc/init.
`init` always run all thse .rc files. The patch move these .rc
files to system_ext/etc/gsi to avoid the problem.
Bug: 185457479
Test: build gsi_arm64-userdebug; check the files under system_ext/
Change-Id: Iee67d6e2e872cf3cb1dd1014925ed0249c1e7e2d
boot-test-harness.img is used to allow adb root on user build
images. It also sets properties: ro.audio.silent=1 & ro.test_harness=1.
GKI 2.0 devices will use BOARD_PREBUILT_BOOTIMAGE so
boot-test-harness.img will not be generated.
Therefore, we have to introduce the vendor_boot-test-harness.img
as an alternative for boot-test-harness.img.
In the future, we'll simplify the flow as:
+ If a device has a /vendor_boot partition, builds
vendor_boot-(test-harness|debug).img.
+ Otherwise, builds boot-(test-harness|debug).img.
boot-(test-harness|debug).img needs to be kept for some clients
to gracefully transit to using vendor_boot-(test-harness|debug).img.
Bug: 194654549
Test: make then `unpack_bootimg --boot_img $OUT/vendor_boot-test-harness.img`
Test: Check the ramdisk content in ./out/vendor_ramdisk
Change-Id: If3a1393b4ff3e69bb9b62f3b843b7858437d47bf
When rule action contains something like
cp $(FOO) ...
and FOO is set with
FOO := a \
b \
the generated Ninja file constains extra spaces, making it
difficult to compare it to the same file generated by the
Starlark-based product configuration.
Bug: 181797530
Test: manual
Change-Id: I278bd8edf0f017a31c5b5115b2a38f4f663c55fc
When computing the data offset of an entry in zip file, we used length
of extra field from central directory. That is correct most of the time
but wrong if the extra field in central directory has different length
than the one in local file directory. Since python's zipfile doesn't
provide an API to access local file header, we need to parse local file
header ourselves and extract length of extra field.
An incorrect offset will cause magic mismatch error from update_engine,
as update_engine expects to find uncompressed payload at the recorded
offset.
Test: th, partner verification
Bug: 191443484
Change-Id: Id670cd79b0bd65adffaaa5224ae4f8065d66b358
Regardless of an "updatable" property, list all apex jars in the same
variable. This is less confusing for devs and matches the pattern with
PRODUCT_APEX_BOOT_JARS.
Bug: 191127295
Test: atest CtsClasspathsTestCases
Change-Id: I3b12f26237636f4271cb000480928b3ce1c2e62f
Merged-In: I3b12f26237636f4271cb000480928b3ce1c2e62f
Using prebuilts of the ART Module seems to make
`COMPATIBILITY.art-host-tests.HOST_SHARED_LIBRARY.FILES` empty on
x86 targets, thus breaking the `art-host-tests` build target. As
a workaround, relax the corresponding build rule to allow for an
empty `COMPATIBILITY.art-host-tests.HOST_SHARED_LIBRARY.FILES`
list.
Test: lunch cf_x86_phone-userdebug
&& SOONG_CONFIG_art_module_source_build=false m art-host-tests
Bug: 194627489
Change-Id: I9e885be3c7161f6f09a93b3d32339a5a6e57d2a1
PLATFORM_VERSION_CODENAME is being updated from T to Tiramisu.
Bug: 186121492
Bug: 194055070
Test: m checkbuild
Merged-In: I39a82c8ac3fd0b43bad06ec47b85aaeda6ef5cb4
Change-Id: I39a82c8ac3fd0b43bad06ec47b85aaeda6ef5cb4
(cherry picked from commit a45d0c890e)