Use target specific intermediate paths
This won't be harmful and this can help reduce rebuilding sepolicy
artifacts upon lunch target change.
Bug: 279524023
Test: m selinux_policy
Change-Id: I859de6dc0ac1958b44d847159904960bd7f9a0c2
diff --git a/build/soong/selinux_contexts.go b/build/soong/selinux_contexts.go
index 7faafc6..587fe91 100644
--- a/build/soong/selinux_contexts.go
+++ b/build/soong/selinux_contexts.go
@@ -243,11 +243,11 @@
var _ android.ImageInterface = (*selinuxContextsModule)(nil)
func (m *selinuxContextsModule) buildGeneralContexts(ctx android.ModuleContext, inputs android.Paths) android.Path {
- builtContext := android.PathForModuleGen(ctx, ctx.ModuleName()+"_m4out")
+ builtContext := pathForModuleOut(ctx, ctx.ModuleName()+"_m4out")
rule := android.NewRuleBuilder(pctx, ctx)
- newlineFile := android.PathForModuleGen(ctx, "newline")
+ newlineFile := pathForModuleOut(ctx, "newline")
rule.Command().Text("echo").FlagWithOutput("> ", newlineFile)
rule.Temporary(newlineFile)
@@ -267,7 +267,7 @@
if proptools.Bool(m.properties.Remove_comment) {
rule.Temporary(builtContext)
- remove_comment_output := android.PathForModuleGen(ctx, ctx.ModuleName()+"_remove_comment")
+ remove_comment_output := pathForModuleOut(ctx, ctx.ModuleName()+"_remove_comment")
rule.Command().
Text("sed -e 's/#.*$//' -e '/^$/d'").
@@ -280,7 +280,7 @@
if proptools.Bool(m.properties.Fc_sort) {
rule.Temporary(builtContext)
- sorted_output := android.PathForModuleGen(ctx, ctx.ModuleName()+"_sorted")
+ sorted_output := pathForModuleOut(ctx, ctx.ModuleName()+"_sorted")
rule.Command().
Tool(ctx.Config().HostToolPath(ctx, "fc_sort")).
@@ -290,7 +290,7 @@
builtContext = sorted_output
}
- ret := android.PathForModuleGen(ctx, m.stem())
+ ret := pathForModuleOut(ctx, m.stem())
rule.Temporary(builtContext)
rule.Command().Text("cp").Input(builtContext).Output(ret)
@@ -309,7 +309,7 @@
if ctx.Config().FlattenApex() {
for _, path := range android.PathsForModuleSrc(ctx, m.fileContextsProperties.Flatten_apex.Srcs) {
- out := android.PathForModuleGen(ctx, "flattened_apex", path.Rel())
+ out := pathForModuleOut(ctx, "flattened_apex", path.Rel())
apex_path := "/system/apex/" + strings.Replace(
strings.TrimSuffix(path.Base(), "-file_contexts"),
".", "\\\\.", -1)
@@ -394,7 +394,7 @@
cmd.Flag("--strict")
}
- out := android.PathForModuleGen(ctx, "namespace_checked").Join(ctx, input.String())
+ out := pathForModuleOut(ctx, "namespace_checked").Join(ctx, input.String())
rule.Command().Text("cp -f").Input(input).Output(out)
ret = append(ret, out)
}
@@ -426,7 +426,7 @@
// check compatibility with sysprop_library
if len(apiFiles) > 0 {
- out := android.PathForModuleGen(ctx, ctx.ModuleName()+"_api_checked")
+ out := pathForModuleOut(ctx, ctx.ModuleName()+"_api_checked")
rule := android.NewRuleBuilder(pctx, ctx)
msg := `\n******************************\n` +
@@ -452,8 +452,8 @@
}
func (m *selinuxContextsModule) buildSeappContexts(ctx android.ModuleContext, inputs android.Paths) android.Path {
- neverallowFile := android.PathForModuleGen(ctx, "neverallow")
- ret := android.PathForModuleGen(ctx, m.stem())
+ neverallowFile := pathForModuleOut(ctx, "neverallow")
+ ret := pathForModuleOut(ctx, m.stem())
rule := android.NewRuleBuilder(pctx, ctx)
rule.Command().Text("(grep").
@@ -547,7 +547,7 @@
flags []string
properties contextsTestProperties
- testTimestamp android.ModuleOutPath
+ testTimestamp android.OutputPath
}
// checkfc parses a context file and checks for syntax errors.
@@ -622,7 +622,7 @@
Input(sepolicy).
Inputs(srcs)
- m.testTimestamp = android.PathForModuleOut(ctx, "timestamp")
+ m.testTimestamp = pathForModuleOut(ctx, "timestamp")
rule.Command().Text("touch").Output(m.testTimestamp)
rule.Build("contexts_test", "running contexts test: "+ctx.ModuleName())
}