Support deps files with no output

AIDL generates a deps file with no output listed temporarily pass it
through without error in the makedeps parser.

Bug: 141372861
Test: m checkbuild
Change-Id: I8c6740833dbc2ff3318dfc424ec497728cfc48d2
This commit is contained in:
Colin Cross 2019-10-04 12:34:19 -07:00
parent 332f35fc92
commit 5274d581eb
2 changed files with 19 additions and 3 deletions

View File

@ -57,10 +57,12 @@ func Parse(filename string, r io.Reader) (*Deps, error) {
return nil, fmt.Errorf("%sunsupported variable expansion: %v", pos(node), x.Target.Dump())
}
outputs := x.Target.Words()
if len(outputs) == 0 {
return nil, fmt.Errorf("%smissing output: %v", pos(node), x)
if len(outputs) > 0 {
ret.Output = outputs[0].Value(nil)
} else {
// TODO(b/141372861): put this back
//return nil, fmt.Errorf("%smissing output: %v", pos(node), x)
}
ret.Output = outputs[0].Value(nil)
if !x.Prerequisites.Const() {
return nil, fmt.Errorf("%sunsupported variable expansion: %v", pos(node), x.Prerequisites.Dump())

View File

@ -147,6 +147,20 @@ b: e`,
},
},
},
{
// TODO(b/141372861): remove this
// AIDL produces a dep file with no output file for a parcelable (b/
name: "AIDL parcelable",
input: ` : \
frameworks/base/tests/net/integration/src/com/android/server/net/integrationtests/HttpResponse.aidl
`,
output: Deps{
Output: "",
Inputs: []string{
"frameworks/base/tests/net/integration/src/com/android/server/net/integrationtests/HttpResponse.aidl",
},
},
},
}
for _, tc := range testCases {