Commit Graph

5594 Commits

Author SHA1 Message Date
Alix Espino
e5641c51b9 Merge "bp2build java_resources that only contain a filegroup" 2023-05-26 13:59:42 +00:00
Treehugger Robot
8321c1a8fb Merge "Use hashed subdir for soong_config modules" 2023-05-26 12:50:42 +00:00
Inseob Kim
81b00a8db7 Use hashed subdir for soong_config modules
This is to differentiate soong intermediate directories for soong config
modules. This will help incremental build across different
devices.

Test result of building panther, building cheetah, and building panther
again:

Before this change
- build time: 02:57
- # of tasks: 31044

After this change
- build time: 01:48
- # of tasks: 1694

Build time includes build.ninja generating time (which is more than 1
minute), so the overriden artifacts become far fewer.

And "NINJA_ARGS='-n -d explain' m" only gave 4 "command line changed"
nodes.

Bug: 279362051
Test: see above
Change-Id: I4891cbe823ae21628465e5c6eb26a4837ccdd202
2023-05-26 18:07:05 +09:00
Anton Hansson
0c6ae56eea Merge "ensure that privapp_allowlist is installed before android_app" 2023-05-26 07:17:37 +00:00
Sam Delmerico
b1daccdc97 ensure that privapp_allowlist is installed before android_app
AndroidMk assumes that the app is the last file installed, and it uses
this assumption to populate the LOCAL_SOONG_INSTALLED_MODULE entry. This
CL moves the privapp_allowlist installation to before the app
installation to respect this assumption.

Bug: 242509786
Test: go test
Test: OUT_DIR=out.ref m nothing &&
  cp aosp/2562351 && OUT_DIR=out.change m nothing &&
  GOWORK=$PWD/build/bazel/mkcompare/go.work \
  go run android/bazel/mkcompare/cmd -json \
  <(sed -e "s/out\.ref/out/g" out.ref/soong/Android-aosp_cheetah.mk) \
  <(sed -e "s/out\.change/out/g" out.change/soong/Android-aosp_cheetah.mk)
  && verify manually that the only diffs are related to the removal of
  the prebuilt_etc module.
Change-Id: I95ec27070f575e79fb976de68493a219717ed89a
2023-05-25 18:54:06 +00:00
Alix
b29a3cd2aa bp2build java_resources that only contain a filegroup
supports filegroup that specifies path property

Bug: 280860624
Test: built libauto_value_plugin
Change-Id: I9ed0b13e055beb92ba8090f6b5e88b9873c9ce61
2023-05-24 18:21:15 +00:00
liulvping
4d11d10ce2 build: Fix bp2build panic issue
panic in top down mutator "bp2build_conversion_bp2build"
for module "foo".
reflect: call of reflect.Value.NumField on interface Value

Test: go test ./bp2build
Change-Id: I9ee460ca38a37c6a6c1a0787159fa5f38b852b55
2023-05-24 06:38:58 +00:00
Treehugger Robot
cd4e6a609e Merge "Sandbox inputs to aidl rule in cc" 2023-05-23 23:40:35 +00:00
Treehugger Robot
ea2cafe21e Merge "Run "plugins" singleton in parallel with the rest." 2023-05-23 22:01:34 +00:00
Treehugger Robot
0d149f4a4f Merge "Remove GetPythonBinary request type" 2023-05-23 21:42:31 +00:00
Vinh Tran
c1910c9e07 Merge "Support sandboxing genrule" 2023-05-23 21:29:27 +00:00
Vinh Tran
095819530a Sandbox inputs to aidl rule in cc
Bug: 279960133
Test: go test
Test: Remove hdrs prop from IDropBoxManagerService_aidl && run  BUILD_BROKEN_DISABLE_BAZEL=true m libservices && Expect an error from aidl
Change-Id: Ifdb260d8e2da9a5767f1e212393de4134b210616
2023-05-23 15:53:10 -04:00
Chris Parsons
6b49888a17 Remove GetPythonBinary request type
This has been dead code for over a year.

Fixes: 232976601
Test: m nothing
Change-Id: Ida305fc8fa61d8ac83d74ea2cf007073a0019cec
2023-05-23 17:57:38 +00:00
LaMont Jones
9b44c2a725 Run "plugins" singleton in parallel with the rest.
This completes the changes in aosp/q/topic:"parallel-singletons".

(cherry picked from commit 30bf7fe32d)

Bug: 281536768
Test: manual, presubmits
Change-Id: I6529e957fbcca6c18441f823a00061db7556e303
2023-05-23 17:57:00 +00:00
Treehugger Robot
1befe407a1 Merge "Revert "Revert "Restrict plugins to an existing allowlist""" 2023-05-23 17:08:46 +00:00
Treehugger Robot
04a1809d2a Merge "Handle missing dependencies in mixed builds" 2023-05-23 16:07:01 +00:00
Liz Kammer
c13f785061 Handle missing dependencies in mixed builds
Bazel will fail on queries with missing dependencies. Instead, we check
for missing dependencies in mixed builds and we fall back to Soong when
we are aware of missing dependencies in a module.

