Commit Graph

85496 Commits

Author SHA1 Message Date
Zhi Dou
58fd788f51 Merge "aconfig: flag java lib enable optimization" into main 2023-09-06 12:56:46 +00:00
Zhi Dou
deafa792eb aconfig: flag java lib enable optimization
This change adds annotation in the generated code. If the flag is read
only, annotations @com.android.aconfig.annotations.AssumeTrueForR8 or
@com.android.aconfig.annotations.AssumeFalseForR8 will be added in to
the corresponding methods in the interface FeatureFlags, and class
Flags.

Test: atest aconfig aconfig.test.java
Bug: 295328116
Change-Id: Ic1b62a86f0945a5e72ae2c4987cce77fe3f172e9
2023-09-06 12:55:09 +00:00
Nikita Ioffe
9ee5ca6b37 Merge "Propagate device assignment related flags to soong" into main 2023-09-06 12:37:24 +00:00
Treehugger Robot
ed234171f8 Merge "make: HWASan exclude path support" into main 2023-09-06 01:14:12 +00:00
Cole Faust
56e8f7009c Merge "Install LOCAL_SOONG_INSTALL_SYMLINKS even if LOCAL_SOONG_INSTALLED_MODULE isn't set" into main 2023-09-06 00:15:09 +00:00
Cole Faust
c67e769b8c Install LOCAL_SOONG_INSTALL_SYMLINKS even if LOCAL_SOONG_INSTALLED_MODULE isn't set
LOCAL_SOONG_INSTALL_SYMLINKS can now be set by the install_symlink
module type. The install_symlink module type doesn't set
LOCAL_SOONG_INSTALLED_MODULE because make tries to copy that file
around, which doesn't work with a symlink.

Bug: 205632228
Test: built and ran the emulator observed the /system/bin/hwservicemanager symlink is still there
Change-Id: I1ec355b5ae057d0b7fe167674d70da6a4d03f6b5
2023-09-05 14:16:38 -07:00
Treehugger Robot
6c4627369e Merge changes from topic "aconfig-misc-fixes-2023-09-04" into main
* changes:
  aconfig: add invariant checks for `is_fixed_read_only`
  aconfig: re-enable development with cargo
2023-09-05 17:21:22 +00:00
Treehugger Robot
4d779cf4cd Merge "Reland: Add 16k/4k boot OTAs to /system partition" into main 2023-09-05 16:55:20 +00:00
Jared Duke
2674152fdc Merge "Ensure special Dalvik annotations are kept" into main 2023-09-05 15:49:17 +00:00
Nikita Ioffe
7902e5ed63 Propagate device assignment related flags to soong
Bug: 298007909
Test: builds
Change-Id: I0513784c813c856e9cb4674f1e33a7d83e411b02
2023-09-04 22:49:42 +01:00
Mårten Kongstad
21717e744e aconfig: add invariant checks for is_fixed_read_only
Update parsed_flag::verify_fields to verify that the invariant "if a
parsed flag is_fixed_read_only, its permission must be READ_ONLY".

Note: commands.rs will ensure that no value files are used to create an
invalid parsed flag when flag declarations and values are parsed, but
the invariant check should still be added for completeness sake, and to
make sure no invalid hand-crafted test data exists.

Also fix invalid test data found by adding this invariant.

Bug: 298935897
Test: atest aconfig.test
Change-Id: I8cea5c4d28c458525b7034d78ecb34dd09272771
2023-09-04 20:25:59 +02:00
Mårten Kongstad
5cfad6abd2 aconfig: re-enable development with cargo
The integration tests introduced in 906405f5c9 depend on libraries
auto-generated by running aconfig. This works fine for the Android build
system, but breaks `cargo t`.

Disable the tests when using `cargo t` for local development. Cargo can
be used for rapid local development, including running unit tests;
integration tests should be run using atest.

Bug: 298904077
Test: cargo t
Test: atest aconfig.test_mode.test.rust aconfig.prod_mode.test.rust
Change-Id: Ifcd374fa6efdc121cbfd4c4ac4fb43cf9cacc192
2023-09-04 13:22:28 +02:00
Kiyoung Kim
a28e56e1cc Merge "Do not set ro.(product.)vndk.version if VNDK is deprecated" into main 2023-09-04 08:09:56 +00:00
Treehugger Robot
5da26c0ab3 Merge "Add the adevice host tool to standard builds" into main 2023-09-01 23:13:14 +00:00
Jared Duke
cb3505c1be Ensure special Dalvik annotations are kept
These optimization annotations are special in that we don't want them
to have RUNTIME retention, but we do want them to be visible to ART.
R8 already has special rules to handle them, but with R8 full mode
it still requires a minimal keep rule for the given reference.

This allows usage of annotations like @NeverCompile from fully optimized
platform targets like SystemUI.

