summaryrefslogtreecommitdiff
path: root/scripts
AgeCommit message (Collapse)Author
2025-03-17Remove host script(list_image) Jooyung Han
the script is not used anywhere. But: 399476012 Test: presubmit (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:bd1dda557e59e42da277da48db1181159889382d) Merged-In: I73b6b961e5b63fa01f926419aea42a6e2cfc1413 Change-Id: I73b6b961e5b63fa01f926419aea42a6e2cfc1413
2025-03-11manifest_check.py: Clarify that ordering matters Nick Kralevich
When comparing the library declaration from AndroidManifest.xml and Android.bp, the library ordering must match (see b/132357300#comment3). The error message does not make it clear that ordering is significant and a mismatch in ordering is an error. Improve the error message to make this more obvious. Bug: 401287317 Test: compiles Change-Id: Idfb3e1e96893f81190dc320c49d40677b76f9853
2025-03-04Merge "Replace --revert-annotation with a flags config file" into main am: ↵ Treehugger Robot
d183d9f24b Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3523090 Change-Id: I5cfd92e154ae2e604589b4a91388a7a535ad1f14 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2025-03-04Replace --revert-annotation with a flags config file Paul Duffin
Previously, Metalava did not support flags specifically and instead relied on the build to generate the appropriate `--revert-annotation` options to ensure that each flagged API was reverted or finalized as appropriate to the flag state. However, Metalava now supports configuring the flag state explicitly so this change switches the build to make use of that. The set of flags to be passed to Metalava are generated using exactly the same queries as before except that instead of just outputting the `{fully_qualified_name}` it outputs the whole protobuf definition. The `keep-flagged-apis.sh` script has been replaced by `aconfig-to-metalava-flags.py` which consumes the protobuf and generates a config file suitable for Metalava to consume. Finally, instead of using `@<file>` syntax to pass a file containing command line options the config file is specified using `--config-file`. One point to note, previously, when `aconfigFlagsPaths` was empty it would just pass `--revert-annotation android.annotation.FlaggedApi` to revert them all. To do the same with the configuration file it is necessary to pass an empty `<api-flags/>` as no `<api-flags>` means keep all the flagged APIs, just like no `--revert-annotation` does. Rather than have some special logic to handle that case and create an empty file I just let it drop through as the code below generates an empty protobuf file which in turn creates an empty `<api-flags/>` element in the config file. Bug: 399846595 Test: # Before applying this change run: tools/metalava/scripts/gather-android-metalava-artifacts.py before # After applying this change run: tools/metalava/scripts/gather-android-metalava-artifacts.py after # Make sure that there are no differences. meld before after Change-Id: Ia95e111f10d066996e4e51c5b7027b09f4d05d57
2025-02-27Merge "Merge 25Q1 (ab/12770256) to aosp-main-future" into aosp-main-future Xin Li
2025-02-27Build Go tools for arm Colin Cross
Test: prebuilts/build-tools/build-prebuilts.sh Change-Id: I915be7bb7451f27fcd4beba5e6487da7a01639a6
2025-02-26Merge 25Q1 (ab/12770256) to aosp-main-future Xin Li
Bug: 385190204 Merged-In: I7a698681eff69f1bd80966cacd6bc95d5eb990f0 Change-Id: I4011e94066708ea793f58e36eb89baab6dffe94a
2025-02-17Skip attempting unsupported llvm-strip operation for COFF binaries Yi Kong
Prevent printing the following confusing and superfluous error message: prebuilts/clang/host/linux-x86/clang-r547379/bin/llvm-strip: error: option is not supported for COFF Test: presubmit Change-Id: Id5a940f8c78497cf5dae3b540e0ec8eab46da013
2025-02-11Disable LTO when building the NDK sysroot. Dan Albert
Bug: https://github.com/android/ndk/issues/1591 Test: None (the tree's already broken, so I can't build) Change-Id: I7cb4a594491bc5913932cbd3a883c16753465234
2025-02-05Stop setting dalvik.vm.image-dex2oat-filter property Andrew Scull
This system property is no longer expected by ART. There is a new way to disable all dexpreopt and dexopt using `OVERRIDE_DISABLE_DEXOPT_ALL`, `dalvik.vm.disable-art-service-dexopt`, and `dalvik.vm.disable-odrefresh`. See build/make/target/product/runtime_libart.mk for more details. JIT Zygote mode uses the `verify` filter, which `extract` is an alias for, so deleting the property is a no-op. This also cleans up the deprecation warning for the `extract` value in logcat. Test: TH Test: Build and boot eng variant Change-Id: I9eab28fa6db5774e5285a007bdefa6d8ce133a58
2025-01-21Merge "Make go test -race more hermetic" into main Treehugger Robot
2025-01-21Make go test -race more hermetic Colin Cross
Pass the same --sysroot, -B and -L flags to go test -race as Soong does for hermetic host builds. Test: OUT_DIR=/tmp/out ./run-soong-tests-with-go-tools.sh Change-Id: I2a47894c21610c219b48cd380ed44e3e11a236a2
2025-01-19Merge "Update fstab.postinstall documentation in gen_build_prop.py" into main Treehugger Robot
2025-01-15Remove Include_make_built_files Cole Faust
We're not using this anytime soon, so just remove it for now. Bug: 390269431 Test: m nothing Change-Id: I51bbf104dceabafc08d562cfecb31a845cb88d12
2025-01-15Update fstab.postinstall documentation in gen_build_prop.py Bowgo Tsai
Update the documentation for the ro.postinstall.fstab.prefix property to reflect that the default is /system. Bug: None Change-Id: Ia03c07cef31b03346cbabbb48e661c0c63aa6317 Test: None
2024-12-20Revert "Define a tool and a static rule to calculate the hash of a directory" Jihoon Kang
This reverts commit bd7afdc2a15e776e9aff208577ab16fd693499f2. Reason for revert: No longer needed Change-Id: I71874f5426dcd20b3bacf04379fb3f897835a4d5
2024-12-20Define a tool and a static rule to calculate the hash of a directory Jihoon Kang
The rule will be used in a follow up change that adds a directory in a provider. Test: m nothing Bug: 381104942 Change-Id: I7147dcbc43e19840b2d73380785a01bda6643d85
2024-12-16Merge "rust: Add version scripts and symbol exports" into main Ivan Lozano
2024-12-13Normalize filepath comment for gen files in build.prop Spandan Das
build.prop contains a `# from $filepath` comment to log the origin of a sysprop. This is useful to have, but causes the metadata of vendor/build.prop to be different between make and soong built partitions. This CL replaces the absolute filepath of generated files with their filenames in the build.prop comment. Bug: 382295862 Test: commented out notice files in build/make/core/Makefile Test: lunch aosp_cf_x86_64_phone-trunk_staging-userdebug Test: export BUILD_DATETIME=10 Test: verified that vendor.img built by make and soong have the same sha Change-Id: Ib0caad5fa0171c39317646e49372a69534a42af0
2024-12-13rust: Add version scripts and symbol exports Ivan Lozano
This allows Rust modules to define a version_script for shared library variants. This requires using a wrapper for the linker (clang++) to intercept the flags which rustc emits. This also adds the ability to export additional symbols in addition to those exported by rustc by default, e.g. whole_static_library symbols. Bug: 314309643 Test: New Soong tests pass. Test: m Test: m <simple version script module> Test: m <simple extra symbols module> Change-Id: I93c9552e5e1181df4663d194c4df4b7053553dd4
2024-12-06Use unmodified TARGET_USES_VULKAN in ro.hwui.use_vulkan Spandan Das
This will create an empty ro.hwui.use_vulkan if TARGET_USES_VULKAN is empty. This matches the make behavior, and helps with validating the contents of soong vendor filesystem. Bug: 382295862 Test: lunch aosp_cf_x86_64_phone-trunk_staging-userdebug Test: m out/soong/.intermediates/build/soong/fsgen/aosp_cf_x86_64_phone_generated_vendor_image/android_common/aosp_cf_x86_64_phone_generated_vendor_image.img Test: Verified that ro.hwui.use_vulkan is same between make and soong (empty string) Change-Id: I9f80e613f7539dd2e895cfa96bd2ba481ddd6974
2024-12-05Merge "Fixes for avb flags in soong-generated partitions" into main am: ↵ Cole Faust
8759130e87 am: 5605d267de Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3390960 Change-Id: Ic43f9b41dd8aec7f64cab5bd85d82486541d7680 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-12-05Merge "Remove __future__ references from python scripts" into main am: ↵ Treehugger Robot
880b50fd84 am: 3ba2914573 Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3393440 Change-Id: Ibf4aa361636a759adcaf3bf3b9bfc64f449cf15f Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-12-05Merge "Fixes for avb flags in soong-generated partitions" into main Cole Faust
2024-12-04Remove __future__ references from python scripts Cole Faust
All these scripts are now python3-only, they don't need this. Test: Presubmits Change-Id: Id2b9db26a537f6d70e874a0ae2ceb0927cbdce7d
2024-12-04Fixes for avb flags in soong-generated partitions Cole Faust
The logic for what variables control what aspect of AVB is pretty complicated, this brings make and soong closer together. Bug: 381120092 Test: m out/soong/.intermediates/build/soong/fsgen/aosp_cf_x86_64_phone_generated_system_image/android_common/prop, diff with make's prop file Change-Id: I6ada90262f4578d120c35b7f8d38c06c2b1d9c27
2024-11-14Merge "Add ninja determinism test" into main am: 06540bb808 am: b8eee8a1ed Treehugger Robot
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3348946 Change-Id: I53356b28c6a3ef10d8678226ebecc485cba58ed0 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-11-13Merge "Add ninja determinism test" into main Treehugger Robot
2024-11-13Add ninja determinism test Cole Faust
To make sure the ninja files aren't non-deterministic. I will add this to CI after it's checked in. Test: Manually Change-Id: I071562885a1652fbfe2374916f5de017597f770a
2024-11-13Merge "Build ramdisk's build.prop with soong" into main am: 51778812b4 am: ↵ Cole Faust
9211804267 Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3343347 Change-Id: I2fc82bf1bfe4c6e654ad5780f3238a426375205b Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-11-13Build ramdisk's build.prop with soong Cole Faust
Following the same pattern as existing soong build.props, but with minor tweaks for ramdisk such as making the partition "bootimage". Bug: 378146476 Test: Diff'd out/target/product/vsoc_x86_64/ramdisk/system/etc/ramdisk/build.prop before and after this cl Change-Id: I7ab2621d78c28deb73628bc455e040247a3c8031
2024-11-07Merge "Migrate build.prop for (system|vendor|odm)_dlkm to soong" into main ↵ Spandan Das
am: 3c0e465cc3 am: 5b2e623e5a Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3340853 Change-Id: I5878067348314781b80cdc1513adf5f1b59cae69 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-11-06Migrate build.prop for (system|vendor|odm)_dlkm to soong Spandan Das
Bug: 377562851 Test: lunch aosp_cf_x86_64_phone-trunk_staging-userdebug Test: no diff in $PRODUCT_OUT/system_dlkm/etc/build.prop $PRODUCT_OUT/vendor_dlkm/etc/build.prop $PRODUCT_OUT/odm_dlkm/etc/build.prop (modulo timestamp diffs) Change-Id: I636442de860220d2ac6f5b510038a1405013d819
2024-11-06Add sdk_minor to build prop of all partitions built with soong Spandan Das
ag/28035235 udpated sysprop.mk to add sdk_minor to build.prop of all partitions when building with make. But its sibling ag/28035315 updated gen_build_prop.py to add sdk_minor to build.prop for only system.img. The build.prop modules are currently being migrated to soong, and this CL adds sdk_minor to all soong built build.prop files Bug: 350458259 Bug: 375500423 Test: Verified that the following line exists in soong-built vendor build.prop ``` ro.vendor.build.version.sdk_minor=0 ``` Ignore-AOSP-First: sdk_minor change is not available in AOSP Change-Id: I7a698681eff69f1bd80966cacd6bc95d5eb990f0
2024-10-29Merge changes from topic "soong_vendor_build_prop" into main am: cd6e54c4b6 ↵ Spandan Das
am: fff7fe7a16 Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3322566 Change-Id: I809f30020af32dee21092f14829e51fee942ffbf Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-10-28Add vendor to list of supported partitions in gen_build_prop.py Spandan Das
The kati built vendor.img will still use the kati built vendor build.prop file, but the soong built vendor.img will use an autogenerated `build_prop` module for vendor This CL should be a noop for now Bug: 374371755 Test: diff in contents for aosp_cf_x86_64_phone https://paste.googleplex.com/5766413037076480 Summary - timestamp change (expected) - ro.hwui.use_vulkan changes from "" to false, but I think this is functionally equivalent Test: presubmits Change-Id: I10bc5b6e8d48b86fa70d5ab0722fee658b1a224a
2024-10-24Merge "Define VendorApiLevelPropOverride for GRF prop" into main am: ↵ Treehugger Robot
17d5d89124 am: c7458ed324 Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3316635 Change-Id: I28569d756bd2142268ba7b6c7c1a18cec004382a Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-10-24Define VendorApiLevelPropOverride for GRF prop Justin Yun
Soong must read BOARD_API_LEVEL_PROP_OVERRIDE to generate build props for vendor image. If this value is provided, ro.board.api_level will be set to this value. Bug: 374333106 Test: read product_config Change-Id: Ifbeea76596ea7b22928ae58467bb05cffeb5da1f
2024-10-23Remove multiproduct_kati and build_test.bash am: d117bec818 am: 10eaba4695 Joe Onorato
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3315319 Change-Id: If60e9e3b2cfb989fe2d83744cde805b170b91a45 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-10-23Remove multiproduct_kati and build_test.bash am: d117bec818 Joe Onorato
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3315319 Change-Id: Id66705a6d184446bc7778948b38775d4b884124c Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-10-23Merge changes from topic "soong-cleanup" into main Joe Onorato
* changes: Remove bp2build and appurtenances. Remove multiproduct_kati and build_test.bash Remove cuj script.
2024-10-22Merge "Add new properties to aid in removing the 1-variant fallback" into ↵ Cole Faust
main am: a9e9f539e8 am: c8758b3e24 Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3314635 Change-Id: Ie8d0ddfed135a68909e9462258b13d13b79be406 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-10-21Add new properties to aid in removing the 1-variant fallback Cole Faust
These new properties are essentially methods to specify "outgoing transitions" in blueprint files. There are lots of host tests that want to include apps built for device in their data, so they need a property that adds dependencies based on the device variants instead of copying the same host variants. After this cl is submitted, I'll do an LSC to update all the usages that are relying on the 1-variant fallback to use these properties instead. Bug: 372091092 Test: m nothing --no-skip-soong-tests Change-Id: I45b8fb024da120ad61606e3a21de86e4392be2a4
2024-10-21Remove multiproduct_kati and build_test.bash Joe Onorato
This hasn't been running in CI for over a year, and when it was it was too slow and too impossible to keep green. It contained some good optimizations to check multiple configs, but with incremental analysis we have an opportunity to rethink how to accomplish the same goals with less resources. Test: treehugger Bug: 374816306 Change-Id: Id19d9c117d7474c3a5ef6ba011ada0c6b4d1dadc
2024-10-17Merge "Modify disabled flags to be exposed in keep-flagged-apis" into main ↵ Jihoon Kang
am: 54bfc97ea3 am: 4680246212 Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3312615 Change-Id: I4c43f8ee55cbf0f6e006456fa2ae4c5b172d6346 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-10-17Modify disabled flags to be exposed in keep-flagged-apis Jihoon Kang
Currently, keep-flagged-apis filters flags that are disabled (so that the apis associated with the disabled flags are not exposed in the "exportable" stubs), but sdk_with_runtime_apis product builds require disabled flagged apis to be exposed. Filtering of the flags should be done by aconfig, and keep-flagged-apis should only convert the list of flags to the metalava-consumable format. Test: lunch sdk_with_runtime_apis-trunk_staging-eng && m sdk dist and observe outputs Bug: 371248797 Change-Id: If1622a6b81bc69a99e8f89c60a11ebec7899b95b
2024-10-03Merge "Handle RELEASE_PLATFORM_SDK_MINOR_VERSION" into main Treehugger Robot
2024-09-26Remove top down strict updatability checks Colin Cross
The enforce_strict_updatability_linting and apex_strict_updatability_lint are some of the last top down mutators, and removing them will help with incremental analysis. Both mutators are used to propagate a flag to transitive java dependencies that causes them to add extra checks to their lint rules to require that baselines not include any skipped NewApi checks. Instead of modifying dependencies to check the baselines, propagate the baselines up to the modules that are requesting the checks, and perform the checks on all transitive baselines there. Bug: 367784740 Test: TestJavaLintStrictUpdatabilityLinting Test: TestApexStrictUpdtabilityLint Flag: EXEMPT refactor Change-Id: Ief2e3b26d745da61f13e621d635a5879d9c56779
2024-09-13Merge "Add links to partner docs for presigned apks" into main Treehugger Robot
2024-09-13Add links to partner docs for presigned apks Cole Faust
So if a partner gets this error they can find the script and see links to documentation. Test: Presubmits Change-Id: I50cbe4770e9619fb67a7a586fa6d2210c67d4650