Previously a manifest file would be generated for static_java_library.mk
and package_internal.mk. For pacakge_internal.mk, this would cause
cryptic errors like b/188612215#2
With this CL, a manifest file would only be generated for java_library
with need_compile_res == true. The advantages are
1. No redundant generation for java_library with need_compile_res == false
(i.e. modules that do not require aapt2)
2. Force devs to provide manifest for android_app, and not silently
generating one for them
Bug: 188652897
Test: TH
Test: m nothing in tv-dev, car-dev
Change-Id: I69a23e373f1b4ac1569ae5b1d36067bfc0dadc05
* Now with 4 sections that can be shown/hidden independently.
* After the 'selected_projects' section, add two more sections:
* 'top_directory_section' contains
* a table of directories with at least 1% warnings.
* a 'selected_directory_warnings' subsection to show all warnings
in the clicked directory from the directory table
* 'top_file_section' contains
* a table of files with at least 100 or 1% warnings.
* a 'selected_file_warnings' subsection to show all warnings
in the clicked file from the file table
* Adjust button/section spaces and reduce button font size to 100%.
* Rename drawTable to genTables.
Test: warn.py --url=http://cs/android --separator='?l=' build.log > warnings.html
Test: warn.py --gencsv build.log > warnings.csv
Change-Id: I765b09a46adc111cfe781719ba7aa0f917aa6ffc
Equivalent to PRODUCT_EXTRA_RECOVERY_KEYS but for A/B OTA.
Bug: 211848136
Test: set PRODUCT_EXTRA_OTA_KEYS and check otacerts.zip
Change-Id: I81e27d12a22b405f6227b09c01ed684dfcede19e
These options are for certifying official GKI release, so they should
never be added to build command of recovery.img and boot-debug.img.
Also define gki_signing_signature_args in misc_info.txt iff.
BOARD_GKI_SIGNING_KEY_PATH is defined, so there's one less conditional.
We need to define it even if BOARD_GKI_SIGNING_SIGNATURE_ARGS is empty,
so that sign_target_files_apks.py can modify the option during image
signing.
Bug: 210367929
Test: Presubmit
Change-Id: I9546fcda796586d97af244955e15c1b8dc9f6d92
Add the list of targets that are handled as data inputs and
required by tests at runtime.
Bug: 205726862
Test: m out/target/product/vsoc_x86_64/module-info.json
Change-Id: Id1468ebaf8f72cf37787f3cc514a29724c115db5
Currently when running sign_target_files_apks on a no-system-image
target, it will raise the following error:
ValueError: max() arg is an empty sequence
This is because there is no APK files in the target_files.zip.
Fixing this by setting maxsize to zero in this case.
Bug: 213028932
Test: lunch gki_arm64-userdebug; make dist
Test: sign_target_files_apks \
--gki_signing_key=external/avb/test/data/testkey_rsa4096.pem \
--gki_signing_algorithm=SHA256_RSA4096 \
--gki_signing_extra_args="--prop gki:prop1 --prop gki:prop2" \
./out/dist/*-target_files-eng.*.zip signed.zip
Change-Id: I40daecbc2ff3f89d3e635d1a4a1c1dea31ba9a27
Some targets, e.g., the newly added `gki_arm64`:
https://r.android.com/1935340, have no system.img.
To avoid the build error when making the vbmeta.img on a no-system-image
target, only sets system.img's AVB settings when it exists,.
Bug: 212486689
Test: `lunch gki_arm64-userdebug; make` with BOARD_AVB_ENABLE := true
Change-Id: I5e3c531e74116e421506a86ffce83848e7a9d6ea
Macro images-for-partitions() returns $(INSTALLED_INIT_BOOTIMAGE_TARGET)
for the 'init_boot' partition, which is empty. It should return
$(INSTALLED_INIT_BOOT_IMAGE_TARGET) instead.
Bug: 203698939
Test: `make` without chaining 'init_boot' partition
Change-Id: I387813283dfad7e1b2f762a5fa4065775977caf7
If a build target does not contain system image, it doesn't
output anything to root folder. The patch fix the build error for
the case the root folder is empty.
Bug: 212486689
Test: make bootimage dist
Test: Build pass
Change-Id: I4f1376eb7e615f48171ed9c3057c5a78074abaa6
Test: Add a VENDOR_BLOBS_LICENSE entry to an existing product, then `m with-license`
Bug: 203436762
Change-Id: I4bbe77bda7789b6c44bea141518b1cd2e699d326
For not virtApex, this results in a KeyError.
line 151, in <module>\n', ' File
"/usr/local/google/home/baligh/clients/goog/master/out/host/linux-x86/bin/sign_apex/sign_apex.py",
line 144, in main\n', "KeyError: 'sign_tool'\n"]
BUG: 193504286
Test: TH
Change-Id: Id982e5c57086ada78168163d2293813df121847d
It's no longer required to install the compliance GSI
public keys into the ramdisk. Those public keys just need
to be included in the VTS test suite for GSI verification.
Bug: 176869478
Test: TreeHugger
Change-Id: I3714de75b94be43a1364b89b92d893b336aa014b
There have been a lot of merge conflicts because of this file (and a
few cases of people needing to merge changes internally because of
it). Though, we really don't care about the order of the file. So,
compare ignoring order. If there is a merge conflict in the future,
we can change the order slightly, and we can gradually clean up the
order over time, as needed (really, it's not important).
Bug: N/A
Test: file reordered as build-time check
Change-Id: I955a2bd78872ff6d975bc494f10b2ed5e532c680
Introduce a Soong variable to allow selective enabling of Java
optimizations for SystemUI. This is analogous to the
`SYSTEM_OPTIMIZE_JAVA` flag, but scoped just to SystemUI,
decoupling the feature from system server-related development.
Opting in to optimizations can be achieved with either:
* Env:
export SYSTEMUI_OPTIMIZE_JAVA=true
* Make:
$(call add_soong_config_var_value,ANDROID,SYSTEMUI_OPTIMIZE_JAVA,true)
Note that the build rule changes to hook into this variable will
land separately.
Bug: 203088572
Test: `SYSTEMUI_OPTIMIZE_JAVA=true m` (observe env variable change log)
Change-Id: I24b4b76cdf844e3c00735e19e69898867162c81d
Modules available in Q should not add new entries to
PRODUCT_APEX_*_JARS. Otherwise, there will be problems when a Q device
gets new modules and then OTAs to S, in which case, the device will have
the S version of SdkExtension (because SdkExtension is not available in
Q, see go/mainline-ota-problem), and the S version of SdkExtension
cannot consume those new entries correctly.
Bug: 203198541
Test: N/A
Change-Id: I15367ca59a06b4ee5fdb3803f2e4615b5d03b458
It's no longer required to install the compliance GSI
public keys into the ramdisk. Those public keys just need
to be included in the VTS test suite for GSI verification.
Bug: 176869478
Test: TreeHugger
Change-Id: I26c4a1c7dba28a3c8cf88af64d8539fdc23a4f28
Avoid writing test files in the build output directory which fails when
run with Bazel. This happens because Bazel's sandboxing environment
ensures that the test's working directory is unwritable.
See https://docs.bazel.build/versions/main/sandboxing.html for more
information.
Bug: 209687942
Test: atest --bazel-mode zipalign_tests
Test: atest zipalign_tests
Change-Id: Ie22f464830c1ffe4d38a94a16dbd39dafa7fe317
`ifeq (foo,foo,)` is treated like `foo == foo,` which is not what we
want here, we want to clear this variable for user builds.
Change-Id: I57f92c7267102c9f3ac2b0130228de0b3036ac66