Merge "Allow specifying sub-dir in sbox output" into main

This commit is contained in:
Anas Sulaiman
2024-02-09 12:47:01 +00:00
committed by Gerrit Code Review

View File

@@ -1157,11 +1157,15 @@ func (c *RuleBuilderCommand) Outputs(paths WritablePaths) *RuleBuilderCommand {
// OutputDir adds the output directory to the command line. This is only available when used with RuleBuilder.Sbox,
// and will be the temporary output directory managed by sbox, not the final one.
func (c *RuleBuilderCommand) OutputDir() *RuleBuilderCommand {
func (c *RuleBuilderCommand) OutputDir(subPathComponents ...string) *RuleBuilderCommand {
if !c.rule.sbox {
panic("OutputDir only valid with Sbox")
}
return c.Text(sboxOutDir)
path := sboxOutDir
if len(subPathComponents) > 0 {
path = filepath.Join(append([]string{sboxOutDir}, subPathComponents...)...)
}
return c.Text(path)
}
// DepFile adds the specified depfile path to the paths returned by RuleBuilder.DepFiles and adds it to the command