Commit Graph

83214 Commits

Author SHA1 Message Date
Jihoon Kang
00d405099c Merge "Modify extractStubsSourceInfoFromDep to respect RELEASE_HIDDEN_API_EXPORTABLE_STUBS flag" into main 2024-06-25 23:00:00 +00:00
Jihoon Kang
2a26b1326b Modify extractStubsSourceInfoFromDep to respect RELEASE_HIDDEN_API_EXPORTABLE_STUBS flag
Currently, extractStubsSourceInfoFromDep always return the "everything"
stub artifacts. This change modifies such behavior so that the
"exportable" artifacts are set when
`RELEASE_HIDDEN_API_EXPORTABLE_STUBS` build flag is set to true.

Test: m nothing --no-skip-soong-tests
Bug: 348370901

Change-Id: I1cf0ff7a63c8a580c3553a817ca303d6e8734a2a
2024-06-25 22:24:42 +00:00
Treehugger Robot
94a6824c99 Merge "Utilize linter artifacts of the impl library in the top level sdk library" into main 2024-06-25 22:18:51 +00:00
Jihoon Kang
629e2a3e9a Utilize linter artifacts of the impl library in the top level sdk library
When creating the lint reports for the mainline modules, the apex
build rule collects the lint artifacts from its dependencies. The
artifacts for Java modules are collected using the two methods:
- `JacocoReportClassesFile()`
- `LintDepSets()`

https://r.android.com/3079425 has removed the compilation actions from
the top level sdk library, but given that BCPF and SSCPF still list the
top level sdk library as the dependency, the lint artifacts are
collected from the top level sdk library. The aforementioned change
resolved this discrepancy by the top level sdk library referencing the
build artifacts of the implementation library.

However, `LintDepSet()` was mistakenly left out, leading to the lint
xml file of the sdk library not being correctly included in the apex
lint artifacts. This change fixes such discrepancy by the top level sdk
library correctly referencing the lint dep set output of the
implementation library.

Bug: 339267677
Test: TARGET_RELEASE=ap3a TARGET_BUILD_VARIANT=userdebug
PRODUCT=mainline_modules_x86_64 MODULE_RELEASED_PLATFORM=U
COVERAGE_MODULES="configinfrastructure"
./vendor/google/build/build_unbundled_coverage_mainline_module.sh \
inspect ninja command and verify that the lint xml files of the impl lib
is included in com.android.configinfrastructure module lint-report-xml.zip

Change-Id: I5c397c8782bad3bc21524f9ef7991cfdda4cdda1
2024-06-25 20:47:49 +00:00
Treehugger Robot
51fc67bd20 Merge "Cleanup more bazel code" into main 2024-06-25 19:24:12 +00:00
Cole Faust
487b144fe0 Cleanup more bazel code
Bug: 315353489
Test: m nothing --no-skip-soong-tests
Change-Id: I6c6b4fcd559f4a45b1a96c70cbb5d6d1a615ccff
2024-06-25 11:02:38 -07:00
Joe Onorato
c870a75fe1 Merge "RBE is only supported when the host is linux, so don't try on others." into main 2024-06-25 17:58:35 +00:00
Wei Li
af64ca9322 Merge "Export Soong modules and build a database from metadata from Make and Soong." into main 2024-06-25 04:19:46 +00:00
Justin Yun
8a7978cb16 Call InstallFile to install files in soong built filesystem
platform_compat_config modules install files in `system/etc`, but the
files are missing from the soong-defined system image.
Calling InstallFile solves the problem.

Bug: 339133685
Test: m aosp_cf_system_x86_64
Change-Id: I46d5e75424a85108d0b478e4f0143f16ee26b53e
2024-06-25 09:40:30 +09:00
Wei Li
a1aa297518 Export Soong modules and build a database from metadata from Make and Soong.
Bug: 324465531
Test: CIs
Test: m compliance-metadata.db
Change-Id: Ia1c9ab0ae874dd47969555ddbfb93405b57a651f
2024-06-24 17:20:59 -07:00
Zi Wang
b651aaaf9e Merge "Add OutputFilesProvider support for singleton" into main 2024-06-24 22:13:42 +00:00
Joe Onorato
86f50e752e RBE is only supported when the host is linux, so don't try on others.
Bug: 343589123
Test: m and verify
Change-Id: I872d36a40c980f58c5de2598c3fb5dcfcadabf4f
2024-06-24 14:28:25 -07:00
Spandan Das
79035fa842 Merge "Declare the implicit outputs for r8RE" into main 2024-06-24 20:18:16 +00:00
mrziwang
0cbd3b0e79 Add OutputFilesProvider support for singleton
This CL also changes to use OutputFilesProvider on rust module, which
has singleton involved.

Test: CI
Bug: 339477385
Bug: 348494466
Change-Id: Idc5c0fb9f8425f09184d5b73531ee3052e5a076c
2024-06-24 11:55:47 -07:00
Spandan Das
d447bbbae5 Declare the implicit outputs for r8RE
The implicit outputs created by r8 (e.g. art profile) was added to the
non RE rule, but not to the RE one.

