aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTed Bauer <tedbauer@google.com>2024-04-23 22:56:50 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2024-04-23 22:56:50 +0000
commitb39c877ae058b6217f416783453b7433fd969494 (patch)
treec03f98f98072a5cf1ed1f597c8eb33552a4e47fa
parent38359285373dfdfacff2154e6c6dd673cbbe6bff (diff)
parentf0f18591a565a38450d78fb516ba8be6c8afcf41 (diff)
downloadsoong-b39c877ae058b6217f416783453b7433fd969494.tar.gz
Merge "Add aconfig storage API deps to codegened lib" into main
-rw-r--r--aconfig/codegen/cc_aconfig_library.go10
-rw-r--r--aconfig/codegen/cc_aconfig_library_test.go65
-rw-r--r--apex/aconfig_test.go36
-rw-r--r--apex/apex_test.go12
4 files changed, 123 insertions, 0 deletions
diff --git a/aconfig/codegen/cc_aconfig_library.go b/aconfig/codegen/cc_aconfig_library.go
index 80e492620..2d3ee39f9 100644
--- a/aconfig/codegen/cc_aconfig_library.go
+++ b/aconfig/codegen/cc_aconfig_library.go
@@ -33,6 +33,11 @@ var ccDeclarationsTag = ccDeclarationsTagType{}
const baseLibDep = "server_configurable_flags"
+const libBaseDep = "libbase"
+const libLogDep = "liblog"
+const libAconfigStorageReadApiCcDep = "libaconfig_storage_read_api_cc"
+const libAconfigStorageProtosCcDep = "libaconfig_storage_protos_cc"
+
type CcAconfigLibraryProperties struct {
// name of the aconfig_declarations module to generate a library for
Aconfig_declarations string
@@ -82,6 +87,11 @@ func (this *CcAconfigLibraryCallbacks) GeneratorDeps(ctx cc.DepsContext, deps cc
// Add a dependency for the aconfig flags base library if it is not forced read only
if mode != "force-read-only" {
deps.SharedLibs = append(deps.SharedLibs, baseLibDep)
+
+ deps.SharedLibs = append(deps.SharedLibs, libBaseDep)
+ deps.SharedLibs = append(deps.SharedLibs, libLogDep)
+ deps.SharedLibs = append(deps.SharedLibs, libAconfigStorageReadApiCcDep)
+ deps.SharedLibs = append(deps.SharedLibs, libAconfigStorageProtosCcDep)
}
// TODO: It'd be really nice if we could reexport this library and not make everyone do it.
diff --git a/aconfig/codegen/cc_aconfig_library_test.go b/aconfig/codegen/cc_aconfig_library_test.go
index 05449bc6c..2e7fdc2c1 100644
--- a/aconfig/codegen/cc_aconfig_library_test.go
+++ b/aconfig/codegen/cc_aconfig_library_test.go
@@ -58,6 +58,26 @@ func testCCCodegenModeHelper(t *testing.T, bpMode string, ruleMode string) {
srcs: ["server_configurable_flags.cc"],
}
+ cc_library {
+ name: "libbase",
+ srcs: ["libbase.cc"],
+ }
+
+ cc_library {
+ name: "liblog",
+ srcs: ["liblog.cc"],
+ }
+
+ cc_library {
+ name: "libaconfig_storage_read_api_cc",
+ srcs: ["libaconfig_storage_read_api_cc.cc"],
+ }
+
+ cc_library {
+ name: "libaconfig_storage_protos_cc",
+ srcs: ["libaconfig_storage_protos_cc.cc"],
+ }
+
cc_aconfig_library {
name: "my_cc_aconfig_library",
aconfig_declarations: "my_aconfig_declarations",
@@ -100,6 +120,27 @@ func testIncorrectCCCodegenModeHelper(t *testing.T, bpMode string, err string) {
srcs: ["server_configurable_flags.cc"],
}
+ cc_library {
+ name: "libbase",
+ srcs: ["libbase.cc"],
+ }
+
+ cc_library {
+ name: "liblog",
+ srcs: ["liblog.cc"],
+ }
+
+ cc_library {
+ name: "libaconfig_storage_read_api_cc",
+ srcs: ["libaconfig_storage_read_api_cc.cc"],
+ }
+
+ cc_library {
+ name: "libaconfig_storage_protos_cc",
+ srcs: ["libaconfig_storage_protos_cc.cc"],
+ }
+
+
cc_aconfig_library {
name: "my_cc_aconfig_library",
aconfig_declarations: "my_aconfig_declarations",
@@ -152,6 +193,30 @@ func TestAndroidMkCcLibrary(t *testing.T) {
srcs: ["server_configurable_flags.cc"],
vendor_available: true,
}
+
+ cc_library {
+ name: "libbase",
+ srcs: ["libbase.cc"],
+ vendor_available: true,
+ }
+
+ cc_library {
+ name: "liblog",
+ srcs: ["liblog.cc"],
+ vendor_available: true,
+ }
+
+ cc_library {
+ name: "libaconfig_storage_read_api_cc",
+ srcs: ["libaconfig_storage_read_api_cc.cc"],
+ vendor_available: true,
+ }
+
+ cc_library {
+ name: "libaconfig_storage_protos_cc",
+ srcs: ["libaconfig_storage_protos_cc.cc"],
+ vendor_available: true,
+ }
`
result := android.GroupFixturePreparers(
PrepareForTestWithAconfigBuildComponents,
diff --git a/apex/aconfig_test.go b/apex/aconfig_test.go
index 3e44f0b1b..3de928633 100644
--- a/apex/aconfig_test.go
+++ b/apex/aconfig_test.go
@@ -162,6 +162,18 @@ func TestValidationAcrossContainersExportedPass(t *testing.T) {
name: "server_configurable_flags",
srcs: ["server_configurable_flags.cc"],
}
+ cc_library {
+ name: "libbase",
+ srcs: ["libbase.cc"],
+ }
+ cc_library {
+ name: "libaconfig_storage_read_api_cc",
+ srcs: ["libaconfig_storage_read_api_cc.cc"],
+ }
+ cc_library {
+ name: "libaconfig_storage_protos_cc",
+ srcs: ["libaconfig_storage_protos_cc.cc"],
+ }
aconfig_declarations {
name: "my_aconfig_declarations_bar",
package: "com.example.package",
@@ -410,6 +422,18 @@ func TestValidationAcrossContainersNotExportedFail(t *testing.T) {
name: "server_configurable_flags",
srcs: ["server_configurable_flags.cc"],
}
+ cc_library {
+ name: "libbase",
+ srcs: ["libbase.cc"],
+ }
+ cc_library {
+ name: "libaconfig_storage_read_api_cc",
+ srcs: ["libaconfig_storage_read_api_cc.cc"],
+ }
+ cc_library {
+ name: "libaconfig_storage_protos_cc",
+ srcs: ["libaconfig_storage_protos_cc.cc"],
+ }
aconfig_declarations {
name: "my_aconfig_declarations_foo",
package: "com.example.package",
@@ -460,6 +484,18 @@ func TestValidationAcrossContainersNotExportedFail(t *testing.T) {
name: "server_configurable_flags",
srcs: ["server_configurable_flags.cc"],
}
+ cc_library {
+ name: "libbase",
+ srcs: ["libbase.cc"],
+ }
+ cc_library {
+ name: "libaconfig_storage_read_api_cc",
+ srcs: ["libaconfig_storage_read_api_cc.cc"],
+ }
+ cc_library {
+ name: "libaconfig_storage_protos_cc",
+ srcs: ["libaconfig_storage_protos_cc.cc"],
+ }
aconfig_declarations {
name: "my_aconfig_declarations_foo",
package: "com.example.package",
diff --git a/apex/apex_test.go b/apex/apex_test.go
index 2441b023b..8a3735cbe 100644
--- a/apex/apex_test.go
+++ b/apex/apex_test.go
@@ -10691,6 +10691,18 @@ func TestAconfigFilesJavaAndCcDeps(t *testing.T) {
name: "server_configurable_flags",
srcs: ["server_configurable_flags.cc"],
}
+ cc_library {
+ name: "libbase",
+ srcs: ["libbase.cc"],
+ }
+ cc_library {
+ name: "libaconfig_storage_read_api_cc",
+ srcs: ["libaconfig_storage_read_api_cc.cc"],
+ }
+ cc_library {
+ name: "libaconfig_storage_protos_cc",
+ srcs: ["libaconfig_storage_protos_cc.cc"],
+ }
`)
mod := ctx.ModuleForTests("myapex", "android_common_myapex")