Support bssl hash injection for libcrypto.

Bug: 215541108
Test: Build libcrypto with Bazel and verify the hash injected, add unit
test
Change-Id: I0375307aab0b1e60a8be298d680e1e0af1ebb454

Change-Id: I9133ce398e2024fe7834a292bf2f5ba3222d630b
This commit is contained in:
Yu Liu
2022-02-01 09:54:09 -08:00
parent 47cb940902
commit 75be7b94d6
2 changed files with 44 additions and 0 deletions

View File

@@ -1287,6 +1287,7 @@ func makeCcLibraryTargets(name string, attrs attrNameToString) []string {
"strip": true,
"stubs_symbol_file": true,
"stubs_versions": true,
"inject_bssl_hash": true,
}
sharedAttrs := attrNameToString{}
staticAttrs := attrNameToString{}
@@ -1822,6 +1823,33 @@ cc_library {
)
}
func TestLibcryptoHashInjection(t *testing.T) {
runCcLibraryTestCase(t, bp2buildTestCase{
description: "cc_library - libcrypto hash injection",
moduleTypeUnderTest: "cc_library",
moduleTypeUnderTestFactory: cc.LibraryFactory,
filesystem: map[string]string{},
blueprint: soongCcLibraryPreamble + `
cc_library {
name: "libcrypto",
target: {
android: {
inject_bssl_hash: true,
},
},
include_build_directory: false,
}
`,
expectedBazelTargets: makeCcLibraryTargets("libcrypto", attrNameToString{
"inject_bssl_hash": `select({
"//build/bazel/platforms/os:android": True,
"//conditions:default": None,
})`,
}),
},
)
}
func TestCcLibraryCppStdWithGnuExtensions_ConvertsToFeatureAttr(t *testing.T) {
type testCase struct {
cpp_std string