summaryrefslogtreecommitdiff
path: root/apex/builder.go
AgeCommit message (Collapse)Author
2024-09-23create flag info file in mainline build Dennis Shen
Bug: b/301491148 Test: m Change-Id: I2a0abe215510acb78526b0e1c68b5881af7997fd
2024-09-04Merge "apex: run host_apex_verifier" into main am: 19b81d777d am: 2b33af39c0 Treehugger Robot
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2972873 Change-Id: Ieac7904745e4bfcb8be646fce2a444cec7839ebf Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-09-04Merge "apex: run host_apex_verifier" into main Treehugger Robot
2024-09-04Merge changes Ia9f2186e,Ibe567d3b into main am: 0a9eb7f657 am: e1b039d184 Jooyung Han
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3247637 Change-Id: I70cf56e14a9bc13b1c8499037f8ddca3e54b0dd5 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-09-03Refactor around apex aconfig files (#2) Jooyung Han
Aconfig files are treated like other files in APEX. This way, we can dedup the code hanlding those files (copy commands, fs_config, etc). Bug: n/a Test: m nothing --no-skip-soong-tests Change-Id: Ia9f2186e4e54e92ad90c7a9c00474cb0f7519a31
2024-09-02apex: run host_apex_verifier Jooyung Han
For now, the tool checks .rc files: - .rc files are okay. - services should run binary in apex. Bug: 223896570 Test: m <apex> Change-Id: I469c20afeff01cf10955ff2419113d6ac2d4cf45
2024-08-26Merge "Remove installFilesDepSet, packagingSpecsDepSet and licenseInstallMap ↵ Yu Liu
from ModuleBase." into main am: ad64c5f370 am: afb4e9440d Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3236345 Change-Id: I8800b793a484b2cb086209e34ba75daf5d991f35 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-08-26Remove installFilesDepSet, packagingSpecsDepSet and licenseInstallMap Yu Liu
from ModuleBase. The old packagingSpecsDepSet field is kept temporarily to bypass an auto-merge issue, and will be removed in next change. Bug: 358425833 Test: CI Change-Id: I28b4933459c33224f756cc306cabc8088f9be862
2024-08-23Revert "Remove installFilesDepSet, packagingSpecsDepSet and lice..." Yu Liu
Revert submission 28945194-Remove installFilesDepSet Reason for revert: will resubmit from aosp Reverted changes: /q/submissionid:28945194-Remove+installFilesDepSet Change-Id: I2a04998774da71ad0415958d7e1633a0833293f9
2024-08-22Remove installFilesDepSet, packagingSpecsDepSet and licenseInstallMap Yu Liu
from ModuleBase. Bug: 358425833 Test: CI Ignore-AOSP-First: a internal only project will be broken if submitting AOSP first. Change-Id: I2863265a01083d3c624c8a111be0531b519f1288
2024-07-29Merge "Cleanup configurable getter usages" into main am: c6f1fe0861 am: ↵ Treehugger Robot
d1fb3378ca Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3198402 Change-Id: Ic646cc1686db7b39f74f26badf5dc1a6b6602689 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-07-29Cleanup configurable getter usages Cole Faust
You don't have to call module.ConfigurableEvaluator(ctx) if ctx is already a ModuleContext, you only need to do that for more restricted contexts like SingletonContext. Bug: 323382414 Test: m nothing --no-skip-soong-tests Change-Id: I7612290d43dae7decfae283a341882d9016c98a3
2024-07-25Make some apex properties configurable am: b114234f6b am: 5402171253 Inseob Kim
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3189224 Change-Id: I6087622d56958fe1b61f5492f03b6b5eeb6c65b1 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-07-25Make some apex properties configurable Inseob Kim
This allows using select statements with these. * androidManifest * canned_fs_config * systemserverclasspath_fragments Bug: 354824866 Test: m Change-Id: I4c2182944ec14d99332f437c39a19ba0dc6b7731
2024-07-04Remove apex.generate_hashtree Jooyung Han
It's deprecated. Ignore-AOSP-First: internal branches use this. Will be gone. Fixes: 184914612 Test: m Change-Id: I14316a9a288ffc2727bb7033ebded4f4d48b1e6c
2024-04-05Remove Device VNDK version usage from Soong Kiyoung Kim
As of VNDK deprecation, Device VNDK version should no longer be used from build. This change removes all references on Device VNDK version and related logic with it. Bug: 330100430 Test: AOSP CF build succeeded Change-Id: Ibc290f0b41e8321f80c75c69f810223989af68dc
2024-04-01Remove PlatformVndkVersion property Kiyoung Kim
Platform VNDK version is no longer available based on VNDK deprecation. Remove all code using Platform VNDK version. Bug: 330100430 Test: AOSP CF build succeeded Change-Id: I7d0f7e23eff5d153346890f242a94b78bad6736b
2024-03-28VINTF manifests in apex don't require extension Jooyung Han
libvintf reads all entries from vintf directory. The apex build rule should match with it. Bug: 331474817 Test: build with aosp/3017012/1 Change-Id: Ida5fce2436ec5985e2fb4c2a3608bf20f4933582
2024-02-28Some tweaks to the aconfig flag collection logic Yu Liu
1. Output the aconfig flags pb and storage files to /etc 2. Fix a bug where aconfig flags were not collected for java_sdk_library Bug: None Test: manual and unit tests. Change-Id: I0896e91918c1b53c98ac9dc0f4a636f158200891
2024-02-17Support aconfig stoage files for apex. Yu Liu
Bug: 323071835 Test: unit tests and manual build test. Change-Id: I4a1a05b3afdf88058a970040b3f176f36c5c8037
2024-02-13Merge "Add environment variable UNBUNDLED_BUILD_TARGET_SDK_WITH_DESSERT_SHA" ↵ Jihoon Kang
into main
2024-02-12Add environment variable UNBUNDLED_BUILD_TARGET_SDK_WITH_DESSERT_SHA Jihoon Kang
UNBUNDLED_BUILD_TARGET_SDK_WITH_DESSERT_SHA enables user to specify ${codename}.${sha} as min_sdk_version and target_sdk_version in order to support mainline train building into android build. Test: TH Bug: 295905124 Change-Id: I032d464aaa7314520f98b8eafa53d962940075ce
2024-02-07apex: skip apex_sepolicy_tests for test apex Jooyung Han
Test apexes are often configured incorrectly intentionally. Bug: 324005965 Test: m Change-Id: Ifddbca71b46a42cffa9923b0dd66cd5e2d8024e4
2023-11-28Add container property to aconfig_declarations. Yu Liu
Bug: 311155208 Test: Unit test Change-Id: I7b187138856d0144203961e82b6dad5e2f8eed9d
2023-11-22Merge "Allow apex to use generated file_contexts" into main Inseob Kim
2023-11-17Add DataPath.ToRelativeInstallPath Colin Cross
Add a method to DataPath that converts it to the relative install path in preparation for adding additional complexity to DataPath. Bug: 311428265 Test: builds Change-Id: I65b06238aafda2db72c6a253744a3087976451cd
2023-11-17Change deps of ctx.Install* from Paths to InstallPaths Colin Cross
Installed files should only depend on other installed files, change the deps arguments of the ctx.Install* methods from Paths to InstallPaths. Bug: 311428265 Test: builds Change-Id: I1ebef60a943bdbe907744cc43aa985371ac56d32 Merged-In: I1ebef60a943bdbe907744cc43aa985371ac56d32
2023-11-17Allow apex to use generated file_contexts Inseob Kim
To support trunk stable, file_contexts files should be processed before creating APEX images. That means that file_contexts may be under out/. This change relaxes the path check so we can use Soong-generated file_contexts, not only the real source file_contexts. Of course the restriction that modules should be under system/sepolicy is still enforced. Bug: 306563735 Test: build with generated file_contexts; see virt apex Change-Id: I3aa368b338141d4826fc8622e1c8d2838bfd8484
2023-11-14Use vendor_file for vendor apex root Jooyung Han
It was 'vendor_apex_metadata_file', but root directories can be simply labelled as 'vendor_file' so that linker can resolve paths in vendor apexes. Bug: 310528686 Test: m blueprint_tests Change-Id: I689b23efccb7be61980e791e185fcef28a76d9bc
2023-11-07Add check for unwanted_transitive_deps Jooyung Han
apex.unwanted_transitive_deps can break the APEX when any of listed deps is actually needed. To avoid that, a new validation is added to see if "unwanted" deps are actually not used by any ELF files in the APEX. The new validation runs only for non-test apexes with unwanted_transitive_deps set because test apexes can be broken intentionally. Bug: 295593640 Test: m com.android.virt Change-Id: I29a3f7ef76b59594a08cfacca4811f16bf7172cc
2023-10-30Rewrite how to generate apexkeys.txt Jooyung Han
Instead of listing all apexes in the source tree, now each apex emits its own fragment for apexkeys.txt, which is pointed by LOCAL_APEX_KEYS_FILE. Makefile collects apexkeys.txt from installed apex files. This is to avoid listing unrelated apexes (not installed, testdata, unexported namespaces, etc.) Bug: 304914238 Test: m apexkeys.txt Test: m blueprint-tests Change-Id: Iefbe6e486cb418955584ad1a282455307e90be95
2023-09-22Use assemble_vintf output for vintf fragments in APEX Jooyung Han
With aosp/2681229, assemble_vintf modifies the input, instead of checking. APEX should use the output of assemble_vintf instead of running it as validation. Bug: 299034304 Test: m Change-Id: I9446908e1df85b4f3f89d29ebe9cace3982d7757
2023-09-08apex: validate vintf fragments in vendor APEX Jooyung Han
In Make, vintf fragments are checked with assemble_vintf. Since vendor APEXes can have vintf fragments, perform the same check with vintf fragments in APEX. Bug: 299034304 Test: m test.bad2.com.android.hardware.wifi (should fail if its module type is `apex`) Change-Id: I2f9ed50066b9b499b3562bfa51214c1e375d5747
2023-09-08apex: invoke `conv_linker_config validate` as validation Jooyung Han
`conv_linker_config validate` command is used to validate the linker configuration embedded in APEX to detect common mistakes. For example, when used in APEX, linker configuration can't set provideLibs/requireLibs. For APEX, there are provideSharedLibs/requireSharedLibs in APEX manifest for that purpose. One might make mistake by setting provideLibs in linker config. Now, when these unsupported properties are set, there'll be build-time error like: // set provideLibs key in com.android.art's linker config. $ m com.android.art ...image.apex/etc/linker.config.pb: provideLibs is set. Use provideSharedLibs in apex_manifest Bug: 264341796 Test: m com.android.art (see above) Change-Id: Ibaf7322616ad333569e6d721680f3d72243402a2
2023-08-23apex: Remove host support Jooyung Han
Since we no longer support "zip" APEX, we don't need "host" support. For example, we don't need go/python binary support. Bug: 279835185 Test: m Change-Id: I6e8d2b205e42662f31866dc9ac7507524effd144
2023-08-23apex: Remove 'zip' apex support Jooyung Han
zip apex is no longer supported. Bug: 279835185 Test: m Change-Id: I651b0dc4e0efe766f61e97b1e5dd263e0ab74102
2023-06-21Remove "flattened" apexes Jooyung Han
Now soong doesn't build "flattened" apexes. Bug: 279835185 Test: m nothing (soong tests) Test: m && launch_cvd (cuttlefish) Change-Id: Id3c540ece1a15cecacc185da9aa17285edd2f493
2023-06-07Merge "vendor apex: label apex_manifest as vendor_apex_metadata_file" Jooyung Han
2023-06-06add variant_version property to apexBundle Sam Delmerico
This property allows modifying the variant version that is put into the APEX manifest. Bug: 285138555 Change-Id: I42b8c0ddad8822a0a329e99ec4ec62f8c3546ee9
2023-06-02vendor apex: label apex_manifest as vendor_apex_metadata_file Jooyung Han
Since vendor APEXes are installed in vendor partition, there shouldn't be system_file according to Treble. Instead, we can force-label / and /apex_manifest.pb as vendor_apex_metadata_file so that apexd (and other system components) can still read them. Bug: 285075529 Test: m nothing (soong test) Change-Id: Idb36b8c4c68b29e2235dbda38ee323d4b781e1d5
2023-04-27Merge "Run apex_sepolicy_test for supported fs_type" Jooyung Han
2023-04-26Run apex_sepolicy_test for supported fs_type Jooyung Han
For now ext4 is the only supported fs_type. Bug: 279689445 Test: m apex.apexd_test_erosf Test: m apex.apexd_test_f2fs Change-Id: Idd1b2e61e25110da6d3805b082195e6ec031f573
2023-04-25Revert "apex: skip symbol files when replaced with prebuilt" Jooyung Han
This reverts commit 9551384f65eb77e43afbe3408d5437ce91804edd. 5bedfee4484a8786ccd761212057f8aac9a02eb7 is a better solution for the same problem. Bug: 279247159 Test: m checkbuild (presubmit) Change-Id: Ifd3117a4450b5275c09258d1ce896adb41a75158
2023-04-21Remove deps from Soong intermediate to symbols Inseob Kim
These should be handled by Makefile dependency (LOCAL_REQUIRED_MODULES). Bug: 278832320 Test: build and see symbol files Change-Id: I80ad9d8e7e8384e2ae3537cc681bc1d1b327d04c
2023-04-17apex: skip symbol files when replaced with prebuilt Jooyung Han
Apexer rule with symbol files causes "no build rule" error when the apex is replaced with prebuilt. Bug: 251299786 Test: m checkbuild (presubmit) Change-Id: I7390f72c321beaeb49fcee4e02a219c07f184664
2023-04-07Run apex_sepolicy_tests Jooyung Han
.. as a validation for apex. apex_sepolicy_tests checks the contents of the apex against precompilec_sepolicy. This is to avoid common mistakes in file_contexts. For example, etc/vintf directory should be read-able by servicemanager. Bug: 267269895 Test: m com.google.cf.wifi (with wrong file_contexts entry) Change-Id: Ic363345df43e5b2108b07de787f5f6817bbe6af4
2023-03-27Merge "Revert "Sort canned fs_config lines to facilitate comparison with ↵ Maciej Żenczykowski
Bazel-built APEXes""
2023-03-27Revert "Sort canned fs_config lines to facilitate comparison with ↵ Maciej Żenczykowski
Bazel-built APEXes" This reverts commit d6322939f70bda254ed2fdd640796aba7b2af44d. Reason for revert: breaks custom canned_fs_config Bug: 275209284 Signed-off-by: Maciej Żenczykowski <maze@google.com> Change-Id: I70756af42cbfbc8a1e80894f1bdaa9f4c5cba9e8
2023-03-22Update min_sdk_version from SdkSpec to ApiLevel Spandan Das
This relands aosp/2457063. The original change broke T and U since those branches still contain soong modules of type (kind+level). Those soong modules have been cleaned up now Test: Used go/abtd to test T and U branches with this change Bug: 208456999 Change-Id: I0ef7933c055f88cb512a02108f1173e51156ef1c
2023-03-21Revert "Update min_sdk_version from SdkSpec to ApiLevel" Spandan Das
Revert submission 2457063 Reason for revert: Broken udc-dev Reverted changes: /q/submissionid:2457063 Change-Id: Id6349fc1318877044af713c914a0afd437d3d2d5