Commit graph

84321 commits

Author SHA1 Message Date
Treehugger Robot
6961b14269 Merge "Only search for test suite jdk files once" 2023-05-12 05:53:11 +00:00
Treehugger Robot
96b51b54b6 Merge "parallelize add_partition_calls" 2023-05-12 04:54:11 +00:00
Daniel Zheng
717591dd4e Merge "Add fastboot-info to updatepackage" 2023-05-12 04:31:55 +00:00
Joe Onorato
48fbf97b3e Merge "Add release flag logic based on TARGET_RELEASE." 2023-05-12 01:44:46 +00:00
Cole Faust
a5f31a5820 Only search for test suite jdk files once
compatibility.mk is included 33 times on aosp, and 47 times on
internal master. Each of these would run this shell command, and
there would be an entry in the kati stamp file for each time it was
run, causing this command to be run the 33/47 times every single build.
This took ~0.2 seconds, which can be saved by only running it once.
(However these ~0.2 seconds are parallelized with other parts of the
stamp checking)

Bug: 282079550
Test: m nothing
Change-Id: I364836d1cb0cc26ca9116eda6d954170e1cb7761
2023-05-11 18:22:03 -07:00
Cole Faust
ab4f856bbc Remove gpl_source.tgz
This file was an archive of all the gpl files that could be found
in the source tree. Because it looks for gpl files using $(wildcard),
kati had to rerun the wildcards every single build to see if they had
changed. These GPL wildcards made up 30294 of 63996 wildcards present
on aosp-master. Removing these wildcards saves (aosp/internal) ~0.2/~0.1
seconds from every build, and ~0.4/~0.6 seconds from the wildcard
checking portion of kati. (The whole build sees <0.4s/0.6s of
improvement because it's parallelized with the shell checking, but
improvements here mean that we can now improve the shell commands as
well and get more fruitful results)

We don't actually use gpl_source.tgz anywhere, so we can just remove it.

Bug: 282079550
Test: m nothing
Change-Id: I77141dbb39b2d8ebd96bc258fe7dbdff5a372977
2023-05-11 18:00:38 -07:00
Jeongik Cha
03d014a03f parallelize add_partition_calls
it made total time equal to the longest image build

1m10s->30s in local build

Bug: 281960217
Test: m dist
Change-Id: I13d4f45d9b46b39292a014e3b4e1913365d89b7a
2023-05-12 08:43:44 +09:00
Treehugger Robot
dc5ec0bfd8 Merge "Remove wildcards of absolute paths" 2023-05-11 23:19:02 +00:00
Wei Li
fd7e6517d3 Some changes to support SBOM generation for b build unbundled APEXs.
1) Use output file path of installed files in build system since there is no PRODUCT_OUT in Bazel
2) Use CONTAINS to describe the relationship between a APEX and files it contains
3) Generate SBOM of APEXs, which is similar to SBOM of products

Bug: 275472038
Test: CIs
Change-Id: I41622366e5e6ed9dc78cca7bc7bb69a1f8f9bd9f
2023-05-11 13:58:37 -07:00
Joe Onorato
964f401281 Add release flag logic based on TARGET_RELEASE.
Test: Lots of manual testing
Change-Id: I9072f136e64576009d0debd057c8ce6918fae861
2023-05-11 12:53:36 -07:00
Cole Faust
99d89154f1 Merge "Allow importing starlark code in makefiles" 2023-05-11 17:04:46 +00:00
Daniel Zheng
8d18a7b5fe Merge "Adding fastboot-info to target-files" 2023-05-11 15:42:20 +00:00
Daniel Zheng
78249fb190 Merge "Default building fastboot-info" 2023-05-11 15:19:32 +00:00
Motomu Utsumi
49488cff38 Use non-next NetworkStack
NetworkStack now builds against stable U APIs, so U can use
the stable binaries instead of the "next" versions.

Since it has just been bumped, NetworkStack is equivalent to
NetworkStackNext at this point, so this is a no-op.

Bug: 280250560
Test: m
Ignore-AOSP-First: This CL will be cherry-picked to aosp
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:f3f48883bcfe8a8f46fdec7affd545c81ba1a8ee)
Merged-In: I00a9840a69d06c6f4246a2db284c3060392b302b
Change-Id: I00a9840a69d06c6f4246a2db284c3060392b302b
2023-05-11 12:40:42 +00:00
Mårten Kongstad
7b6aacb055 Merge "aconfig: Add codegen for java" 2023-05-11 07:51:19 +00:00
Zhi Dou
eb74489b3a aconfig: Add codegen for java
Add codegen for java skeleton

Bug: 279485059
Test: atest aconfig.test
Change-Id: Ia0481cec9c2e137e88e9a77d1b82412529b64adc
2023-05-11 03:08:53 +00:00
Cole Faust
8f92d4194f Remove wildcards of absolute paths
PRODUCT_DEX_PREOPT_PROFILE_DIR could be an empty string, leading to
a wildcard starting with /.