Test: Created a go/abtd run with SystemUI profile guided dexpreopt
https://android-build.corp.google.com/builds/abtd/run/L92900030004716290
Test: Verified that the .odex size of SystemUI on RE builds matches non
RE builds
https://screenshot.googleplex.com/6kLCXdBzzVWW3s8

Change-Id: Ie03a7f7896170b36ce83360eaf260cd3765a3fd7
2024-06-24 18:43:27 +00:00
Jihoon Kang
79b0eef5a1 Merge "Move vendor and product variant generation logic from cc package to android package" into main 2024-06-21 18:16:31 +00:00
Roland Levillain
cd2604b0eb Update Blueprint link in README.md to point to Android's version.
Change-Id: If6226e74f2d53658fceb8e5a4083745d2ecea140
2024-06-21 16:24:01 +00:00
Jihoon Kang
47e918450f Move vendor and product variant generation logic from cc package to android package
Although image variation generation logic has moved out of cc package to
the android package, the vendor and product partition variants
generation logic is still specific to cc package. Therefore, in order to
create a product or vendor variant, they have to specified in
`ExtraImageVariants`. In order to avoid such confusing behaviors and
enforce modules to specify product and vendor installation rules, this
change moves the vendor and product variant generation logic to
android.ImageInterface.

Test: m nothing --no-skip-soong-tests && diff contents of out/soong/Android-{product}.mk
Change-Id: I9e14f3739d9dea94167ee6a91e92b2f942055aba
2024-06-21 07:45:09 +00:00
Cole Faust
1c74ac54a8 Merge "Allow soong config variables to be boolean-typed" into main 2024-06-21 01:21:25 +00:00
Treehugger Robot
14a77d3a7f Merge "Minor cc_cmake_snapshot touch-ups" into main 2024-06-20 23:58:00 +00:00
Tomasz Wasilczyk
2493fcc7b5 Minor cc_cmake_snapshot touch-ups
- Partial support for arm64 hosts (no prebuilts yet)
- Replace incorrect template function use MATCHES with STREQUAL
- Add more ignored system libs
- No need to explicitly add libc++ prebuilt

Bug: 285204695
Test: m binder_sdk
Change-Id: Id6508cc9f9ee6328c95c2821c325629f84eda138
2024-06-20 15:30:09 -07:00
Cole Faust
46f6e2f1aa Allow soong config variables to be boolean-typed
So that you can use `true` instead of `"true"` in select expressions.

Bug: 323382414
Test: m nothing --no-skip-soong-tests
Change-Id: I950bd8e04f8fab5187ea5075514d476227943f33
2024-06-20 14:59:10 -07:00
Zi Wang
fe658ac53a Merge "Allow module gets its own output files using non-empty-string tag" into main 2024-06-20 21:07:52 +00:00
Treehugger Robot
e28ee78351 Merge "Add --tag argument to soongdbg" into main 2024-06-20 19:10:34 +00:00
Zi Wang
66c8090a3a Merge "Use OutputFilesProvider on python_binary_host" into main 2024-06-20 18:20:17 +00:00
Zi Wang
c48c1b5721 Merge "ExportableModule no longer implements OutputFileProducer" into main 2024-06-20 18:09:24 +00:00
Joe Onorato
250c551a26 Add --tag argument to soongdbg
The --tag argument will filter the dependencies to just the given deptags
as it walks the graph.

Test: soongdbg deps --tag android/soong/android.defaultsDependencyTag framework-minus-apex
Test: soongdbg between --tag android/soong/android.defaultsDependencyTag framework-minus-apex framework-minus-apex-defaults
Change-Id: I566477ffcd9d5e4b3e57155f65e84999e4908c79
2024-06-20 11:05:17 -07:00
Treehugger Robot
50d40cbc8c Merge "Remove an out of date comment." into main 2024-06-20 17:47:15 +00:00
Spandan Das
3ee19697d5 Add unit test for sdk library permission xml file
Followup to the fix in https://r.android.com/3137737. This adds a unit
test to check the permission xml file contents of sdk library. This file
contains the on-device location of the sdk implementation library.
override/overridden apexes are installed in the same location, so the
on-device sdklibrary path should remain consistent in the xml files of
the override and overridden apexes.

Test: go test ./apex
Bug: 346486531
Change-Id: I61adbf94bdfce8aa89de89cc90b6f564f2f7417f
2024-06-20 17:36:54 +00:00
mrziwang
4295359c12 Allow module gets its own output files using non-empty-string tag
Test: CI
Bug: 339477385
Change-Id: I332c377ad59d9355cb44ee18b85a56e37580e7b6
2024-06-20 10:02:26 -07:00
Elliott Hughes
b3b05ba84d Remove an out of date comment.
libandroid_support no longer exists.

