summaryrefslogtreecommitdiff
path: root/rust/androidmk.go
diff options
context:
space:
mode:
author hamzeh <hamzeh@google.com> 2021-04-29 12:50:47 -0700
committer hamzeh <hamzeh@google.com> 2021-05-01 00:55:42 -0700
commitc651b5295b6a59a43b2930188449fa6b98c754ff (patch)
tree3633c542b39c6f403243561acb9bb461f8e24dc2 /rust/androidmk.go
parent86477cfeb210252e477bcf712d8887c6157a57e8 (diff)
Add support for packaging rust fuzzers
Test: make haiku-rust Change-Id: Idd4d836d11e0ae615b59c6648d49348449589787
Diffstat (limited to 'rust/androidmk.go')
-rw-r--r--rust/androidmk.go34
1 files changed, 33 insertions, 1 deletions
diff --git a/rust/androidmk.go b/rust/androidmk.go
index 5f89d73c7..ea45ebd01 100644
--- a/rust/androidmk.go
+++ b/rust/androidmk.go
@@ -91,7 +91,6 @@ func (binary *binaryDecorator) AndroidMk(ctx AndroidMkContext, ret *android.Andr
if binary.distFile.Valid() {
ret.DistFiles = android.MakeDefaultDistFiles(binary.distFile.Path())
}
-
ret.Class = "EXECUTABLES"
}
@@ -201,3 +200,36 @@ func (compiler *baseCompiler) AndroidMk(ctx AndroidMkContext, ret *android.Andro
entries.SetString("LOCAL_MODULE_STEM", stem)
})
}
+
+func (fuzz *fuzzDecorator) AndroidMkEntries(ctx AndroidMkContext, entries *android.AndroidMkEntries) {
+ ctx.SubAndroidMk(entries, fuzz.binaryDecorator)
+
+ var fuzzFiles []string
+ for _, d := range fuzz.corpus {
+ fuzzFiles = append(fuzzFiles,
+ filepath.Dir(fuzz.corpusIntermediateDir.String())+":corpus/"+d.Base())
+ }
+
+ for _, d := range fuzz.data {
+ fuzzFiles = append(fuzzFiles,
+ filepath.Dir(fuzz.dataIntermediateDir.String())+":data/"+d.Rel())
+ }
+
+ if fuzz.dictionary != nil {
+ fuzzFiles = append(fuzzFiles,
+ filepath.Dir(fuzz.dictionary.String())+":"+fuzz.dictionary.Base())
+ }
+
+ if fuzz.config != nil {
+ fuzzFiles = append(fuzzFiles,
+ filepath.Dir(fuzz.config.String())+":config.json")
+ }
+
+ entries.ExtraEntries = append(entries.ExtraEntries, func(ctx android.AndroidMkExtraEntriesContext,
+ entries *android.AndroidMkEntries) {
+ entries.SetBool("LOCAL_IS_FUZZ_TARGET", true)
+ if len(fuzzFiles) > 0 {
+ entries.AddStrings("LOCAL_TEST_DATA", fuzzFiles...)
+ }
+ })
+}