add clang_tidy properties to bp2build
Bug: 195029134
Test: m bp2build
Change-Id: I9ca2436ef792911be72788b6640287726a609e2f
diff --git a/cc/binary.go b/cc/binary.go
index a6d7507..d09e744 100644
--- a/cc/binary.go
+++ b/cc/binary.go
@@ -646,6 +646,8 @@
sdkAttributes: bp2BuildParseSdkAttributes(m),
}
+ m.convertTidyAttributes(&attrs.tidyAttributes)
+
return attrs
}
@@ -698,4 +700,6 @@
Features bazel.StringListAttribute
sdkAttributes
+
+ tidyAttributes
}
diff --git a/cc/bp2build.go b/cc/bp2build.go
index d6d052f..2f79cae 100644
--- a/cc/bp2build.go
+++ b/cc/bp2build.go
@@ -66,6 +66,26 @@
Native_coverage bazel.BoolAttribute
sdkAttributes
+
+ tidyAttributes
+}
+
+type tidyAttributes struct {
+ Tidy *bool
+ Tidy_flags []string
+ Tidy_checks []string
+ Tidy_checks_as_errors []string
+}
+
+func (m *Module) convertTidyAttributes(moduleAttrs *tidyAttributes) {
+ for _, f := range m.features {
+ if tidy, ok := f.(*tidyFeature); ok {
+ moduleAttrs.Tidy = tidy.Properties.Tidy
+ moduleAttrs.Tidy_flags = tidy.Properties.Tidy_flags
+ moduleAttrs.Tidy_checks = tidy.Properties.Tidy_checks
+ moduleAttrs.Tidy_checks_as_errors = tidy.Properties.Tidy_checks_as_errors
+ }
+ }
}
// groupSrcsByExtension partitions `srcs` into groups based on file extension.
diff --git a/cc/library.go b/cc/library.go
index a590b22..41a68e3 100644
--- a/cc/library.go
+++ b/cc/library.go
@@ -2791,6 +2791,8 @@
Runtime_deps: linkerAttrs.runtimeDeps,
}
+ module.convertTidyAttributes(&commonAttrs.tidyAttributes)
+
var attrs interface{}
if isStatic {
commonAttrs.Deps.Add(baseAttributes.protoDependency)
diff --git a/cc/test.go b/cc/test.go
index 715c537..92055fa 100644
--- a/cc/test.go
+++ b/cc/test.go
@@ -643,6 +643,8 @@
Gtest bool
Isolated bool
+
+ tidyAttributes
}
// testBinaryBp2build is the bp2build converter for cc_test modules. A cc_test's
@@ -676,6 +678,8 @@
}
}
+ m.convertTidyAttributes(&testBinaryAttrs.tidyAttributes)
+
for _, propIntf := range m.GetProperties() {
if testLinkerProps, ok := propIntf.(*TestLinkerProperties); ok {
testBinaryAttrs.Gtest = proptools.BoolDefault(testLinkerProps.Gtest, true)