Commit graph

58924 commits

Author SHA1 Message Date
Kris Alder
38e14242fe Merge "add ../../lib to rpath for vendor fuzz targets" 2022-11-03 16:09:51 +00:00
Colin Cross
a493e5ff91 Merge "Add support for per-arch configuration in apex_defaults" 2022-11-03 14:00:45 +00:00
Yabin Cui
7c49429eb2 Merge "symbol_inject: add linkerSigned flag in codesign of Mach-O binaries." 2022-11-03 03:57:59 +00:00
Usta (Tsering) Shrestha
9478303673 Merge "add test for ShouldKeepExistingBuldFileForDir()" 2022-11-03 02:44:08 +00:00
Colin Cross
a3599abc75 Merge "Add exclude_* properties to apex arch-specific properties" 2022-11-03 01:01:05 +00:00
Ibrahim Kanouche
2d1eb1238d Merge "Export SBOM utility to make" 2022-11-03 00:03:21 +00:00
Treehugger Robot
95a3752ab1 Merge "cc_fuzz targets depend on fuzz_interceptors for HWASan builds" 2022-11-02 21:57:20 +00:00
Yabin Cui
e79fe01c59 symbol_inject: add linkerSigned flag in codesign of Mach-O binaries.
With linkerSigned flag, codesign will still be valid after stripping.

Bug: 251222821
Test: build aapt2 and both non-stripped and stripped version work.
Change-Id: Ic3a2b9fcaf30eb306fed7db6568f6699cc640cde
2022-11-02 14:32:53 -07:00
Colin Cross
70572ed01e Add exclude_* properties to apex arch-specific properties
The libcronet prebuilt JNI library doesn't exist for riscv64 yet.
Add exclude_* properties to apex arch-specific properties so that
the libcronet dependency can be excluded from the apex that contains
when the arch is riscv64 until it exists for riscv64.

Test: TestApexWithArch
Change-Id: Ic395a077824f0f60b90178530fbfae8a96b3782f
2022-11-02 14:31:46 -07:00
Usta Shrestha
342f28f9bf add test for ShouldKeepExistingBuldFileForDir()
Bug: N/A
Test: Added
Change-Id: I15dc543f65bffdd745ecfe5c8fe521723eeffbc0
2022-11-02 17:21:41 -04:00
Kris Alder
c263481f28 add ../../lib to rpath for vendor fuzz targets
For "normal" fuzz targets, the binary goes in
/data/fuzz/<arch>/<fuzzer_name>/fuzzer_name>
with libraries in
/data/fuzz/<arch>/lib/

If 'vendor: true' is set, the fuzz target binary get placed in
/data/fuzz/<arch>/<fuzzer_name>/vendor/<fuzzer_name>.

We need an extra '..' in the rpath to link to the included libraries
correctly.

Bug: 254723623
Test: built libsrtp2-fuzzer, checked linking with ldd
Change-Id: I24282d7b252142ed795a6091fece2d56125329dc
2022-11-02 13:46:51 -07:00
Ibrahim Kanouche
5797d8c7f5 Export SBOM utility to make
Bug: 257094286

Test: m compliance_sbom
Change-Id: I2a8de6350c3a5b24cd3b3fd03312955ce1a3dba9
2022-11-02 19:17:30 +00:00
Treehugger Robot
1265bfdfbd Merge "Add .hjar output file tag" 2022-11-02 18:39:58 +00:00
Kris Alder
d406da104b cc_fuzz targets depend on fuzz_interceptors for HWASan builds
This allows us fuzzers to get coverage feedback and mutate more
intelligently based on feedback from strcmp, memcpy, and similar
functions.

Bug: 208297094
Test: make and run 'example_fuzzer', build 'haiku'
Change-Id: Ic51c207f8644cda885fb3f453cc583e2ee1e8c1d
2022-11-02 11:25:59 -07:00
Cole Faust
acf417b085 Merge "Revert^4 "Prevent unspecified values in soong_config_string_variables"" 2022-11-02 16:56:45 +00:00
Christopher Parsons
737415bb79 Merge "Flip on Bazel mixed builds by default" 2022-11-02 16:09:28 +00:00
Treehugger Robot
52eb14f6bf Merge "HACK: use arm64 prebuilts from apex sets for riscv64" 2022-11-02 09:41:11 +00:00
Lukács T. Berki
72ab470a29 Merge "Multithread symlink forest removal." 2022-11-02 07:45:22 +00:00
Colin Cross
9f09316ffc HACK: use arm64 prebuilts from apex sets for riscv64
There are no riscv64 prebuilts in apex sets, use arm64 ones for
now.