Change-Id: I6e66f3e0fd5c58bff3c91563a33e0afc8614488c
2024-06-20 16:34:19 +00:00
mrziwang
9e7127ff3b Use OutputFilesProvider on global_compat_config
In the context of incremental soong, the output files
inter-module-communication will be through OutputFilesProvider.
The OutputFileProducer interface will be deprecated.

Test: CI
Bug: 339477385
Change-Id: I6deb4a005876848f28a5b823a712d9eea33a44e6
2024-06-20 16:20:06 +00:00
mrziwang
e7ec89e0a9 ExportableModule no longer implements OutputFileProducer
multitree.ExportableModule no longer implements
android.OutputFileProducer

In the context of incremental soong, the output files
inter-module-communication will be through OutputFilesProvider.
The OutputFileProducer interface will be deprecated.

ApiSurface and apexBundle are included in this change.

Test: CI
Bug: 339477385
Change-Id: I9247bb2dfed270a879f8bc96c6aa06803fde0150
2024-06-20 16:19:48 +00:00
Zi Wang
26faf1b321 Merge "Use OutputFilesProvider on cc_cmake_snapshot" into main 2024-06-20 16:18:16 +00:00
Zi Wang
9b3fba9b0b Merge "Use OutputFilesProvider on sdk" into main 2024-06-20 16:17:49 +00:00
Victor Chang
abf841134f Merge "Allow java, java. and jdk.* package_allowed_list.txt." into main 2024-06-20 09:32:44 +00:00
Victor Chang
9fc907642b Merge "Allow jdk.internal.event / .vm in the boot image" into main 2024-06-20 08:48:26 +00:00
Pechetty Sravani
f80ffa8b86 Merge "Revert "Enable -Wfortify-source"" into main 2024-06-19 13:15:28 +00:00
Pechetty Sravani
55748021b0 Revert "Enable -Wfortify-source"
This reverts commit 25e9e900f1.

Reason for revert: Droidmonitor triggered revert due to build breakage in b/348142863. Will be verifying through ABTD before submission.

Change-Id: Ia18f83e9261e395cf5f76669523bd6f4a5e9ba49
2024-06-19 11:47:27 +00:00
Maciej Żenczykowski
d957a9bd70 Merge "Enable -Wfortify-source" into main 2024-06-19 10:09:21 +00:00
Paul Duffin
94811f3031 Merge "Support passing multiple --migrate-nullness option for java_api_library" into main 2024-06-19 09:48:09 +00:00
Treehugger Robot
c0cbb491d5 Merge "Use BaseApexName to generate permission file for sdk library" into main 2024-06-19 04:29:18 +00:00
Spandan Das
33bbeb243f Use BaseApexName to generate permission file for sdk library
Permissions of apex variants of shared java sdk libraries should use the
base apex name (com.android.foo) and not the override apex name
(com.mycompany.android.foo). The override apex name started being used
when separate variants were created for override apex transitive deps
(https://r.android.com/3083813)

Bug: 346486531
Test: m com.google.android.ipsec
Test: verified that
out/target/product/<product>/apex/com.google.android.ipsec/etc/permissions/android.net.ipsec.ike.xml
contains /apex/com.androiqd.ipsec/javalib/android.net.ipsec.ike.jar #
previously it contained com.google.android.ipsec

Test: https://android-build.corp.google.com/builds/abtd/run/L59900030004679761
Change-Id: I863170d78efa017bef5e4ece3b1471f74ba84b0c
2024-06-19 04:27:43 +00:00
Inseob Kim
9687618816 Merge "Add build_prop soong module" into main 2024-06-19 03:26:37 +00:00
Treehugger Robot
d3b519fc30 Merge "Update Bindgen Clang to clang-r522817" into main 2024-06-19 03:14:00 +00:00
Yu Liu
88f4e331cc Merge "Experimental code to support build action caching." into main 2024-06-19 01:57:12 +00:00
LaMont Jones
d2021e3f31 Merge "Add RELEASE_ACONFIG_EXTRA_RELEASE_CONFIGS" into main 2024-06-19 01:48:53 +00:00
Inseob Kim
2da72af53a Add build_prop soong module
build_prop is a soong module generating {partition}/build.prop. It's
ported from build/make/core/sysprop.mk and will replace sysprop.mk in
the future. Currently used only by Android.bp cuttlefish system image.

Bug: 322090587
Bug: 346214958
Test: compare system/build.prop and aosp_cf_x86_64_system-build.prop for
      eng / user / userdebug
Change-Id: Iad76139fe86ec4f582218c185aa15baeacaa38dc
2024-06-19 10:42:07 +09:00
LaMont Jones
21d04d99c8 Add RELEASE_ACONFIG_EXTRA_RELEASE_CONFIGS
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-18 17:16:42 -07:00
Yu Liu
fa29764f9f Experimental code to support build action caching.
Bug: 335718784
Test: build locally
Change-Id: Icc1f1fb15f9fe305e95dd51e2e7aff1e9cbf340c
2024-06-19 00:09:32 +00:00