diff options
author | Cory Barker <cobark@google.com> | 2022-07-12 17:21:05 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2022-07-12 17:21:05 +0000 |
commit | 7e0b4bae8a4af77f15c5b690e1fe7e27c1086453 (patch) | |
tree | 7e62a86315a96e2f1fa433eb22a356fca5937370 /fuzz | |
parent | 1e3d27821b5be4a018814b0edfee7ffce5499686 (diff) | |
parent | f4b1c3a7a75fdbdf755d10f476d782c2ffe641c7 (diff) | |
download | soong-7e0b4bae8a4af77f15c5b690e1fe7e27c1086453.tar.gz |
Merge "Adding support for building AFLpp Test: Build AFL fuzzers locally and ran them"
Diffstat (limited to 'fuzz')
-rw-r--r-- | fuzz/fuzz_common.go | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/fuzz/fuzz_common.go b/fuzz/fuzz_common.go index 8e54d80ab..631380cc0 100644 --- a/fuzz/fuzz_common.go +++ b/fuzz/fuzz_common.go @@ -27,12 +27,13 @@ import ( "android/soong/android" ) -type Lang string +type FuzzType string const ( - Cc Lang = "" - Rust Lang = "rust" - Java Lang = "java" + Cc FuzzType = "" + Rust FuzzType = "rust" + Java FuzzType = "java" + AFL FuzzType = "AFL" ) var BoolDefault = proptools.BoolDefault @@ -47,6 +48,7 @@ type FuzzPackager struct { Packages android.Paths FuzzTargets map[string]bool SharedLibInstallStrings []string + FuzzType FuzzType } type FileToZip struct { @@ -265,7 +267,7 @@ func (f *FuzzConfig) String() string { return string(b) } -func (s *FuzzPackager) CreateFuzzPackage(ctx android.SingletonContext, archDirs map[ArchOs][]FileToZip, lang Lang, pctx android.PackageContext) { +func (s *FuzzPackager) CreateFuzzPackage(ctx android.SingletonContext, archDirs map[ArchOs][]FileToZip, fuzzType FuzzType, pctx android.PackageContext) { var archOsList []ArchOs for archOs := range archDirs { archOsList = append(archOsList, archOs) @@ -278,12 +280,15 @@ func (s *FuzzPackager) CreateFuzzPackage(ctx android.SingletonContext, archDirs hostOrTarget := archOs.HostOrTarget builder := android.NewRuleBuilder(pctx, ctx) zipFileName := "fuzz-" + hostOrTarget + "-" + arch + ".zip" - if lang == Rust { + if fuzzType == Rust { zipFileName = "fuzz-rust-" + hostOrTarget + "-" + arch + ".zip" } - if lang == Java { + if fuzzType == Java { zipFileName = "fuzz-java-" + hostOrTarget + "-" + arch + ".zip" } + if fuzzType == AFL { + zipFileName = "fuzz-afl-" + hostOrTarget + "-" + arch + ".zip" + } outputFile := android.PathForOutput(ctx, zipFileName) s.Packages = append(s.Packages, outputFile) @@ -294,7 +299,6 @@ func (s *FuzzPackager) CreateFuzzPackage(ctx android.SingletonContext, archDirs Flag("-L 0") // No need to try and re-compress the zipfiles. for _, fileToZip := range filesToZip { - if fileToZip.DestinationPathPrefix != "" { command.FlagWithArg("-P ", fileToZip.DestinationPathPrefix) } else { @@ -313,6 +317,7 @@ func (s *FuzzPackager) PreallocateSlice(ctx android.MakeVarsContext, targets str for target, _ := range s.FuzzTargets { fuzzTargets = append(fuzzTargets, target) } + sort.Strings(fuzzTargets) ctx.Strict(targets, strings.Join(fuzzTargets, " ")) } |