Explicitly disable CFI in bp2build when false

In Soong, CFI being explicitly set to false overrides presence in
CFI_INCLUDE_PATHS, so this change causes Bazel to mimic the same
precedence.

Bug: 278789968
Test: Unit tests
Change-Id: I827b3d4272eac2002031970f1e67c9321979b14b
This commit is contained in:
Trevor Radcliffe
2023-06-16 20:15:45 +00:00
parent df9c3441aa
commit 523c5c6597
5 changed files with 89 additions and 1 deletions

View File

@@ -4839,6 +4839,32 @@ cc_library {
})
}
func TestCcLibraryExplicitlyDisablesCfiWhenFalse(t *testing.T) {
runCcLibraryTestCase(t, Bp2buildTestCase{
Description: "cc_library disables cfi when explciitly set to false in the bp",
ModuleTypeUnderTest: "cc_library",
ModuleTypeUnderTestFactory: cc.LibraryFactory,
Blueprint: `
cc_library {
name: "foo",
sanitize: {
cfi: false,
},
}
`,
ExpectedBazelTargets: []string{
MakeBazelTarget("cc_library_static", "foo_bp2build_cc_library_static", AttrNameToString{
"features": `["-android_cfi"]`,
"local_includes": `["."]`,
}),
MakeBazelTarget("cc_library_shared", "foo", AttrNameToString{
"features": `["-android_cfi"]`,
"local_includes": `["."]`,
}),
},
})
}
func TestCcLibraryWithStem(t *testing.T) {
runCcLibraryTestCase(t, Bp2buildTestCase{
Description: "cc_library with stem property",