package sanitizer_status import ( "android/soong/android" "android/soong/cc" ) func init() { android.RegisterModuleType("sanitizer_status_library_shared", libraryFactory) } func libraryFactory() android.Module { module := cc.LibrarySharedFactory() android.AddLoadHook(module, loadHook) return module } func loadHook(ctx android.LoadHookContext) { type props struct { Cflags []string } p := &props{} sanitizers := ctx.Config().SanitizeDevice() if android.InList("address", sanitizers) { p.Cflags = append(p.Cflags, "-DANDROID_SANITIZE_ADDRESS=1") } if android.InList("hwaddress", sanitizers) { p.Cflags = append(p.Cflags, "-DANDROID_SANITIZE_HWADDRESS=1") } if android.InList("coverage", sanitizers) { p.Cflags = append(p.Cflags, "-DANDROID_SANITIZE_COVERAGE=1") } ctx.AppendProperties(p) }