Use `-keepclassmembers` instead of `-keep` for Parcelable types
and their CREATOR members. This allows shrinking of Parcelable types
that aren't referenced while still preserving the necessary CREATOR
member when the classes are kept. This saves ~3MB across various
platform targets.
Bug: 238670321
Test: m + presubmit
Change-Id: I13508073dbc07e28aa93bb6604c8f838bcf72646
Some host test modules such as `python_test_host` use the
`target_required` attribute to declare target dependencies that will
be pushed to device. For example, `aidl_integration_test` references
several target dependencies in the `target_required` attribute since
those output files will be searched and pushed to device at runtime.
Besides, those target dependencies can't be declared in the `data`
attribute instead, since some modules' `data` attribute doesn't
support multi-arch.
So that, this information needs to present in module_info.json and
exported to properly generate Bazel targets that include these
dependencies.
Test: m out/target/product/coral/module-info.json
Bug: 222438068
Change-Id: Ia5ee103be1e7a811e1fdbd2b39252912b1a35c18
vbmeta_system does not need to be rebuilt with vendor side
Signed-off-by: jiangxu5 <jiangxu5@xiaomi.com>
Change-Id: Ieb2076055aa3342a6071ec2ed5c976e22f59acd1
Split the location of ltp and kselftest files so that they are not
uploaded together if running individually. Should improve the
performance of kselftest.
Bug: 190800715
Test: atest vts_ltp_test_x86_64
Test: atest vts_linux_kselftest_x86_64
Signed-off-by: Edward Liaw <edliaw@google.com>
Change-Id: I121e6d5bab8edd185c8d73ad7849dff9e8b5f118
* Expand the allowlist to include {system_ext, vendor, odm,
product}/framework/*. Generate .fsv_meta for them.
* Add BuildManifest.apk for those partitions.
* Rename PRODUCT_SYSTEM_FSVERITY_GENERATE_METADATA to remove "SYSTEM".
* (new in reland): add apkcerts
Bug: 245957815
Test: m
Test: ls -l $ANDROID_PRODUCT_OUT/*/etc/security/fsverity/BuildManifest.apk
Test: extract assets/build_manifest.pb from apk, inpsect
Test: run asit/ota/signing
Change-Id: I48a5e473aa5eedb24edab54357a9141fc8d78759
* Expand the allowlist to include {system_ext, vendor, odm,
product}/framework/*. Generate .fsv_meta for them.
* Add BuildManifest.apk for those partitions.
* Rename PRODUCT_SYSTEM_FSVERITY_GENERATE_METADATA to remove "SYSTEM".
Bug: 245957815
Test: m
Test: ls -l $ANDROID_PRODUCT_OUT/*/etc/security/fsverity/BuildManifest.apk
Test: extract assets/build_manifest.pb from apk, inpsect
Change-Id: I503672571741d47ba15add048c0a2f00b6b2a86d
If not normalized the same as declare-license-metadata, two rules get
generated instead of one rule with both license text and deps.
Test: m droid dist
Test: build/soong/soong_ui.bash --make-mode TARGET_PRODUCT=sdk TARGET_BUILD_VARIANT=userdebug sdk dist sdk_repo
Change-Id: I3a8f2d3825c8c0183049fa12b14ace9b54066a01
Merged-in: I3a8f2d3825c8c0183049fa12b14ace9b54066a01
Bug: 233029164
Fixes: 246271065
Test: m
Test: EXPERIMENTAL_USE_OPENJDK17_TOOLCHAIN=true m
Test: EXPERIMENTAL_USE_OPENJDK17_TOOLCHAIN=true EXPERIMENTAL_TARGET_JAVA_VERSION_17=true m
Change-Id: I7962068938b16dde52e68abb3baff212deb287be
Context: zsh doesn't do string splitting like bash, so it passes the
post-processed bazel args to bazel as a single arg. So this CL adds a
conditional to split explicitly with zsh using the {=<arg>} flag
syntax.
Reference: https://zsh.sourceforge.io/FAQ/zshfaq03.html (for shwordsplit)
Reference: https://zsh.sourceforge.io/Guide/zshguide05.html (Section 5.4.4)
For bash, this uses array[@] to split the list into separate
shell words.
Test: zsh; source build/envsetup.sh && b test
//system/logging/logd:logd-unit-tests --config=linux_x86_64
Test: bash; source build/envsetup.sh && b test
//system/logging/logd:logd-unit-tests --config=linux_x86_64
Change-Id: Id92462661bbe1799a6de8dd3393799d91e3044e8
Ensuring that the b command works properly cross-terminal has been a
little tricky, so some test commands would help in testing changes.
Test: build/make/tests/roboleaf_tests.sh
Change-Id: Iecff678fbba6e81c211aadd3665839c1c21acc8c
This is in preparation to add some more tests to this file.
Test: build/make/tests/envsetup_tests.sh
Change-Id: Ic32115d2a6073f3265b84846f489f3acb8bfad88
Similarly to other images, introduce a Ximage phony target for building
the pvmfw.img partition image.
Bug: 237371962
Test: m pvmfwimage
Change-Id: I2c17ec93c1e00d4d4df6f5196333ccb73a7c56d2
Remove the variable as it was only used when the prebuilt was
device-specific but pvmfw is now part of AOSP.
Bug: 237371962
Test: m $(realpath --relative-to=. $ANDROID_PRODUCT_OUT/pvmfw.img)
Change-Id: I5b4c1ffd563e3dccf22ee485cb12866355f5bfe0
zsh doesn't do string splitting like bash, so it passes the
post-processed bazel args to bazel as a single arg. So this CL adds a
conditional to do the splitting correctly for zsh with `setopt
shwordsplit`.
Reference: https://zsh.sourceforge.io/FAQ/zshfaq03.html
For bash, this uses array[@] to split the list into separate
shell words.
Test: zsh; source build/envsetup.sh && b test
//system/logging/logd:logd-unit-tests --config=linux_x86_64
Test: bash; source build/envsetup.sh && b test
//system/logging/logd:logd-unit-tests --config=linux_x86_64
Change-Id: I4e19a062b7f7e119b1612a8ce5c801878378cc69
Some Java modules are defined in Android.mk and they declare
dependencies in eigther LOCAL_STATIC_JAVA_LIBRARIES or
LOCAL_JAVA_LIBRARIES. This information needs to present in
module_info.json and be exported to properly generate Bazel targets
that include these dependencies.
Test: m out/target/product/coral/module-info.json
Bug: 245686435
Change-Id: I77bc8de59f1d46bb098463066e1f52b98ebae955