Bug: 215417388
Test: m + compare SystemUIGoogle.odex w/ @NeverCompile annotations
Change-Id: Id14bcc7b6d0d6dd385c60cfbe4d31f295cbaa5dc
2023-09-01 21:27:30 +00:00
Joe Onorato
08d6ebf118 Add the adevice host tool to standard builds
Test: treehugger
Change-Id: Ib8caceecbcc355f6aa8725a2f134f2d1ac86d387
2023-09-01 13:24:51 -07:00
Treehugger Robot
db21a2aee5 Merge "Don't read the odex zip files when building sbom-metadata.csv" into main 2023-09-01 19:29:31 +00:00
Nikita Ioffe
68e7cb9c67 Merge "Propagate RELEASE_AVF_ENABLE_MULTI_TENANT_MICRODROID_VM to soong" into main 2023-09-01 18:44:17 +00:00
Kelvin Zhang
1738012f6d Reland: Add 16k/4k boot OTAs to /system partition
This allows switching kernels without downloading anything from
internet.

Test: th
Bug: 293313353

This reverts commit 2610f34671.

Change-Id: Iec6c9f9404ac1bb3286613c33d79b00b20c4c8bb
2023-09-01 17:04:43 +00:00
Kelvin Zhang
dfa0c85705 Merge "Use seek() instead of writing 0s" into main 2023-09-01 17:00:52 +00:00
Treehugger Robot
145ca3034f Merge "Mark boot OTAs as partial OTAs" into main 2023-09-01 16:58:26 +00:00
Treehugger Robot
333d29dbb8 Merge "Add missing depdency for 16k boot image" into main 2023-09-01 14:49:32 +00:00
Nikita Ioffe
53d1acaf11 Propagate RELEASE_AVF_ENABLE_MULTI_TENANT_MICRODROID_VM to soong
Bug: 298008232
Test: builds
Change-Id: I1ec0b2cefdac862d3704968046076b59664c2b5d
2023-09-01 13:56:13 +01:00
Inseob Kim
3c7a42328c Merge "Remove code about mixed sepolicy build" into main 2023-09-01 01:06:38 +00:00
Pawan Wagh
904c8194dd Merge "Adding a system property to enable 16k dev options" into main 2023-09-01 00:26:13 +00:00
Kelvin Zhang
542a27eecf Add missing depdency for 16k boot image
Bug: 298295675
Bug: 293313353
Test: th
Change-Id: I9679c151e77398e161c04487699bc3a0d776ab13
2023-08-31 16:25:12 -07:00
Pawan Wagh
8253e12483 Adding a system property to enable 16k dev options
16K dev option should be visible on particular devices which set
PRODUCT_16K_DEVELOPER_OPTION. Adding a system property which will be
enabled based on this option.

Test: m, booted device with PRODUCT_16K_DEVELOPER_OPTION ON/OFF and
verified option visibility.
Bug: 297922563

Change-Id: I6d1cd2ce0c6f38fb43222d8e1ac2b797ef675c62
2023-08-31 20:08:31 +00:00
Treehugger Robot
bf5f9bf015 Merge "Build the proguard dict zip without PACKAGING intermediates" into main 2023-08-31 19:37:27 +00:00
Kelvin Zhang
a87ce9086f Merge "Resize boot_16k.img properly" into main 2023-08-31 19:17:34 +00:00
Kelvin Zhang
8aa6525ad7 Use seek() instead of writing 0s
test_ZipWrite_large_file need to write a 4GB file to zipfile for
testing. Instead of writing sequence of 0s to the test file, use seek().

Test: th
Bug: 298138109
Change-Id: I886bfa0c3f21664e529ba7de9688909518148f61
2023-08-31 12:17:14 -07:00
Kelvin Zhang
c4f737406a Mark boot OTAs as partial OTAs
Boot partition only OTA must be marked as "partial". This is required
for update_engine to correctly copy non-updated partitions to the target
slot.

Test: th
Bug: 293313353
Change-Id: Ic89d03f214e12fa43f686d37854d6fed1d78a6a3
2023-08-31 12:17:14 -07:00
Kelvin Zhang
bf2d400799 Resize boot_16k.img properly
Bootloaders often assume boot partition to be 64MB in size. Correctly
size boot_16k.img so that bootloader can verify the AVB footers.

Test: th
Bug: 293313353
Change-Id: I322277b10e99a41c9a262ff76e2f29c3ed16fec0
2023-08-31 12:17:14 -07:00
Romain Jobredeaux
1fb1dd2fb1 Merge "Expose global proguard flags for use by R8." into main 2023-08-31 18:54:49 +00:00
Devin Moore
01e56d0ae0 Merge changes from topic "no_hidl_support" into main
* changes:
  Add symlink to hwservicemanager
  Remove hwservicemanager and hidl allocator.