Test: lunch aosp_riscv64-userdebug && m droid dist
Change-Id: Iee2d669e01d93504642223939857634b7fd1c1ba
2022-11-01 23:16:14 +00:00
Colin Cross
cc7a5dcf44 Merge "HACK: use arm64 apex prebuilts for riscv64" 2022-11-01 22:15:07 +00:00
Treehugger Robot
da4c57c9dc Merge "Use CreateCodegenMetrics in api_bp2build as well" 2022-11-01 19:48:05 +00:00
Chris Parsons
035e03affe Flip on Bazel mixed builds by default
This turns on Bazel-assisted builds for all Soong users.

If this CL breaks your build or your workflow, you may temporarily
disable Bazel mode by adding BUILD_BROKEN_DISABLE_BAZEL=1 to your
environment.

Test: TH
Test: Various off-band post-submit verification with "bazel staging
mode", which is an opt-in version of this feature.

Change-Id: Ifa44a79437ce76ea739ed661d4e2d567e0f4a4d5
2022-11-01 19:27:50 +00:00
Colin Cross
abacbe8436 HACK: use arm64 apex prebuilts for riscv64
There are no riscv64 apex prebuilts, which breaks the build when
provenance_metadata singelton tries to run a tool on all the input
apexes that don't exist.  Hack it to provide the arm64 apex for now
if no riscv64 apex is specified, which will allow the build to pass.

Test: lunch aosp_riscv64-userdebug && m droid
Change-Id: Ic39936539803615ea4b7f817daf7b59ab7c40e7e
2022-11-01 19:13:17 +00:00
Treehugger Robot
8238ae869e Merge "Add groundwork to easily all-enable bazel-mode" 2022-11-01 18:24:40 +00:00
Spandan Das
7b6d5331bd Use CreateCodegenMetrics in api_bp2build as well
The internals of CodegenMetrics was updated in aosp/2276671. Use the
new API to initialize an empty object to prevent a null pointer
exception in api_bp2uild.

Test: m api_bp2build
Change-Id: Iad9c38b9881da896171f1c6d4e49d4875acfaab8
2022-11-01 17:37:07 +00:00
Cole Faust
b0a91330bb Revert^4 "Prevent unspecified values in soong_config_string_variables"
This reverts commit b7b2e12475.

Reason for revert: Issues on -plus-aosp branches have been fixed

Change-Id: Ie2f7ce45502b999280e099d9c0f9d0f7d6b7ba08
2022-11-01 17:10:23 +00:00
Alan Stokes
73d3245e30 Fix error handling
We log an error message, but then carry on and attempt to use the invalid impl, which then panics.

Change-Id: I440cdf728cb32479a10cbaecc5aadbdd97f215de
2022-11-01 14:05:13 +00:00
Chris Parsons
b6e9690776 Add groundwork to easily all-enable bazel-mode
This will make it easy to change a "false" boolean to "true" to push
`--bazel-mode` by default for all users.

Users may disable bazel-by-default with BUILD_BROKEN_DISABLE_BAZEL, and
bazel is disabled by default on Darwin hosts (due to lack of test
coverage).

Bug: 254628592
Bug: 254084584
Test: Presubmits
Test: Presubmits for aosp/2263623
Change-Id: Iec712119e06ca8ec93028207d88277f879184cc2
2022-11-01 09:53:46 -04:00
Sam Delmerico
af9dbb30f6 Merge "move logtags rule from //build/make to //build/bazel" 2022-11-01 13:50:10 +00:00
Jingwen Chen
e647db8186 Fix --bazel-mode-staging flag.
It was assigning --bazel-mode-staging to cmdlineArgs.BazelMode, which
looks wrong.

Test: presubmits
Change-Id: I24b087977fc6861eef3a1c30e58d9bf42a344c52
2022-11-01 11:28:29 +00:00
Treehugger Robot
0b2788e833 Merge "Skip the noop Soong dep edge for api_domain and contributions" 2022-11-01 03:07:14 +00:00
Usta (Tsering) Shrestha
459eb30827 Merge "Fix collection of stale soong build metrics" 2022-11-01 02:54:19 +00:00
Colin Cross
ab50deaefd Add .hjar output file tag
Allow genrules to access the turbine header jar outputs
from java_library modules using the .hjar output file
tag.

