bp2build for sanitizer blocklists long term fix
Bug: 286872909
Test: Unit tests
Test: b build relevant targets
Change-Id: I553091f76fca936006651b1ed22c8fe4d176e18f
diff --git a/bp2build/cc_binary_conversion_test.go b/bp2build/cc_binary_conversion_test.go
index d9a7860..90db365 100644
--- a/bp2build/cc_binary_conversion_test.go
+++ b/bp2build/cc_binary_conversion_test.go
@@ -880,8 +880,15 @@
}`,
targets: []testBazelTarget{
{"cc_binary", "foo", AttrNameToString{
+ "copts": `select({
+ "//build/bazel/rules/cc:sanitizers_enabled": ["-fsanitize-ignorelist=$(location foo_blocklist.txt)"],
+ "//conditions:default": [],
+ })`,
+ "additional_compiler_inputs": `select({
+ "//build/bazel/rules/cc:sanitizers_enabled": [":foo_blocklist.txt"],
+ "//conditions:default": [],
+ })`,
"local_includes": `["."]`,
- "features": `["sanitizer_blocklist_foo_blocklist_txt"]`,
}},
},
})
diff --git a/bp2build/cc_library_conversion_test.go b/bp2build/cc_library_conversion_test.go
index e5ae73e..93a8dea 100644
--- a/bp2build/cc_library_conversion_test.go
+++ b/bp2build/cc_library_conversion_test.go
@@ -4206,11 +4206,25 @@
`,
ExpectedBazelTargets: []string{
MakeBazelTarget("cc_library_static", "foo_bp2build_cc_library_static", AttrNameToString{
- "features": `["sanitizer_blocklist_foo_blocklist_txt"]`,
+ "copts": `select({
+ "//build/bazel/rules/cc:sanitizers_enabled": ["-fsanitize-ignorelist=$(location foo_blocklist.txt)"],
+ "//conditions:default": [],
+ })`,
+ "additional_compiler_inputs": `select({
+ "//build/bazel/rules/cc:sanitizers_enabled": [":foo_blocklist.txt"],
+ "//conditions:default": [],
+ })`,
"local_includes": `["."]`,
}),
MakeBazelTarget("cc_library_shared", "foo", AttrNameToString{
- "features": `["sanitizer_blocklist_foo_blocklist_txt"]`,
+ "copts": `select({
+ "//build/bazel/rules/cc:sanitizers_enabled": ["-fsanitize-ignorelist=$(location foo_blocklist.txt)"],
+ "//conditions:default": [],
+ })`,
+ "additional_compiler_inputs": `select({
+ "//build/bazel/rules/cc:sanitizers_enabled": [":foo_blocklist.txt"],
+ "//conditions:default": [],
+ })`,
"local_includes": `["."]`,
}),
},
diff --git a/bp2build/cc_library_shared_conversion_test.go b/bp2build/cc_library_shared_conversion_test.go
index ccb426f..90b13b0 100644
--- a/bp2build/cc_library_shared_conversion_test.go
+++ b/bp2build/cc_library_shared_conversion_test.go
@@ -1225,7 +1225,14 @@
`,
ExpectedBazelTargets: []string{
MakeBazelTarget("cc_library_shared", "foo", AttrNameToString{
- "features": `["sanitizer_blocklist_foo_blocklist_txt"]`,
+ "copts": `select({
+ "//build/bazel/rules/cc:sanitizers_enabled": ["-fsanitize-ignorelist=$(location foo_blocklist.txt)"],
+ "//conditions:default": [],
+ })`,
+ "additional_compiler_inputs": `select({
+ "//build/bazel/rules/cc:sanitizers_enabled": [":foo_blocklist.txt"],
+ "//conditions:default": [],
+ })`,
"local_includes": `["."]`,
}),
},
diff --git a/bp2build/cc_library_static_conversion_test.go b/bp2build/cc_library_static_conversion_test.go
index 26baf89..89ec8f9 100644
--- a/bp2build/cc_library_static_conversion_test.go
+++ b/bp2build/cc_library_static_conversion_test.go
@@ -1950,7 +1950,14 @@
`,
ExpectedBazelTargets: []string{
MakeBazelTarget("cc_library_static", "foo", AttrNameToString{
- "features": `["sanitizer_blocklist_foo_blocklist_txt"]`,
+ "copts": `select({
+ "//build/bazel/rules/cc:sanitizers_enabled": ["-fsanitize-ignorelist=$(location foo_blocklist.txt)"],
+ "//conditions:default": [],
+ })`,
+ "additional_compiler_inputs": `select({
+ "//build/bazel/rules/cc:sanitizers_enabled": [":foo_blocklist.txt"],
+ "//conditions:default": [],
+ })`,
"local_includes": `["."]`,
}),
},