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
This commit is contained in:
Dan Willemsen
2019-04-18 10:10:34 -07:00
parent aa0aa5e5c8
commit 7f25f2aed9
3 changed files with 10 additions and 10 deletions

View File

@@ -165,7 +165,7 @@ $(call add_json_list, ProductHiddenAPIStubs, $(PRODUCT_HIDDENAPI_STU
$(call add_json_list, ProductHiddenAPIStubsSystem, $(PRODUCT_HIDDENAPI_STUBS_SYSTEM)) $(call add_json_list, ProductHiddenAPIStubsSystem, $(PRODUCT_HIDDENAPI_STUBS_SYSTEM))
$(call add_json_list, ProductHiddenAPIStubsTest, $(PRODUCT_HIDDENAPI_STUBS_TEST)) $(call add_json_list, ProductHiddenAPIStubsTest, $(PRODUCT_HIDDENAPI_STUBS_TEST))
$(call add_json_str, TargetFSConfigGen, $(TARGET_FS_CONFIG_GEN)) $(call add_json_list, TargetFSConfigGen, $(TARGET_FS_CONFIG_GEN))
$(call add_json_map, VendorVars) $(call add_json_map, VendorVars)
$(foreach namespace,$(SOONG_CONFIG_NAMESPACES),\ $(foreach namespace,$(SOONG_CONFIG_NAMESPACES),\

View File

@@ -42,7 +42,7 @@ target_fs_config_gen_filegroup {
genrule { genrule {
name: "oemaids_header_gen", name: "oemaids_header_gen",
tool_files: ["fs_config_generator.py"], 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: [ srcs: [
":target_fs_config_gen", ":target_fs_config_gen",
":android_filesystem_config_header", ":android_filesystem_config_header",
@@ -62,7 +62,7 @@ cc_library_headers {
genrule { genrule {
name: "passwd_gen", name: "passwd_gen",
tool_files: ["fs_config_generator.py"], 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: [ srcs: [
":target_fs_config_gen", ":target_fs_config_gen",
":android_filesystem_config_header", ":android_filesystem_config_header",
@@ -82,7 +82,7 @@ prebuilt_etc {
genrule { genrule {
name: "group_gen", name: "group_gen",
tool_files: ["fs_config_generator.py"], 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: [ srcs: [
":target_fs_config_gen", ":target_fs_config_gen",
":android_filesystem_config_header", ":android_filesystem_config_header",

View File

@@ -24,7 +24,7 @@ func init() {
android.RegisterModuleType("target_fs_config_gen_filegroup", targetFSConfigGenFactory) 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. // genrules in Soong. If TARGET_FS_CONFIG_GEN is empty, it will export an empty file instead.
func targetFSConfigGenFactory() android.Module { func targetFSConfigGenFactory() android.Module {
module := &targetFSConfigGen{} module := &targetFSConfigGen{}
@@ -36,17 +36,17 @@ var _ android.SourceFileProducer = (*targetFSConfigGen)(nil)
type targetFSConfigGen struct { type targetFSConfigGen struct {
android.ModuleBase android.ModuleBase
path android.Path paths android.Paths
} }
func (targetFSConfigGen) DepsMutator(ctx android.BottomUpMutatorContext) {} func (targetFSConfigGen) DepsMutator(ctx android.BottomUpMutatorContext) {}
func (t *targetFSConfigGen) GenerateAndroidBuildActions(ctx android.ModuleContext) { func (t *targetFSConfigGen) GenerateAndroidBuildActions(ctx android.ModuleContext) {
if ret := ctx.DeviceConfig().TargetFSConfigGen(); ret != nil && *ret != "" { if ret := ctx.DeviceConfig().TargetFSConfigGen(); len(ret) != 0 {
t.path = android.PathForSource(ctx, *ret) t.paths = android.PathsForSource(ctx, ret)
} else { } else {
path := android.PathForModuleGen(ctx, "empty") path := android.PathForModuleGen(ctx, "empty")
t.path = path t.paths = android.Paths{path}
rule := android.NewRuleBuilder() rule := android.NewRuleBuilder()
rule.Command().Text("rm -rf").Output(path) rule.Command().Text("rm -rf").Output(path)
@@ -56,5 +56,5 @@ func (t *targetFSConfigGen) GenerateAndroidBuildActions(ctx android.ModuleContex
} }
func (t *targetFSConfigGen) Srcs() android.Paths { func (t *targetFSConfigGen) Srcs() android.Paths {
return android.Paths{t.path} return t.paths
} }