Test: go test soong tests
Change-Id: I4f83752704970d8b43650d5b55ff35799c7bc625
2023-05-23 12:14:02 +00:00
Yu Liu
6a7940cc99 Support sandboxing genrule
Bug: 281067655
Test: local build
Change-Id: I123b5e51eaf1476d1215e5208331b6540d45fd98
2023-05-22 15:02:36 -07:00
Treehugger Robot
47514686b9 Merge changes from topic "parallel-singletons"
* changes:
  Parallelize singleton execution
  android: Allow running some singletons in parallel.
2023-05-22 16:40:16 +00:00
Jihoon Kang
d056a91b82 Merge "Generate java_api_library from java_sdk_library" 2023-05-20 05:10:11 +00:00
LaMont Jones
0c10e4dcc0 Parallelize singleton execution
Bug: 281536768
Test: manual, presubmits
Change-Id: I57fdc76ba6b277e88e196b506af87127a530fd37
2023-05-19 20:31:32 +00:00
LaMont Jones
e59c0db536 android: Allow running some singletons in parallel.
Many of the singletons are trivial and can be run in parallel, improving
the performance during analysis.

Bug: 281536768
Test: manual, presubmit
Change-Id: I989333e2ff3fe71783601f27bf5e0732a1b4ea61
2023-05-19 18:01:35 +00:00
Usta Shrestha
6e5a5b18ee bp2build allowlist expanded
Bug: 282160334
Test: ran bp2build.sh
Change-Id: I354ded2cd4d2e9c89dc67ca8b9fdddd1c660ffa2
2023-05-19 16:45:56 +00:00
Jihoon Kang
1c92c3e092 Generate java_api_library from java_sdk_library
This change enables java_sdk_library to generate java_api_library
modules per api surface, so that from-text stubs can be generated per
api domain scope. This module is only created when
`--build-from-text-stub` flag is passed during build.

Test: enable disabled modules in java/core-libraries/TxtStubLibraries.bp then m art.module.public.api.stubs.from-text --build-from-text-stub
Bug: 276957733
Change-Id: Ic1ead15b3d0bcb921ca8d31bcaeeb4cd9ee8715c
Merged-In: Ic1ead15b3d0bcb921ca8d31bcaeeb4cd9ee8715c
2023-05-19 06:07:37 +00:00
Liz Kammer
33cc80eb1f Revert "Revert "Restrict plugins to an existing allowlist""
This reverts commit b20a12553e.

Reason for revert: Rollforward with fix

soong-ca-certificates-apex was missing from allowlist

Test: verify fixes CI breakages
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:dfe4a9e4dd088f42ba5e0a3c4f7777c253d378d3)
Merged-In: I00687bd2962dbdaaf55189ca4aa82183264eb8d7
Change-Id: I00687bd2962dbdaaf55189ca4aa82183264eb8d7
2023-05-18 18:20:28 +00:00
Sam Delmerico
3402c0ad44 re-add swcodec payload to mixed staging allowlist
Bug: 279756270
Test: m
Test: forrest
Change-Id: I3305c1bd9388b326fdecb5d333c07cf653d310d8
2023-05-17 20:49:39 -04:00
Treehugger Robot
a2244043ea Merge "Allowlist libservices" 2023-05-17 17:51:05 +00:00
Treehugger Robot
3daa129afa Merge changes from topic "adbd_host"
* changes:
  Allowlist python dependency of adb targets
  bp2build support for host_ldlibs
2023-05-17 05:23:21 +00:00
Spandan Das
b3d5c48cad Allowlist python dependency of adb targets
Bug: 216626461
Test: TH
Change-Id: I4f16ce0037dd7afdf194e210ce63bfc60bd73cc1
2023-05-16 22:44:52 +00:00
Spandan Das
9aa6a49ca1 Merge "Allowlist aidl" 2023-05-16 22:30:23 +00:00
Vinh Tran
320aecfbc8 Allowlist libservices
Test: CI
Change-Id: I6e7a969228ca491344520bba0d66159d5060e996
2023-05-16 16:08:28 -04:00
Joe Onorato
9f96a17653 Merge "Aconfig rules" 2023-05-16 02:49:46 +00:00
Jingwen Chen
be981e5e07 Merge "Move disable downloads to bazelrc from mixed build" 2023-05-15 22:50:13 +00:00
Joe Onorato
fee845a737 Aconfig rules
Test: m services_device_config (which runs sooong tests too)
Change-Id: I432e914d01d2bff77ba68de65ae5baea527090f5
2023-05-13 11:32:25 -07:00
Liz Kammer
197fd16582 Merge "Clear out allowlist to get CI green" 2023-05-12 14:29:12 +00:00
Liz Kammer
3c226ffbd2 Clear out allowlist to get CI green
Test: 282042844
Change-Id: I9437b9c08402e913a0a6ee9c6ed453332fe04fa9
2023-05-12 08:49:54 -04:00
Liz Kammer
e7a4712ec9 Add missing package to allowlist
Test: CI
Change-Id: I15b95dd8a0acbde89f0a9f2033d8ea9c904b65fc
2023-05-12 08:44:51 -04:00
Jingwen Chen
379221f086 Move disable downloads to bazelrc from mixed build
Keeps mixed builds and b consistent.

