# Copyright 2019 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//build/fuzzing/fuzzer.gni")
import("//build/go/go_fuzzer.gni")
import("//build/go/go_library.gni")

go_fuzzer("basic_fuzzer") {
  gopackage = "go.fuchsia.dev/fuchsia/examples/fuzzers/go/basic"
  deps = [ ":fuzzer_lib" ]
}

go_library("fuzzer_lib") {
  sources = [ "basic/basic.go" ]
  deps = [ "//src/testing/fuzzing/go:fuzzing" ]
}
