Modify prebuilt_kernel_modules behave more like `build-image-kernel-modules-depmod`
This change defines a depmod staging directory for vendor_ramdisk
partition prebuilt kernel modules, and also modifies the build commands
of `modules.dep` to add the leading slash for vendor ramdisk kernel
modules.
Test: unpack and diff soong and make generated vendor ramdisk partitions
Bug: 381104942
Change-Id: I0d14ed676983976e20c7aca98b1c06ce097b1682
diff --git a/kernel/prebuilt_kernel_modules.go b/kernel/prebuilt_kernel_modules.go
index ec7a971..1225da0 100644
--- a/kernel/prebuilt_kernel_modules.go
+++ b/kernel/prebuilt_kernel_modules.go
@@ -247,6 +247,8 @@
return modulesDir.Join(ctx, "vendor", "lib", "modules")
} else if ctx.InstallInOdmDlkm() {
return modulesDir.Join(ctx, "odm", "lib", "modules")
+ } else if ctx.InstallInVendorRamdisk() {
+ return modulesDir.Join(ctx, "lib", "modules")
} else {
// not an android dlkm module.
return modulesDir
@@ -309,8 +311,8 @@
builder.Build("depmod", fmt.Sprintf("depmod %s", ctx.ModuleName()))
finalModulesDep := modulesDep
- // Add a leading slash to paths in modules.dep of android dlkm
- if ctx.InstallInSystemDlkm() || ctx.InstallInVendorDlkm() || ctx.InstallInOdmDlkm() {
+ // Add a leading slash to paths in modules.dep of android dlkm and vendor ramdisk
+ if ctx.InstallInSystemDlkm() || ctx.InstallInVendorDlkm() || ctx.InstallInOdmDlkm() || ctx.InstallInVendorRamdisk() {
finalModulesDep = modulesDep.ReplaceExtension(ctx, "intermediates")
ctx.Build(pctx, android.BuildParams{
Rule: addLeadingSlashToPaths,