Test: m nothing
Change-Id: Ic745ed4b55cdf5d5d6b43f91c9e5f0c23635c618
2023-05-10 19:04:34 -07:00
Treehugger Robot
6cc53f12b2 Merge "Revert "Revert "Parallelize generation of OTA package and target_file packing""" 2023-05-10 22:11:01 +00:00
Treehugger Robot
ef0a2c21dd Merge changes from topic "aconfig-part-4"
* changes:
  aconfig: introduce namespace, rename proto messages
  aconfig: add dump protobuf format
2023-05-10 19:22:00 +00:00
Treehugger Robot
081bad48eb Merge "Also disable dexpreopt for boot images for unbundled builds." 2023-05-10 18:16:54 +00:00
Kelvin Zhang
01e67f6942 Revert "Revert "Parallelize generation of OTA package and target_file packing""
This reverts commit be63f84810.

Reason for revert: already fixed by aosp/2577072

Change-Id: I8b6c02378b1b43947575af94a6702e7d6dfd5891
2023-05-10 17:03:40 +00:00
Treehugger Robot
b1a7ba8735 Merge "Improve finalization perfomance by building only current version." 2023-05-10 15:19:12 +00:00
Mårten Kongstad
3095078981 aconfig: introduce namespace, rename proto messages
Flags belong to a namespace. Update the proto files to reflect this.

Config files can only refer to a single namespace. Override files can
refer to multiple namespaces; an override directive for a flag in a
different namespace than the one represented by the cache will be
silently ignored.

Rename the proto messages to make it more clear what they are. Propagate
this change through the wrappers in aconfig.rs and the rest of the code.

Also, settle on Tracepoint instead of TracePoint.

Bug: 279485059
Test: atest aconfig.test
Change-Id: I16e69dd14687bc498b2ba89d6a35879459903801
2023-05-10 17:17:20 +02:00
Bruno BELANYI
81b5bf4831 Merge "Revert "Parallelize generation of OTA package and target_file packing"" 2023-05-10 13:53:39 +00:00
Bruno BELANYI
be63f84810 Revert "Parallelize generation of OTA package and target_file packing"
This reverts commit e30acf1b3f.

Reason for revert: DroidMonitor-triggered revert due to breakage b/281778022

Change-Id: Ie1ffc86d1ad181d3c8800f9fd57f841d0cf3ac09
2023-05-10 13:46:40 +00:00
Jiakai Zhang
c74a4011e2 Also disable dexpreopt for boot images for unbundled builds.
This fixes the tradefed build error caused by aosp/2582191.

Bug: 280440941
Test: `BUILD_BROKEN_DISABLE_BAZEL=true m dist` on tradefed branch.
Change-Id: I34c9fea0a5f7110c9b2bda1986df82afa3eafc79
2023-05-10 13:54:50 +01:00
Kelvin Zhang
ea70695d92 Merge "Fix non-AB ota generation for directories" 2023-05-10 04:07:09 +00:00
Kelvin Zhang
b036007592 Fix non-AB ota generation for directories
Test: ota_from_target_files -v --block yukawa-target_files-10097950.zip
test.zip

Change-Id: I4291010d66cc28bdb6b6b334cdbed06daf3de837
2023-05-09 20:30:53 -07:00
Alex Buynytskyy
aac2a187d4 Improve finalization perfomance by building only current version.
Bug: 275409981
Test: run locally
Change-Id: If531178a17792166726ff7ed230592c392eeb899
2023-05-10 03:10:32 +00:00
Yu Liu
5d4ffb6de8 Support sandboxing genrule
Bug: 281067655
Test: local build
Change-Id: Idb8806040f7adcb4c74304aaf17ced260472b6b0
2023-05-09 17:24:18 -07:00
Cole Faust
c63ce1ab58 Allow importing starlark code in makefiles
Adds a new `$(call run-starlark,my/starlark/file.bzl)` function that
will run the starlark file and set all the variables in the
variables_to_export_to_make dictionary as make variables.

Fixes: 280685526
Test: m nothing repeatedly causes no ninja regeneration, but touching all_versions.bzl does. go test, ./out/rbcrun -mode=rbc ./build/make/tests/run.rbc
Change-Id: Ic72e18dd28dba8233ba2dfb658b5d03ccece1bfd
2023-05-09 15:12:58 -07:00
Treehugger Robot
06ece3c666 Merge "Parallelize generation of OTA package and target_file packing" 2023-05-09 21:04:55 +00:00
Daniel Zheng
380cb8065a Add fastboot-info to updatepackage
Modifying img_from_target_files to also add fastboot-info to
updatepackage

Test: m updatepackage
Bug: 194686221
Change-Id: I2e08c4269f0d83417b9d7079633bc28796d1cdd6
2023-05-09 13:44:22 -07:00
Daniel Zheng
c1ffd4c7a6 Adding fastboot-info to target-files
Added so img_from_target_files can read and add fastboot-info.txt to
updatepackage