2023-08-31 15:51:14 +00:00
Treehugger Robot
c20ef7ca4a Merge "Avoid calling MergeUpdateEngineConfig for non-ab target" into main 2023-08-31 14:30:17 +00:00
Inseob Kim
c36ff859e9 Remove code about mixed sepolicy build
There is no one actively using mixed sepolicy build, and it made
sepolicy codes too complicated. As we are deprecating mixed build,
removing such code for cleanup.

Bug: 298305798
Test: boot cuttlefish
Change-Id: I6efcfd7bde398564f909b41b3e156ac3d98d64d6
2023-08-31 16:52:04 +09:00
Ken Chen
7a6468edd5 Merge "Revert "Add 16k/4k boot OTAs to /system partition"" into main 2023-08-31 02:57:25 +00:00
Ken Chen
2610f34671 Revert "Add 16k/4k boot OTAs to /system partition"
This reverts commit a2674525ae.

Reason for revert: Investigate b/298295675

Change-Id: Ia44137695d6e9a1b99f4cc6e4dcc88bd3b4156db
2023-08-31 02:38:02 +00:00
Cole Faust
b35231ece0 Build the proguard dict zip without PACKAGING intermediates
Before, as each module was built, it would dump its proguard-related
files into the PACKAGING folder. Then the rule for the final distable
zip would zip up this whole folder. This means that if you built a
module that was not part of the system, and then rebuilt the final
zip, it would erronously include more proguard files than necessary.
This problem was worked around by relying on CI to run `m installclean`
every time.

Now, the zip proguard files always include the same information.

This also makes it so that when you build a module, its proguard files
are not copied to the PACKAGING folder, making builds that don't
build the final proguard zips slightly faster.

Bug: 205632228
Test: diff'd proguard-dict.zip, proguard-dict-mapping.textproto, and proguard-usage.zip before/after this cl on sdk_phone_x86_64. They have diffs, but only in the order of files / lines.

Change-Id: I98c02e1eb117c337ba9b98f04ad486597eb9bb86
2023-08-30 17:17:19 -07:00
Kelvin Zhang
ee8b6cf22d Merge "Add 16k/4k boot OTAs to /system partition" into main 2023-08-30 23:30:01 +00:00
Kelvin Zhang
a2674525ae Add 16k/4k boot OTAs to /system partition
This allows switching kernels without downloading anything from
internet.

Test: th
Bug: 293313353
Change-Id: I29e48dc191091930a7d0a690924b37c572fa9356
2023-08-30 13:06:17 -07:00
Treehugger Robot
f153237a03 Merge "make fake_device_config buildable on host" into main 2023-08-30 19:44:39 +00:00
Joe Onorato
cede86dd28 make fake_device_config buildable on host
Test: treehugger
Bug: 277916185
Change-Id: I002669bbb605b7968b81c66d1cbf0ff3caa0c699
Merged-In: I002669bbb605b7968b81c66d1cbf0ff3caa0c699
2023-08-30 11:39:29 -07:00
Romain Jobredeaux
bec914598f Expose global proguard flags for use by R8.
Bug: 293304784
Test: CI
Change-Id: I0e30f3e1affc2493cb63cb94266ad0a6b636ebc8
2023-08-30 11:48:52 -04:00
Treehugger Robot
132be7e516 Merge "Add timestamp to 16K boot OTA" into main 2023-08-30 04:11:29 +00:00
Treehugger Robot
7090051129 Merge "Sign the 16K boot image OTA" into main 2023-08-30 03:26:41 +00:00
Kelvin Zhang
506a30851e Add timestamp to 16K boot OTA
Test: th
Bug: 297536338
Change-Id: Id4919d2437079e36899cd4c56da011a29aa0b470
2023-08-29 19:38:19 -07:00
Kelvin Zhang
ed60c9da27 Sign the 16K boot image OTA
Sign the 16K OTA package so that it can be installed by device.

Test: th
Bug: 293313353
Change-Id: I2f1f6f5430fc920d5edeeab3f3335cbdf76fdefd
2023-08-29 19:18:49 -07:00
Cole Faust
9ff7a37096 Don't read the odex zip files when building sbom-metadata.csv
The files inside the odex zip files are now part of $(installed_files)
as of aosp/2729625.

Bug: 205632228
Test: m out/target/product/emulator_x86_64/sbom-metadata.csv, before this cl you can find duplicate entries for the odex files. After this cl there's only 1
Change-Id: I1645bd1bb9e1f10fc3746225a15b8431b666580e
2023-08-29 15:39:10 -07:00
Jerry Jia
e40f2800af Merge "Add libaconfig_python_proto target for Mobly host-based tests" into main 2023-08-29 22:33:32 +00:00