Enable bp2build for cc modules relying on sysprop
Bug: 244439349 Test: m bp2build Test: Inspect BUILD.bazel files Test: Unit tests Change-Id: I85bfb9fa69cb3f96b15bdbeb797dba86b3349804
This commit is contained in:
@@ -573,43 +573,14 @@ func syspropLibraryHook(ctx android.LoadHookContext, m *syspropLibrary) {
|
||||
}
|
||||
|
||||
// TODO(b/240463568): Additional properties will be added for API validation
|
||||
type bazelSyspropLibraryAttributes struct {
|
||||
Srcs bazel.LabelListAttribute
|
||||
}
|
||||
|
||||
type bazelCcSyspropLibraryAttributes struct {
|
||||
Dep bazel.LabelAttribute
|
||||
Min_sdk_version *string
|
||||
}
|
||||
|
||||
func (m *syspropLibrary) ConvertWithBp2build(ctx android.TopDownMutatorContext) {
|
||||
ctx.CreateBazelTargetModule(
|
||||
bazel.BazelTargetModuleProperties{
|
||||
Rule_class: "sysprop_library",
|
||||
Bzl_load_location: "//build/bazel/rules/sysprop:sysprop_library.bzl",
|
||||
},
|
||||
android.CommonAttributes{Name: m.Name()},
|
||||
&bazelSyspropLibraryAttributes{
|
||||
Srcs: bazel.MakeLabelListAttribute(android.BazelLabelForModuleSrc(ctx, m.properties.Srcs)),
|
||||
})
|
||||
|
||||
attrs := &bazelCcSyspropLibraryAttributes{
|
||||
Dep: *bazel.MakeLabelAttribute(":" + m.Name()),
|
||||
Min_sdk_version: m.properties.Cpp.Min_sdk_version,
|
||||
labels := cc.SyspropLibraryLabels{
|
||||
SyspropLibraryLabel: m.BaseModuleName(),
|
||||
SharedLibraryLabel: m.CcImplementationModuleName(),
|
||||
StaticLibraryLabel: cc.BazelLabelNameForStaticModule(m.CcImplementationModuleName()),
|
||||
}
|
||||
|
||||
ctx.CreateBazelTargetModule(
|
||||
bazel.BazelTargetModuleProperties{
|
||||
Rule_class: "cc_sysprop_library_shared",
|
||||
Bzl_load_location: "//build/bazel/rules/cc:cc_sysprop_library.bzl",
|
||||
},
|
||||
android.CommonAttributes{Name: m.CcImplementationModuleName()},
|
||||
attrs)
|
||||
ctx.CreateBazelTargetModule(
|
||||
bazel.BazelTargetModuleProperties{
|
||||
Rule_class: "cc_sysprop_library_static",
|
||||
Bzl_load_location: "//build/bazel/rules/cc:cc_sysprop_library.bzl",
|
||||
},
|
||||
android.CommonAttributes{Name: m.CcImplementationModuleName() + "_bp2build_cc_library_static"},
|
||||
attrs)
|
||||
cc.Bp2buildSysprop(ctx,
|
||||
labels,
|
||||
bazel.MakeLabelListAttribute(android.BazelLabelForModuleSrc(ctx, m.properties.Srcs)),
|
||||
m.properties.Cpp.Min_sdk_version)
|
||||
}
|
||||
|
Reference in New Issue
Block a user