platform_build_soong/bp2build
Liz Kammer 2ada09a546 Don't create a new module for bp2build conversion.
A performance improvement for bp2build as Blueprint/Soong no longer have
the overhead of additional modules. The creation of these modules
results in:
* traversal of additional modules for each subsequent mutator
* synchronization over a go channel to collect newly created modules:
https://cs.android.com/android/platform/superproject/+/master:build/blueprint/context.go;l=2594,2600;drc=1602226f23181b8c3fbfcaf3358f0297e839d7d3

We avoid both of these by storing the information directly in the
underlying module.

Also as a fringe benefit, removes some necessary boilerplate for
conversion.

For benchmarks, reduces runtime ~1% for 1% converted, ~24% for 100%
converted. See more: go/benchmarks-for-https:-r.android.com-1792714

Test: ran benchmarks/tests in bp2build
Test: build/bazel/ci/bp2build.sh
Change-Id: Ie9273b8cbab5bc6edac1728067ce184382feb211
2021-08-17 15:57:09 -04:00
..
Android.bp Add some initial benchmarking for bp2build. 2021-08-12 15:54:38 -04:00
android_app_certificate_conversion_test.go Add initial bp2build support for converting android_app_certificate modules. 2021-07-28 06:51:07 -04:00
androidbp_to_build_templates.go queryview: prefix internal attribute names. 2021-01-25 04:46:07 -05:00
apex_conversion_test.go Add support for prebuilts attribute to the bp2build APEX converter. 2021-07-28 06:03:17 -04:00
apex_key_conversion_test.go Add initial bp2build converter support for apex_key modules. 2021-07-28 01:45:54 -04:00
bp2build.go Direct Bazel builds from m. 2021-06-21 06:12:34 +00:00
build_conversion.go Don't create a new module for bp2build conversion. 2021-08-17 15:57:09 -04:00
build_conversion_test.go Don't create a new module for bp2build conversion. 2021-08-17 15:57:09 -04:00
bzl_conversion.go queryview: prefix internal attribute names. 2021-01-25 04:46:07 -05:00
bzl_conversion_test.go Add some initial benchmarking for bp2build. 2021-08-12 15:54:38 -04:00
cc_library_conversion_test.go bp2build: handle system_shared_libs 2021-08-09 11:41:09 -04:00
cc_library_headers_conversion_test.go Merge "Remove bp2build deps mutator" 2021-07-23 14:55:40 +00:00
cc_library_static_conversion_test.go bp2build: handle system_shared_libs 2021-08-09 11:41:09 -04:00
cc_object_conversion_test.go Merge "Remove default_shared_libs" 2021-07-23 21:18:51 +00:00
compatibility.go Direct Bazel builds from m. 2021-06-21 06:12:34 +00:00
configurability.go bp2build: handle system_shared_libs 2021-08-09 11:41:09 -04:00
constants.go Have bp2build generate BUILD.bazel instead of generating BUILD. 2021-05-18 09:01:36 -04:00
conversion.go Direct Bazel builds from m. 2021-06-21 06:12:34 +00:00
conversion_test.go Direct Bazel builds from m. 2021-06-21 06:12:34 +00:00
metrics.go Use handcrafted build targets in bp2build 2021-03-15 13:09:25 -04:00
performance_test.go Add some initial benchmarking for bp2build. 2021-08-12 15:54:38 -04:00
prebuilt_etc_conversion_test.go Add initial bp2build convert for prebuilt_etc modules. 2021-07-28 08:22:25 -04:00
python_binary_conversion_test.go Mark test helpers as helpers. 2021-05-25 14:41:43 +00:00
sh_conversion_test.go Mark test helpers as helpers. 2021-05-25 14:41:43 +00:00
symlink_forest.go Make symlink_forest.go prefer generated files. 2021-04-21 12:24:27 +02:00
testing.go Don't create a new module for bp2build conversion. 2021-08-17 15:57:09 -04:00