Merge "Reapply "Remove unassigned event log tags feature"" into main
diff --git a/android/container_violations.go b/android/container_violations.go
index 4251484..cfee562 100644
--- a/android/container_violations.go
+++ b/android/container_violations.go
@@ -827,6 +827,13 @@
"framework-connectivity-pre-jarjar", // apex [com.android.tethering] -> system
},
+ // TODO(b/382743602): Remove "app-compat-annotations" and depend on the stub version jar
+ // TODO(b/382301972): Remove the violations and use jarjar_rename or jarjar_prefix
+ "framework-connectivity-b.impl": {
+ "app-compat-annotations", // apex [com.android.tethering] -> system
+ "framework-connectivity-pre-jarjar", // apex [com.android.tethering] -> system
+ },
+
"framework-connectivity.impl": {
"app-compat-annotations", // apex [com.android.tethering] -> system
},
@@ -1029,6 +1036,13 @@
"framework-connectivity-t-pre-jarjar", // apex [com.android.tethering] -> system
},
+ // TODO(b/382301972): Remove the violations and use jarjar_rename or jarjar_prefix
+ "service-connectivity-b-pre-jarjar": {
+ "framework-connectivity-pre-jarjar", // apex [com.android.tethering] -> system
+ "framework-connectivity-b-pre-jarjar", // apex [com.android.tethering] -> system
+ "framework-connectivity-t-pre-jarjar", // apex [com.android.tethering] -> system
+ },
+
"service-entitlement": {
"auto_value_annotations", // apex [com.android.wifi, test_com.android.wifi] -> apex [com.android.adservices, com.android.extservices, com.android.extservices_tplus]
},
diff --git a/fsgen/filesystem_creator.go b/fsgen/filesystem_creator.go
index 1378513..700bd04 100644
--- a/fsgen/filesystem_creator.go
+++ b/fsgen/filesystem_creator.go
@@ -586,6 +586,7 @@
Load_by_default *bool
Blocklist_file *string
Options_file *string
+ Strip_debug_symbols *bool
}{
Name: proptools.StringPtr(name),
}
@@ -601,6 +602,7 @@
if blocklistFile := ctx.Config().ProductVariables().PartitionVarsForSoongMigrationOnlyDoNotUse.SystemKernelBlocklistFile; blocklistFile != "" {
props.Blocklist_file = proptools.StringPtr(blocklistFile)
}
+ props.Strip_debug_symbols = proptools.BoolPtr(false)
case "vendor_dlkm":
props.Srcs = android.ExistentPathsForSources(ctx, ctx.Config().ProductVariables().PartitionVarsForSoongMigrationOnlyDoNotUse.VendorKernelModules).Strings()
if len(ctx.Config().ProductVariables().PartitionVarsForSoongMigrationOnlyDoNotUse.SystemKernelModules) > 0 {
@@ -610,12 +612,14 @@
if blocklistFile := ctx.Config().ProductVariables().PartitionVarsForSoongMigrationOnlyDoNotUse.VendorKernelBlocklistFile; blocklistFile != "" {
props.Blocklist_file = proptools.StringPtr(blocklistFile)
}
+ props.Strip_debug_symbols = proptools.BoolPtr(false)
case "odm_dlkm":
props.Srcs = android.ExistentPathsForSources(ctx, ctx.Config().ProductVariables().PartitionVarsForSoongMigrationOnlyDoNotUse.OdmKernelModules).Strings()
props.Odm_dlkm_specific = proptools.BoolPtr(true)
if blocklistFile := ctx.Config().ProductVariables().PartitionVarsForSoongMigrationOnlyDoNotUse.OdmKernelBlocklistFile; blocklistFile != "" {
props.Blocklist_file = proptools.StringPtr(blocklistFile)
}
+ props.Strip_debug_symbols = proptools.BoolPtr(false)
case "vendor_ramdisk":
props.Srcs = android.ExistentPathsForSources(ctx, ctx.Config().ProductVariables().PartitionVarsForSoongMigrationOnlyDoNotUse.VendorRamdiskKernelModules).Strings()
props.Vendor_ramdisk = proptools.BoolPtr(true)
diff --git a/kernel/prebuilt_kernel_modules.go b/kernel/prebuilt_kernel_modules.go
index 001a1e7..ec7a971 100644
--- a/kernel/prebuilt_kernel_modules.go
+++ b/kernel/prebuilt_kernel_modules.go
@@ -67,6 +67,10 @@
// Whether this module is directly installable to one of the partitions. Default is true
Installable *bool
+
+ // Whether debug symbols should be stripped from the *.ko files.
+ // Defaults to true.
+ Strip_debug_symbols *bool
}
// prebuilt_kernel_modules installs a set of prebuilt kernel module files to the correct directory.
@@ -100,7 +104,9 @@
systemModules := android.PathsForModuleSrc(ctx, pkm.properties.System_deps)
depmodOut := pkm.runDepmod(ctx, modules, systemModules)
- strippedModules := stripDebugSymbols(ctx, modules)
+ if proptools.BoolDefault(pkm.properties.Strip_debug_symbols, true) {
+ modules = stripDebugSymbols(ctx, modules)
+ }
installDir := android.PathForModuleInstall(ctx, "lib", "modules")
// Kernel module is installed to vendor_ramdisk/lib/modules regardless of product
@@ -114,7 +120,7 @@
installDir = installDir.Join(ctx, pkm.KernelVersion())
}
- for _, m := range strippedModules {
+ for _, m := range modules {
ctx.InstallFile(installDir, filepath.Base(m.String()), m)
}
ctx.InstallFile(installDir, "modules.load", depmodOut.modulesLoad)
@@ -165,9 +171,9 @@
}, "stripCmd")
)
-func stripDebugSymbols(ctx android.ModuleContext, modules android.Paths) android.OutputPaths {
+func stripDebugSymbols(ctx android.ModuleContext, modules android.Paths) android.Paths {
dir := android.PathForModuleOut(ctx, "stripped").OutputPath
- var outputs android.OutputPaths
+ var outputs android.Paths
for _, m := range modules {
stripped := dir.Join(ctx, filepath.Base(m.String()))
@@ -305,7 +311,7 @@
finalModulesDep := modulesDep
// Add a leading slash to paths in modules.dep of android dlkm
if ctx.InstallInSystemDlkm() || ctx.InstallInVendorDlkm() || ctx.InstallInOdmDlkm() {
- finalModulesDep := modulesDep.ReplaceExtension(ctx, "intermediates")
+ finalModulesDep = modulesDep.ReplaceExtension(ctx, "intermediates")
ctx.Build(pctx, android.BuildParams{
Rule: addLeadingSlashToPaths,
Input: modulesDep,