summaryrefslogtreecommitdiff
path: root/aconfig/aconfig_declarations.go
AgeCommit message (Collapse)Author
2025-02-27Soong filesystem generates aconfig files for subpartitions Justin Yun
When system had system_ext or other subpartitions, aconfig files for the subpartitions were missing. Generate those aconfig files for the subpartitions. With this fix, we don't need to import aconfig files from system_ext to generate system aconfig files. Bug: 385213580 Test: lunch gsi_x86_64-trunk_staging-userdebug && m Change-Id: Ie3db5c73c50af97f3ad0bea5e0c84273c9fce886
2025-02-27Revert "Treat system_ext as system container" Justin Yun
This reverts commit 01efb834208f02892bf6b3d316c02fd44ea91af3, but also has some changes for the CLs added after the commit. Reason for revert: Revive system_ext container. System container must not include system_ext aconfigs. Bug: 385213580 Test: lunch gsi_x86_64_soong_system-trunk_staging-userdebug && m diff the aconfig_flags.pb Change-Id: I5ffe699595b5734d3555eb248cf36dedfc2d2105
2024-12-02Add RELEASE_ACONFIG_REQUIRE_ALL_READ_ONLY build flag. Oriol Prieto Gascó
Bug: 377294922 Test: TH Change-Id: If666691d1d3f028140d1bf7c016736e39a214a3e
2024-09-12Treat system_ext as system container Dennis Shen
Bug: b/365135457 Test: m Change-Id: Ic8fd60c0e1045f190b6608931ca1d65a784026f0
2024-09-04Move the caching/restoring code from soong to blueprint to fully skip build ↵ Yu Liu
actions. Bug: 358425833 Test: Manually verified the generated ninja and mk files and CI. Change-Id: Ieebb822c46f37c0ff55fad08531e9870a76cbd7b
2024-08-02Skip writing ninja file for module with a cache hit during incremental build. Yu Liu
This is just the first change, many more will come to make this feature really work. The main changes included here are: 1. Skip the writing of ninja file if a module has a cache hit. 2. Handle the case where a skipped module doesn't have the build defs info for the OrderOnlyStrings dedup logic to work by caching the missing info. Bug: 335718784 Test: local manual tests Change-Id: I32542bd1e7fd268113e072e7f68b51b293d83d03
2024-06-19Merge "Experimental code to support build action caching." into main Yu Liu
2024-06-18Add RELEASE_ACONFIG_EXTRA_RELEASE_CONFIGS LaMont Jones
This build flag causes us to create aconfig flag artifacts for the given extra release configs. Bug: 298444886 Test: manual Change-Id: I10148f6e7318b0477438ed1d8baafbf4dc594c90
2024-06-19Experimental code to support build action caching. Yu Liu
Bug: 335718784 Test: build locally Change-Id: Icc1f1fb15f9fe305e95dd51e2e7aff1e9cbf340c
2024-06-13Use OutputFilesProvider on aconfig_declarations_group mrziwang
In the context of incremental soong, the output files inter-module-communication will be through OutputFilesProvider. The OutputFileProducer interface will be deprecated. This CL also removes the unused field "intermediatePath" from build_flag_declarations and aconfig_declarations Test: CI Bug: 339477385 Change-Id: I8417db7ca6ece50b3ecd807fc3b6356aa52b18e0
2024-04-24Make container mandatory in aconfig_declarations. Yu Liu
Bug: 330354107 Test: Unit test and CI. Ignore-AOSP-First: It is easier to detect all the missing ones in internal master. (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:e916a2c758d2a95037d1d366e7cd0e10d241d510) Merged-In: I4ab4271c67a35d0fdcc0b57c27260e29fb7dea56 Change-Id: I4ab4271c67a35d0fdcc0b57c27260e29fb7dea56
2024-03-19Pass "--container" to aconfig create-cache Yu Liu
Bug: 328823994 Test: unit tests and manual tests locally. Ignore-AOSP-First: It is easier to detect all the mismatch in internal master. (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:b75ed0f2d8c4d13924573fd065c9706475aac17b) Merged-In: I096877015b78786639376b279a9be5d07594d92e Change-Id: I096877015b78786639376b279a9be5d07594d92e
2024-02-08Add property Exportable to aconfig_declarations Zi Wang
Only when aconfig_declarations explicitly set this property true, its flags will be repackaged. If a java_aconfig_library has mode "exported", its corresponding aconfig_declarations must have exportable prop set to true. Test: Added unit tests and CI Bug: 310504781 Ignore-AOSP-First: this change will be cherry picked to aosp (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:e4527f3010b3fd6f33948a15a9b4fdc944da34f0) Merged-In: Ie9526e3755a6e7d142b377d5dd85a1bc60ffabc5 Change-Id: Ie9526e3755a6e7d142b377d5dd85a1bc60ffabc5
2024-01-10move SetAconfigFileMkEntries to android LaMont Jones
This will need to be called by some modules handled in android. Bug: 308625757 Test: manual Change-Id: Ic56e8ef3a453c59866aab6d39a21108cf8536b56
2023-12-19move CollectDependencyAconfigFiles to android LaMont Jones
This needs to be called by some modules in android. Bug: 308625757 Test: manual Change-Id: I389fcfd88a3f4bd85a9218fdd4dd66d8a239bb67
2023-12-19Merge "Properly package aconfig files for product and system_ext partitions" ↵ Yu Liu
into main
2023-12-18Properly package aconfig files for product and system_ext partitions Yu Liu
Bug: 311173471 Test: Unit tests Change-Id: Iac60695beb6529139965e4bb24024df6ce278fb2
2023-12-14Convert OtherModuleProvider to generic providers API Colin Cross
Convert all of the callers of OtherModuleProvider/OtherModuleHasProvider to use the type-safe android.OtherModuleProvider API. Bug: 316410648 Test: builds Change-Id: Id77f514d68761a262d9ea830a601dbed804bbbe5
2023-12-14Convert NewProvider/NewMutatorProvider to generic providers API Colin Cross
Convert all of the callers to NewProvider and NewMutatorProvider to use a generic type parameter instead of an example object. Bug: 316410648 Test: builds Change-Id: Ic9cdafc87336e26730d3fd596df05de0e7267542
2023-12-14Convert SetProvider to generic providers API Colin Cross
Convert all of the callers of SetProvider to use the type-safe android.SetProvider API. Bug: 316410648 Test: builds Change-Id: If58f4b5355264ddab2045bc3591a4eac19cd58fc
2023-12-14Properly package aconfig files for vendor partition Yu Liu
Bug: 311173471 Test: Unit tests Change-Id: Ibb857b69c3f83326a9ff5732e11dd09887e4ba6e
2023-12-11Support rust modules when packaging aconfig files in apex. Yu Liu
Also remove the code to package aconfig files for transitive dependencies since those files should have already been included in the direct dependencies. Bug: 311173471 Test: Unit tests Change-Id: I25637af9381f71a78b70a8de9894618188c9735d
2023-12-08Remove ConvertWithBp2build implementations Colin Cross
Remove the ConvertWithBp2build implementations from all the module types, along with the related code. Bug: 315353489 Test: m blueprint_tests Change-Id: I212672286686a318893bc7348ddd5a5ec51e77a7
2023-12-07Add aconfig flag value text file in aconfig_declarations provider Jihoon Kang
Alongside with the generated proto file, the aconfig_declaration now also outputs a text file that lists aconfig flags and values of its corresponding proto file, in the format as shown below: ``` my.flag1=true my.flag2=false ... ``` To prevent confusion between the preexisting proto file and the newly introduced text file, the change also renames the variables of the proto file from `intermediatePath` to `intermediateCacheOutputPath` and likewise. The utilization of the generated text file will be done in the child changes. Test: m out/soong/.intermediates/build/make/tools/aconfig/aconfig.test.flags/intermediate.txt && inspect output Bug: 306024510 Change-Id: Iee16ad57bb87e992a477fc96502f79e971d01233
2023-12-07Merge aconfig files per-module Colin Cross
Passing the list of all transitive aconfig files to Make causes extra Kati analysis runs when dependencies are changed in Android.bp files. Since Make is going to merge them anyways, merge them per-module and pass a single aconfig file to Make for each module. Fixes: 313698230 Test: m out/target/product/vsoc_x86_64/system/etc/aconfig_flags.pb Change-Id: Ifde4826bc93bc06e40338f72b4cb39eed26ca08d
2023-11-28Add container property to aconfig_declarations. Yu Liu
Bug: 311155208 Test: Unit test Change-Id: I7b187138856d0144203961e82b6dad5e2f8eed9d
2023-10-13Handle the case where the release value set is a list. Yu Liu
Bug: 304814040 Test: CI, unit test, b build build/make/tools/aconfig:aconfig.test.cpp b test build/make/tools/aconfig:AconfigJavaHostTest Change-Id: I9ca939348a063c39e9528f24e788f9757458d30c
2023-09-20Have ConvertWBp2build use Bp2buildMutatorContext Chris Parsons
This no-op refactoring facilitates some upcoming functional changes for "bp2build allowlist v2". The work requires that the bp2build conversion mutator be changed from a TopDown mutator to a BottomUp mutator. Refactoring all bp2build-related methods so that they use Bp2buildMutatorContext makes it easier to make this functional change without touching tens of files and multiple projects. Bug: 285631638 Test: m bp2build Change-Id: I3d1ef3064146e959c6f0dc315350fc9764bf2bd2
2023-09-09Support aconfig_declarations, aconfig_values and aconfig_value_set Yu Liu
Bug: 297356603 Test: Unit tests Change-Id: I2f797578a35322440db0f281b4d46b6652512e00
2023-08-20Add missing dependency for cache files on the aconfig files Joe Onorato
Bug: 293899028 Test: manual Change-Id: I6399a2228cbe9a1b8d79383000dd30e43e73c603
2023-08-14Merge "Support default-permission in aconfig_declarations" into main Zhi Dou
2023-08-10Support default-permission in aconfig_declarations Zhi Dou
Aconfig provides new argument, default-permission, for create-cache. When buld aconfig_declarations, aconfig_declarations will read the value from release configuration to pass this value to aconfig. Bug: 294417368 Test: presubmit Change-Id: Id55dab1d757e2366a62449c73e2497cc958c5e78
2023-08-08Implement rust_aconfig_library Vinh Tran
rust_aconfig_library generates src/lib.rs and uses it to build library variants (dylib, rlib-rlib_std, and rlib-dylib_std) as of what `rust_library` produces Test: go test Change-Id: I6c4603691d4306c463c2e9521f5c11c30765b1e3
2023-07-19Pass declarations as separate arguments Zhi Dou
Aconfig take declarations as separate arguments if there are multiple declaration files. Bug: 291926035 Test: build flags Change-Id: Ic0d069184f48ceaf8947acc5b951eecff7c308f9
2023-06-21Rename device_config --> aconfig and definitions --> declarations Joe Onorato
Bug: 285303012 Test: for x in next trunk trunk_food trunk_staging ; do lunch aosp_panther-$x-eng ; m nothing ; done Change-Id: I3375f46b3ecbbc516d1bee6ab3f80725fcccde8f