Fix bp2build's stub/impl selection logic for platform variants

For a dependency edge A --> B (stublib), Soong will link A's platform
variant against impl of B's platform variant if either of these are true
1. A and B have same apex_available
2. B has bootstrap: true
3. B is only available to platform

(3) was missing from bp2build. This CL adds that.

To implement this, we check the `apex_available` property of B.

Test: updated bp2build tests
Test: Built the internal module b/299191635 that was failing due to this
Bug: 299191635
Change-Id: Iafb173a3ab20d69b89f7949ce40c6f4096396f24
This commit is contained in:
Spandan Das
2023-09-06 22:07:15 +00:00
parent 2f681324c2
commit f7bae9ab3e
3 changed files with 6 additions and 6 deletions

View File

@@ -661,7 +661,7 @@ cc_library_shared {
":libapexfoo_stable",
],
"//build/bazel/rules/apex:system": [
"@api_surfaces//module-libapi/current:libplatform_stable",
":libplatform_stable",
"@api_surfaces//module-libapi/current:libapexfoo_stable",
],
"//conditions:default": [