platform_build_soong/bazel
Chris Parsons 1a7aca075b Preserve depset structure from bazel aquery
Each depset now corresponds to a phony rule which depends on other
depsets or on full paths; thus, bazel's depset structure is preserved in
the form of phony rules of name bazel_depset_{id}.

Previously, flattening and recopying large lists of file path strings
was quite inefficient. This was particularly evident as we enumerated
hundreds of clang headers for each cc compile action.

This reduces soong_build analysis time by about 30% for mixed builds.
It also reduces ninja file size by ~750MB.

Fixes: 229405615
Test: Unit tests, manually verified metrics, mixed_droid CI

Change-Id: I78df152ac1488ae0c6807afdde4b4ad5e6d26287
2022-04-28 12:44:28 -04:00
..
cquery Update cqueries for bazel rules dir rename 2022-02-10 10:26:21 -05:00
Android.bp refactor bp2build module allowlists into struct 2022-04-14 13:31:05 +00:00
aquery.go Preserve depset structure from bazel aquery 2022-04-28 12:44:28 -04:00
aquery_test.go Preserve depset structure from bazel aquery 2022-04-28 12:44:28 -04:00
configurability.go Handle the 'enabled' property in bp2build 2021-12-21 16:37:32 -05:00
constants.go refactor Bazel variable export 2022-04-06 14:48:32 +00:00
properties.go emulate java_library static_deps with Bazel exports 2022-03-30 18:58:38 +00:00
properties_test.go add unit test for bp2build allowlist 2022-04-14 13:31:09 +00:00
testing.go add unit test for bp2build allowlist 2022-04-14 13:31:09 +00:00