Bug: 251871740
Test: m checkbuild
Change-Id: Ib1ec9734323a51583057fb458f791e1e0bd0d767
2022-10-31 17:17:25 -07:00
Treehugger Robot
0fc368cff7 Merge "Generate a default wrapper for device java_binary" 2022-10-31 20:13:10 +00:00
Usta (Tsering) Shrestha
3bb3763afd Merge "include symlink metrics in bp2build_metrics.pb" 2022-10-31 20:00:36 +00:00
Sam Delmerico
14f9f10a4e Merge "add comment to sync Bazel clang-tidy rules" 2022-10-31 18:55:24 +00:00
Sam Delmerico
13fbf4ac83 add comment to sync Bazel clang-tidy rules
The Bazel rules now have a separate implementation of the logic to
add flags to clang-tidy. This should be kept up to date with the Soong
implementation.

Bug: 195029134
Change-Id: I61efda081bf1627d352887b13a70d1d53944d368
2022-10-31 14:43:27 -04:00
usta
7f56eaa748 Fix collection of stale soong build metrics
Bug: b/256037411
Test: run mixed build twice and ensure soong_build_metric.pb file is absent on second run.
Change-Id: Ia11d850e1ad318e6383d8b392f20420259bc2f4d
2022-10-31 14:10:59 -04:00
Sam Delmerico
8604df6fb1 Merge "export clang-tidy variables to soong_injection" 2022-10-31 17:23:19 +00:00
Spandan Das
e1ef88c197 Merge "Assemble API surface headers before compiling rdeps" 2022-10-31 16:53:17 +00:00
Lukacs T. Berki
bc5f731791 Multithread symlink forest removal.
This is a second attempt at aosp/2273288 which got rolled back because
it turned out that:

1. We make ~120K symlinks in AOSP (!), all of which need to be deleted
2. System calls are sometimes slow
3. Golang spawns a new OS-level thread for each blocking system calls to
   keep cores busy

All this together means that we sometimes had 10K system calls in
flight, which meant 10K OS-level threads, which is when Go gives up and
says "I created too many threads, please help".

The fix is to move the system calls into a pool of goroutines, which
soon end up on a pool of threads (since they mostly do blocking system
calls)

Test: Presubmits.
Change-Id: Ia9aefff3b0ed373f09bb6c8b2ec1d8b0f00b213b
2022-10-31 16:04:13 +00:00
usta
4f5d2c1e97 include symlink metrics in bp2build_metrics.pb
Bug: b/256212479
Test: Prior to thi CL bp2build.symlink_forest event was missing in bp2build_metrics.pb after a clean mixed build
Change-Id: I53bfc4114a383c0d1f9c4c7945e7d4c69bc50b0c
2022-10-31 11:38:10 -04:00
Sam Delmerico
2b8462997a Merge "add clang_tidy properties to bp2build" 2022-10-31 14:49:21 +00:00
Alix Espino
35ac313c32 Merge "Bp2build Java libs for java_binary -> java_import edge" 2022-10-31 14:04:54 +00:00
Treehugger Robot
6ae9b508bf Merge "Don't add unused properties to android_test_import" 2022-10-31 06:57:45 +00:00
Treehugger Robot
4e9ffee4bf Merge "Move restricted_allows_dynamic_linking into LGPL" 2022-10-29 06:57:52 +00:00
Wei Li
aff9a46ca5 Merge "Support new attributes added in ApexInfo in mixed build." 2022-10-29 01:16:39 +00:00
Wei Li
32dcdf9038 Support new attributes added in ApexInfo in mixed build.
Bug: 243748589
Test: CI
Change-Id: I6c9869464fe91ebf62811d92cf4403f2c7c9e8a9
2022-10-28 14:06:57 -07:00
Alix
b4e09a0ada Bp2build Java libs for java_binary -> java_import edge
Since Bazel's java_import requires a jars attribute to be specified,
the generated neverlink-duplicated module is of type java_library

Change-Id: I14a866dfc583507a9462add50d95060cbfe540c5
Bug: 244210934
Test: m bp2build, go test ./bp2build, manual inspection of generated Build and jar files
2022-10-28 20:26:38 +00:00
Bob Badour
83a0b8f480 Move restricted_allows_dynamic_linking into LGPL
Putting the specific condition into the license_kind simplifies the
logic and prepares for a future where licenseclassifier provides
conditions without license_kinds

Bug: 245562496

Test: m droid
Change-Id: I42c26fb3096b40767a68474ed712dbe55ed3f035
2022-10-28 12:07:20 -07:00