Merge changes from topic "revert-3066748-duplicate_entry_fs-CIBDJQYRHU" into main
* changes:
Revert "Prevent multiple PackagingSpecs having same installation..."
Revert "Filesystem modules follow the installation semantic"
diff --git a/android/packaging.go b/android/packaging.go
index fe61da1..6677218 100644
--- a/android/packaging.go
+++ b/android/packaging.go
@@ -50,25 +50,6 @@
skipInstall bool
}
-func (p *PackagingSpec) Equals(other *PackagingSpec) bool {
- if other == nil {
- return false
- }
- if p.relPathInPackage != other.relPathInPackage {
- return false
- }
- if p.srcPath != other.srcPath || p.symlinkTarget != other.symlinkTarget {
- return false
- }
- if p.executable != other.executable {
- return false
- }
- if p.partition != other.partition {
- return false
- }
- return true
-}
-
// Get file name of installed package
func (p *PackagingSpec) FileName() string {
if p.relPathInPackage != "" {
@@ -262,15 +243,9 @@
continue
}
}
- dstPath := ps.relPathInPackage
- if existingPs, ok := m[dstPath]; ok {
- if !existingPs.Equals(&ps) {
- ctx.ModuleErrorf("packaging conflict at %v:\n%v\n%v", dstPath, existingPs, ps)
- }
- continue
+ if _, ok := m[ps.relPathInPackage]; !ok {
+ m[ps.relPathInPackage] = ps
}
-
- m[dstPath] = ps
}
})
return m
diff --git a/filesystem/filesystem.go b/filesystem/filesystem.go
index 5bcfce7..cadf9c24 100644
--- a/filesystem/filesystem.go
+++ b/filesystem/filesystem.go
@@ -137,7 +137,6 @@
// partitions like system.img. For example, cc_library modules are placed under ./lib[64] directory.
func filesystemFactory() android.Module {
module := &filesystem{}
- module.filterPackagingSpec = module.filterInstallablePackagingSpec
initFilesystemModule(module)
return module
}
@@ -190,12 +189,6 @@
return proptools.StringDefault(f.properties.Partition_name, f.Name())
}
-func (f *filesystem) filterInstallablePackagingSpec(ps android.PackagingSpec) bool {
- // Filesystem module respects the installation semantic. A PackagingSpec from a module with
- // IsSkipInstall() is skipped.
- return !ps.SkipInstall()
-}
-
var pctx = android.NewPackageContext("android/soong/filesystem")
func (f *filesystem) GenerateAndroidBuildActions(ctx android.ModuleContext) {
diff --git a/filesystem/filesystem_test.go b/filesystem/filesystem_test.go
index acd4813..1215048 100644
--- a/filesystem/filesystem_test.go
+++ b/filesystem/filesystem_test.go
@@ -442,26 +442,3 @@
}
`)
}
-
-func TestPreventDuplicatedEntries(t *testing.T) {
- fixture.ExtendWithErrorHandler(android.FixtureExpectsOneErrorPattern(
- "packaging conflict at")).
- RunTestWithBp(t, `
- android_filesystem {
- name: "fs",
- deps: [
- "foo",
- "foo_dup",
- ],
- }
-
- cc_binary {
- name: "foo",
- }
-
- cc_binary {
- name: "foo_dup",
- stem: "foo",
- }
- `)
-}
diff --git a/filesystem/system_image.go b/filesystem/system_image.go
index 15cacfb..5028a49 100644
--- a/filesystem/system_image.go
+++ b/filesystem/system_image.go
@@ -98,5 +98,5 @@
// Note that "apex" module installs its contents to "apex"(fake partition) as well
// for symbol lookup by imitating "activated" paths.
func (s *systemImage) filterPackagingSpec(ps android.PackagingSpec) bool {
- return s.filesystem.filterInstallablePackagingSpec(ps) && ps.Partition() == "system"
+ return ps.Partition() == "system"
}