aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJiakai Zhang <jiakaiz@google.com>2021-11-02 17:47:14 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2021-11-02 17:47:14 +0000
commitc759b8236cdd849a4abc2d4fdce5ae00ff896d25 (patch)
treec07a2bfb17268d696ddd51fc709d90fef78597de
parentbb0cc22c426119d1ea08f751337b982f52bf13e5 (diff)
parent60bece0c18093107f4ad02a3828ed94f3b5895cd (diff)
downloadxsdc-c759b8236cdd849a4abc2d4fdce5ae00ff896d25.tar.gz
Implement `OutputFileProducer` for `xsdConfig`. am: 60bece0c18
Original change: https://android-review.googlesource.com/c/platform/system/tools/xsdc/+/1877223 Change-Id: I686143e52f1078d4771e5a5b694327c768bfcbd2
-rw-r--r--build/xsdc.go22
1 files changed, 22 insertions, 0 deletions
diff --git a/build/xsdc.go b/build/xsdc.go
index 48bd9c9..698008c 100644
--- a/build/xsdc.go
+++ b/build/xsdc.go
@@ -17,6 +17,7 @@ package xsdc
import (
"android/soong/android"
"android/soong/java"
+ "fmt"
"path/filepath"
"strings"
@@ -305,3 +306,24 @@ func xsdConfigFactory() android.Module {
return module
}
+
+func (module *xsdConfig) OutputFiles(tag string) (android.Paths, error) {
+ switch tag {
+ case "":
+ var outputs android.WritablePaths
+ outputs = append(outputs, module.genOutputs_j)
+ outputs = append(outputs, module.genOutputs_c...)
+ outputs = append(outputs, module.genOutputs_h...)
+ return outputs.Paths(), nil
+ case "java":
+ return android.Paths{module.genOutputs_j}, nil
+ case "cpp":
+ return module.genOutputs_c.Paths(), nil
+ case "h":
+ return module.genOutputs_h.Paths(), nil
+ default:
+ return nil, fmt.Errorf("unsupported module reference tag %q", tag)
+ }
+}
+
+var _ android.OutputFileProducer = (*xsdConfig)(nil);