diff --git a/cc/snapshot_utils.go b/cc/snapshot_utils.go index 77d82f1b5..3e6444bc0 100644 --- a/cc/snapshot_utils.go +++ b/cc/snapshot_utils.go @@ -77,9 +77,12 @@ func shouldCollectHeadersForSnapshot(ctx android.ModuleContext, m *Module, apexI } if _, _, ok := isVndkSnapshotAware(ctx.DeviceConfig(), m, apexInfo); ok { return ctx.Config().VndkSnapshotBuildArtifacts() - } else if isVendorSnapshotAware(m, isVendorProprietaryPath(ctx.ModuleDir()), apexInfo) || - isRecoverySnapshotAware(m, isRecoveryProprietaryPath(ctx.ModuleDir()), apexInfo) { - return true + } + + for _, image := range []snapshotImage{vendorSnapshotImageSingleton, recoverySnapshotImageSingleton} { + if isSnapshotAware(m, image.isProprietaryPath(ctx.ModuleDir()), apexInfo, image) { + return true + } } return false } diff --git a/cc/vendor_snapshot.go b/cc/vendor_snapshot.go index 417516bf9..d58967b45 100644 --- a/cc/vendor_snapshot.go +++ b/cc/vendor_snapshot.go @@ -177,25 +177,6 @@ func isRecoveryProprietaryModule(ctx android.BaseModuleContext) bool { return false } -// Determine if a module is going to be included in vendor snapshot or not. -// -// Targets of vendor snapshot are "vendor: true" or "vendor_available: true" modules in -// AOSP. They are not guaranteed to be compatible with older vendor images. (e.g. might -// depend on newer VNDK) So they are captured as vendor snapshot To build older vendor -// image and newer system image altogether. -func isVendorSnapshotAware(m *Module, inVendorProprietaryPath bool, apexInfo android.ApexInfo) bool { - return isSnapshotAware(m, inVendorProprietaryPath, apexInfo, vendorSnapshotImageSingleton) -} - -// Determine if a module is going to be included in recovery snapshot or not. -// -// Targets of recovery snapshot are "recovery: true" or "recovery_available: true" -// modules in AOSP. They are not guaranteed to be compatible with older recovery images. -// So they are captured as recovery snapshot To build older recovery image. -func isRecoverySnapshotAware(m *Module, inRecoveryProprietaryPath bool, apexInfo android.ApexInfo) bool { - return isSnapshotAware(m, inRecoveryProprietaryPath, apexInfo, recoverySnapshotImageSingleton) -} - // Determines if the module is a candidate for snapshot. func isSnapshotAware(m *Module, inProprietaryPath bool, apexInfo android.ApexInfo, image snapshotImage) bool { if !m.Enabled() || m.Properties.HideFromMake {