Test: m target-files-package
Bug: 194686221
Change-Id: Ia42d7174ef8a4119774057fa7c33f9a409e7ec30
2023-05-09 13:38:10 -07:00
Treehugger Robot
20f0cd3f91 Merge "Add lunch support for TARGET_RELEASE" 2023-05-09 13:51:19 +00:00
Mårten Kongstad
a102909e09 aconfig: add dump protobuf format
Introduce a new protobuf format to represent the all flags parsed by
aconfig. This data in this new format is similar to that of the internal
cache object, but the protobuf is a public API for other tools to
consume and any changes to the proto spec must be backwards compatible.

When aconfig has matured more, Cache can potentially be rewritten to
work with proto structs directly, removing some of the hand-written
wrapper structs and the logic to convert to and from the proto structs.
At this point, the intermediate json format can be replaced by the
protobuf dump.

Also, teach `aconfig dump` to accept an --out <file> argument (default:
stdout).

Also, teach `aconfig dump` to read more than once cache file.

Note: the new protobuf fields refer to existing fields. It would make
sense to split the .proto file in one for input and one for output
formats, and import the common messages, but the Android build system
and cargo will need different import paths. Keep the definitions in the
same file to circumvent this problem.

Bug: 279485059
Test: atest aconfig.test
Change-Id: I55ee4a52c0fb3369d91d61406867ae03a15805c3
2023-05-09 15:27:42 +02:00
Treehugger Robot
872023376e Merge "Remove unneeded rbcrun features" 2023-05-09 07:31:40 +00:00
Ryan Zuklie
db4bd944f8 Merge "Revert "(reland) Remove emulator dependencies on non emulator ta..."" 2023-05-08 21:59:15 +00:00
Szu-An Lu
527591f248 Revert "(reland) Remove emulator dependencies on non emulator ta..."
Revert submission 2576824-aosp-no-emulator2

Reason for revert: build fail

Reverted changes: /q/submissionid:2576824-aosp-no-emulator2

Bug: 280698810
Change-Id: Id033198251c10bbe774436837e4cddb527062155
2023-05-08 21:20:13 +00:00
Daniel Zheng
eea63fae85 Default building fastboot-info
Having fastboot-info build by default

Test: m
Bug: 194686221
Change-Id: Ic8a524c856604aaac15d52f74bacd7a5943e87c1
2023-05-08 12:11:56 -07:00
Daniel Zheng
1f09d54104 Merge "fix m fastboot_info" 2023-05-08 19:00:10 +00:00
Treehugger Robot
d279e5d79c Merge changes from topic "aconfig-part-3"
* changes:
  aconfig: simplify argument parsing in main
  aconfig: improve flag value tracing
2023-05-08 18:06:52 +00:00
Mårten Kongstad
98b0eeb2fc aconfig: simplify argument parsing in main
Improve readability by extracting how multiple input files are
transformed from a clap argument to an Input.

Bug: 279485059
Test: atest aconfig.test
Change-Id: I299179d39eca80e107342f6978984da79ee81e34
2023-05-08 12:47:34 +02:00
Mårten Kongstad
76adff2af0 aconfig: improve flag value tracing
Improve how the flag values (state, permission) are tracked when parsing
config and override files: migrate from a raw string to a proper struct,
as this will make it easier when aconfig will output this data in some
structured format for other tools to consume.

Also, rename Cache.debug to Cache.trace.

Bug: 279485059
Test: atest aconfig.test
Change-Id: Idad57c969515f697e9065429d8a44c38d8a512d2
2023-05-08 12:47:34 +02:00
Mårten Kongstad
80bff11aef Merge changes from topic "aconfig-part-2"
* changes:
  aconfig: change flag values to enabled/disabled enum
  aconfig: add read/write permission
  aconfig: Source: remove unnecessary #[derive(Serialize, Deserialize)]
2023-05-08 10:46:26 +00:00
Jeff Hamilton
a02c747449 Add lunch support for TARGET_RELEASE
This replaces support for the unused
TARGET_PLATFORM_VERSION variable.

Now, if you pass three - separated
items the first is product, the
second is release and the third
is variant. If you only pass two
they're still product-variant
and the build system will choose
a reasonable default for release.

Test: run lunch with two and three items, confirmed values in the build banner
Change-Id: I128177d96ffe81b79b6945a24ebf37861c3b25fc
2023-05-08 03:23:30 +00:00
Treehugger Robot
be8badd74e Merge "Script fixes and improvements." 2023-05-07 01:14:30 +00:00
Alex Buynytskyy
00a88ec3ec Script fixes and improvements.
Fix to mark all versions REL.

More robust patch application. Keep getting these build breakages, not sure why. Looks like git is
confusing one folder for the other?
https://android-build.googleplex.com/builds/submitted/10065142/test_suites_arm64/latest/logs/build_error.log

Bug: 275409981
Test: run locally
Change-Id: I6173b9ecae5e9ab12d9abf2eee3f2136dc353210
2023-05-06 20:55:10 +00:00
Daniel Zheng
d00675c764 Merge "Adding Build time flag to specify Cow Version" 2023-05-05 22:19:02 +00:00
Daniel Zheng
2b7ddbda54 fix m fastboot_info
m fastboot_info was not working. make syntax is weird

Test: m fastboot_info
Change-Id: Ifebb6e40f2c19f00436afa719259df97ce929490
2023-05-05 14:22:15 -07:00