Add ApexInfo.RequiresLibs to mixed build handler for apex

Adding ApexInfo.RequiresLibs from Bazel to apexBundle.requiredDeps which is eventuallyread by apex androidmk writer for LOCAL_REQUIRED_MODULES to ensures the libs are installed as part of a bundle build.

In Soong, apexBundle.requiredDeps is set in
https://cs.android.com/android/platform/build/soong/+/master:apex/apex.go;l=2305-2323;drc=cb7e73bc0130a95f5991c925c349387185abc098

The same logic is replicated in Bazel at
https://cs.android.com/android/platform/build/bazel/+/master:rules/apex/cc.bzl;l=141-163;drc=cb7e73bc0130a95f5991c925c349387185abc098.

This CL is porting the required libs set by Bazel in mixed build.

Test: go test
Test: run build/bazel/ci/mixed_libc.sh
Bug: 215500321
Change-Id: Id7256d279ac09a8fd42db391a7e93ce0021d8345
This commit is contained in:
Vinh Tran
2022-12-14 11:34:54 -05:00
parent ccfe6022d4
commit b6803a5f52
3 changed files with 15 additions and 1 deletions

View File

@@ -458,6 +458,11 @@ func bp2buildModuleLabel(ctx BazelConversionContext, module blueprint.Module) st
return fmt.Sprintf("//%s:%s", moduleDir, moduleName)
}
// ModuleFromBazelLabel reverses the logic in bp2buildModuleLabel
func ModuleFromBazelLabel(label string) string {
return strings.Split(label, ":")[1]
}
// BazelOutPath is a Bazel output path compatible to be used for mixed builds within Soong/Ninja.
type BazelOutPath struct {
OutputPath