TARGET_FS_CONFIG_GEN is a list, not a single path

Bug: 130787336
Test: m oemaids_header_gen oemaids_headers passwd group
Test: Set TARGET_FS_CONFIG_GEN to a list of paths
Change-Id: I5186b378fea8865f46cfd891420ba576f36e2565
diff --git a/tools/fs_config/Android.bp b/tools/fs_config/Android.bp
index d6fae2d..d9a48d7 100644
--- a/tools/fs_config/Android.bp
+++ b/tools/fs_config/Android.bp
@@ -42,7 +42,7 @@
 genrule {
     name: "oemaids_header_gen",
     tool_files: ["fs_config_generator.py"],
-    cmd: "$(location fs_config_generator.py) oemaid --aid-header=$(location :android_filesystem_config_header) $(location :target_fs_config_gen) >$(out)",
+    cmd: "$(location fs_config_generator.py) oemaid --aid-header=$(location :android_filesystem_config_header) $(locations :target_fs_config_gen) >$(out)",
     srcs: [
         ":target_fs_config_gen",
         ":android_filesystem_config_header",
@@ -62,7 +62,7 @@
 genrule {
     name: "passwd_gen",
     tool_files: ["fs_config_generator.py"],
-    cmd: "$(location fs_config_generator.py) passwd --required-prefix=vendor_ --aid-header=$(location :android_filesystem_config_header) $(location :target_fs_config_gen) >$(out)",
+    cmd: "$(location fs_config_generator.py) passwd --required-prefix=vendor_ --aid-header=$(location :android_filesystem_config_header) $(locations :target_fs_config_gen) >$(out)",
     srcs: [
         ":target_fs_config_gen",
         ":android_filesystem_config_header",
@@ -82,7 +82,7 @@
 genrule {
     name: "group_gen",
     tool_files: ["fs_config_generator.py"],
-    cmd: "$(location fs_config_generator.py) group --required-prefix=vendor_ --aid-header=$(location :android_filesystem_config_header) $(location :target_fs_config_gen) >$(out)",
+    cmd: "$(location fs_config_generator.py) group --required-prefix=vendor_ --aid-header=$(location :android_filesystem_config_header) $(locations :target_fs_config_gen) >$(out)",
     srcs: [
         ":target_fs_config_gen",
         ":android_filesystem_config_header",
diff --git a/tools/fs_config/fs_config.go b/tools/fs_config/fs_config.go
index 869cb3d..16bcefa 100644
--- a/tools/fs_config/fs_config.go
+++ b/tools/fs_config/fs_config.go
@@ -24,7 +24,7 @@
 	android.RegisterModuleType("target_fs_config_gen_filegroup", targetFSConfigGenFactory)
 }
 
-// target_fs_config_gen_filegroup is used to expose the file pointed to by TARGET_FS_CONFIG_GEN to
+// target_fs_config_gen_filegroup is used to expose the files pointed to by TARGET_FS_CONFIG_GEN to
 // genrules in Soong. If TARGET_FS_CONFIG_GEN is empty, it will export an empty file instead.
 func targetFSConfigGenFactory() android.Module {
 	module := &targetFSConfigGen{}
@@ -36,17 +36,17 @@
 
 type targetFSConfigGen struct {
 	android.ModuleBase
-	path android.Path
+	paths android.Paths
 }
 
 func (targetFSConfigGen) DepsMutator(ctx android.BottomUpMutatorContext) {}
 
 func (t *targetFSConfigGen) GenerateAndroidBuildActions(ctx android.ModuleContext) {
-	if ret := ctx.DeviceConfig().TargetFSConfigGen(); ret != nil && *ret != "" {
-		t.path = android.PathForSource(ctx, *ret)
+	if ret := ctx.DeviceConfig().TargetFSConfigGen(); len(ret) != 0 {
+		t.paths = android.PathsForSource(ctx, ret)
 	} else {
 		path := android.PathForModuleGen(ctx, "empty")
-		t.path = path
+		t.paths = android.Paths{path}
 
 		rule := android.NewRuleBuilder()
 		rule.Command().Text("rm -rf").Output(path)
@@ -56,5 +56,5 @@
 }
 
 func (t *targetFSConfigGen) Srcs() android.Paths {
-	return android.Paths{t.path}
+	return t.paths
 }