Ninja delivers estimated total build time and critical path time from
previous ninja log.
Bug: 292304818
Test: check if ETA shows
Change-Id: I014caaa3e8222a53c8822616b2ae31b88a3b0310
This is needed to enable local execution via reproxy for metalava
actions for developer builds without causing permissions errors
and without disabling it for other actions.
Bug: b/308154125
Tested: ran a local build and verified all metalava actions were
executed locally without attempting to write to the remote cache.
Change-Id: Ia6f616e1ff5d0c71597ebf688765925ac81d19c3
When called from the startRBE goroutine, the panic ctx.Fatalf triggered
by is unhandled and causes the process to exit without cleaning up the
terminal. Move most of the quick checks to a checkRBERequirements
function called on the main goroutine so they can be reported
immediately before running Soong and Kati, and recover any panics
from startRBE and report them after waiting on rbeCh.
Bug: 293501187
Test: gcertdestroy && m nothing
Change-Id: I62c84c93ab0a7f0e4f2ab2cc64b22e2070dd6e4c
go/roboleaf-busy-beavers-sandboxing
deqp_spvtools_update_build_version gets this diff:
< "v2022.4-dev", "SPIRV-Tools v2022.4-dev android-u-beta-1-gpl-177-g1ef94532"
---
> "v2022.4-dev", "SPIRV-Tools v2022.4-dev unknown hash, 2023-11-28T19:30:48"
But it already has a comment on it to revisit its usage of git,
which doesn't work on CI.
Bug: 307824623
Test: ./build/soong/tests/genrule_sandbox_test.py chre_atoms_log.h deqp_spvtools_update_build_version
Change-Id: I759970a5687c4f75116a40f5c127ae762da4ee95
go/roboleaf-busy-beavers-sandboxing
This genrule is non-deterministic, (the jar files have timestamps)
so genrule_sandbox_test.py fails, but should otherwise work with
sandboxing.
Bug: 307824623
Test: m vm-tests-tf-lib
Change-Id: Ia8c60e7a0f134e839939622fd2747ff73ea3ce3c
This can be used to add apex-specific shared_libs to a CC module. It
would be nice if we could have apex.shared_libs. But it would make code
much harder to follow because we need to record the shared_libs list as
"exclude list" for non-apex anyway.
Bug: 312510312
Test: m libhardware libhardware.vendor libhardware.vendor.com.google.cf.ir
# check DTNEEDED for libapexsupport
# only apex-variant should have the dependency
Change-Id: I56a3dc280127d8ba44337707444ea226a49ccf0f
This was added by r.android.com/513843 to force dexpreopt some GMS core
modules even if dexpreopt is disabled, to avoid some memory usage
regression. We no longer need it because dexpreopt is never disabled on
production builds.
Bug: 313505540
Test: m
Change-Id: I605b7569c17ee715cd4df167768e25aaf51bcd37
Update androidmk to enable parsing of 'LOCAL_TARGET_SDK_VERSION' from
an Android.mk and translating it to target_sdk_version in an Android.bp.
Bug: 313336240
Test: m androidmk
Test: androidmk vendor/xts/gts-tests/tests/assist/Android.mk
Change-Id: I465aba3ea7d22a9978fc370a6718a2cfc43dce36
This already works with sandboxing, I'm not sure why it was added.
Bug: 307824623
Test: ./build/soong/tests/genrule_sandbox_test.py ue_unittest_erofs_imgs
Change-Id: I8d2c151e3bc6ed87e1d147e0ae316397ad56c4c8
This already works with sandboxing, I'm not sure why it was added.
Bug: 307824623
Test: ./build/soong/tests/genrule_sandbox_test.py pvmfw_fdt_template_rs
Change-Id: I43390274740144122aae2a225807a6e1100c85c1
Sandboxing it produces this diff:
$ diff <(zipinfo -l out_not_sandboxed/soong/.intermediates/external/musl/libc_musl_sysroot_bits/linux_glibc_x86_64/gen/ libc_musl_sysroot_bits.zip) <(zipinfo -l out/soong/.intermediates/external/musl/libc_musl_sysroot_bits/linux_glibc_x86_64/gen/ libc_musl_sysroot_bits.zip)
1,3c1,2
< Archive: out_not_sandboxed/soong/.intermediates/external/musl/libc_musl_sysroot_bits/linux_glibc_x86_64/gen/ libc_musl_sysroot_bits.zip
< Zip file size: 8535 bytes, number of entries: 16
< -rw-r--r-- 2.0 unx 421 bl 225 defN 08-Jan-01 00:00 include/bits/alltypes.h.in
---
> Archive: out/soong/.intermediates/external/musl/libc_musl_sysroot_bits/linux_glibc_x86_64/gen/libc_musl_sysroot_bits.zip
> Zip file size: 5358 bytes, number of entries: 14
17d15
< -rw-r--r-- 2.0 unx 10384 bl 2666 defN 08-Jan-01 00:00 include/bits/syscall.h.in
19c17
< 16 files, 21039 bytes uncompressed, 6439 bytes compressed: 69.4%
---
So the alltypes.h.in and syscall.h.in are removed from the zip after
sandboxing. This seems good, because those two files are handled
separately already in that Android.bp file, and are not regular header
files like the rest of the zip file.
Bug: 307824623
Test: ./build/soong/tests/genrule_sandbox_test.py libc_musl_sysroot_bits
Change-Id: I46b6340046ad7df85ea4fc9c54b46ade305661e6
Disabled modules may not have a valid root path.
Bug: 313410568
Test: SOONG_GEN_RUST_PROJECT=1 m nothing
Change-Id: I253cca18493193245aa198adfce5fd75cf27cefb