Bug: 275724420
Test: presubmits, especially bp2build-incremental
Change-Id: I89942111f259bf9a88c27e124adbdb73936c514c
2023-05-11 13:30:59 -04:00
Spandan Das
ebbea2a8c9 Allowlist aidl
Test: b build //system/tools/aidl

Change-Id: I3ddca72343822acf0a3d581061b32a37da6e1790
2023-05-11 01:12:03 +00:00
Cole Faust
069812158f Merge "Bp2build support for soong config variables + os" 2023-05-10 21:28:02 +00:00
Romain Jobredeaux
ea48fdc6f8 Merge "Map prebuilt_apis labels to Bazel's manually generated ones." 2023-05-10 18:23:51 +00:00
Treehugger Robot
f47760461c Merge "Change bp2build converter of module "package"." 2023-05-10 17:38:19 +00:00
Wei Li
2c9e8d6128 Change bp2build converter of module "package".
1) Use attribute name "default_package_metadata" instead of
   "default_applicable_licenses" in packages to better describe its use.
2) Add a filegroup "default_metadata_file" in packages to search for
   METADATA file in each package.
3) Include "default_metadata_file" in each package's
   "default_package_metadata" attribute.

Bug: 275472038
Test: CIs
Change-Id: I645c013c39e3190fd96c4a549d39a331aced16bd
2023-05-09 17:37:04 -07:00
Cole Faust
150f9a5a63 Bp2build support for soong config variables + os
For converting the art plugins to pure soong, it would be useful to
have a property that's qualified on both a soong config variable and
the OS. Soong had very little-known support for this by saying your
soong config variable changes the "target.android.cflags" property,
and we didn't supporting bp2building that. Add the bp2build support.

This cl also refactors product variable and soong variable bp2building
so that they're separate from each other, which I think makes the code
easier to understand.

Test: go test
Change-Id: Ic74dc75da8103fa2523da95c3560c9ce3c5e5672
2023-05-08 17:50:06 -07:00
Jiakai Zhang
cf61e3c591 Revert^2 "Generate app profiles even if dexpreopt is disabled."
Revert submission 2580631-revert-2574032-XXTWCJDTDQ

Reason for revert: Fixed build breakages

Reverted changes: /q/submissionid:2580631-revert-2574032-XXTWCJDTDQ

Bug: 280440941
Test: lunch aosp_cf_riscv64_minidroid-userdebug && m UNSAFE_DISABLE_HIDDENAPI_FLAGS=true dist
Test: Disable dex2oat on host (to simulate macOS) and build
Change-Id: I6090b4b74cedb6d129fcbeef58d075c8ccdcc4e2
2023-05-08 21:29:23 +01:00
Romain Jobredeaux
8242b43df8 Map prebuilt_apis labels to Bazel's manually generated ones.
Change-Id: I5bec807da9b39e2b166af1bd83da43df91f997ef
Bug: 237810289
Test: check that android-non-updatable.stubs.module_lib uses manual
bazel target for its sdk_system_current_android dependency

Change-Id: I6f5fb348e1dcaad10eb756382359f34de792b6e0
2023-05-08 15:26:43 -04:00
Treehugger Robot
7ef8d46640 Merge "Prebuilt replacing source should not change partition" 2023-05-08 05:40:40 +00:00
Wei Li
773e098dfd Merge "Export some make variables to Bazel through product variables." 2023-05-05 17:32:20 +00:00
Qiao Yang
7081aaf874 Merge changes from topic "revert-2574032-XXTWCJDTDQ"
* changes:
  Revert "Generate boot image profiles even if dexpreopt is disabled."
  Revert "Generate app profiles even if dexpreopt is disabled."
2023-05-05 16:43:45 +00:00
Qiao Yang
3d08c388b9 Revert "Generate app profiles even if dexpreopt is disabled."
Revert submission 2574032

Reason for revert: DroidMonitor-triggered revert due to breakage <https://android-build.googleplex.com/builds/quarterdeck?branch=aosp-master&target=aosp_cf_riscv64_minidroid-userdebug&lkgb=10069333&lkbb=10075041&fkbb=10071083>, bug <b/280902279>

Reverted changes: /q/submissionid:2574032

Change-Id: Ia9d05f3b7439604eb4a4b4100f46879fe11f5820
BUG: <280902279>
2023-05-05 15:03:24 +00:00