From 10fff94e2e9b5c5b52577669d80af8e8abf31137 Mon Sep 17 00:00:00 2001 From: Ted Bauer Date: Mon, 29 Apr 2024 19:30:23 +0000 Subject: [PATCH] Drive instrumentation with build flag for C/C++ Bug: 328444881 Test: m Change-Id: I20c92c61f855adb772d6aa173e85a6d8092460d7 --- aconfig/codegen/cc_aconfig_library.go | 2 ++ aconfig/codegen/init.go | 5 +++-- android/config.go | 5 +++++ 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/aconfig/codegen/cc_aconfig_library.go b/aconfig/codegen/cc_aconfig_library.go index 8e516b432..f3e9599bc 100644 --- a/aconfig/codegen/cc_aconfig_library.go +++ b/aconfig/codegen/cc_aconfig_library.go @@ -22,6 +22,7 @@ import ( "github.com/google/blueprint/proptools" "fmt" + "strconv" "strings" ) @@ -152,6 +153,7 @@ func (this *CcAconfigLibraryCallbacks) GeneratorBuildActions(ctx cc.ModuleContex Args: map[string]string{ "gendir": this.generatedDir.String(), "mode": mode, + "debug": strconv.FormatBool(ctx.Config().ReleaseReadFromNewStorageCc()), }, }) diff --git a/aconfig/codegen/init.go b/aconfig/codegen/init.go index 73a89514d..6182e14d4 100644 --- a/aconfig/codegen/init.go +++ b/aconfig/codegen/init.go @@ -49,11 +49,12 @@ var ( ` && ${aconfig} create-cpp-lib` + ` --mode ${mode}` + ` --cache ${in}` + - ` --out ${gendir}`, + ` --out ${gendir}` + + ` --allow-instrumentation ${debug}`, CommandDeps: []string{ "$aconfig", }, - }, "gendir", "mode") + }, "gendir", "mode", "debug") // For rust_aconfig_library: Generate Rust library rustRule = pctx.AndroidStaticRule("rust_aconfig_library", diff --git a/android/config.go b/android/config.go index 75d135fc0..b60eb5c2e 100644 --- a/android/config.go +++ b/android/config.go @@ -229,6 +229,11 @@ func (c Config) ReleaseNdkAbiMonitored() bool { return c.config.productVariables.GetBuildFlagBool("RELEASE_NDK_ABI_MONITORED") } +// Enable read flag from new storage, for C/C++ +func (c Config) ReleaseReadFromNewStorageCc() bool { + return c.config.productVariables.GetBuildFlagBool("RELEASE_READ_FROM_NEW_STORAGE_CC") +} + func (c Config) ReleaseHiddenApiExportableStubs() bool { return c.config.productVariables.GetBuildFlagBool("RELEASE_HIDDEN_API_EXPORTABLE_STUBS") || Bool(c.config.productVariables.HiddenapiExportableStubs)