1# Copyright (c) 2022-2023 Huawei Device Co., Ltd.
2# Licensed under the Apache License, Version 2.0 (the "License");
3# you may not use this file except in compliance with the License.
4# You may obtain a copy of the License at
5#
6#     http://www.apache.org/licenses/LICENSE-2.0
7#
8# Unless required by applicable law or agreed to in writing, software
9# distributed under the License is distributed on an "AS IS" BASIS,
10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11# See the License for the specific language governing permissions and
12# limitations under the License.
13
14import("//build/config/features.gni")
15import("//build/ohos.gni")
16import("//build/test.gni")
17module_output_path = "drivers_peripheral_usb/drivers_peripheral_usb"
18
19ohos_fuzztest("UsbdeviceFuzzTest") {
20  module_out_path = module_output_path
21
22  fuzz_config_file = "./../../usbdevice_fuzzer"
23
24  include_dirs = [
25    "./../../../../hdi_service/include",
26    "./../../../../interfaces/ddk/host",
27    "./../../../../interfaces/ddk/common",
28    "./../../../../gadget/function/include",
29  ]
30  sources = [ "usbdevice_fuzzer.cpp" ]
31
32  deps = [
33    "./../../../../../interface/usb/v1_0:libusb_stub_1.0",
34    "./../../../../ddk:libusb_core",
35  ]
36
37  if (is_standard_system) {
38    external_deps = [
39      "hdf_core:libhdf_utils",
40      "hilog:libhilog",
41      "ipc:ipc_single",
42    ]
43    if (usb_c_utils_enable) {
44      external_deps += [ "c_utils:utils" ]
45    }
46  } else {
47    external_deps = [ "hilog:libhilog" ]
48  }
49
50  cflags = [
51    "-g",
52    "-O0",
53    "-Wno-unused-variable",
54    "-fno-omit-frame-pointer",
55  ]
56}
57
58group("fuzztest") {
59  testonly = true
60  deps = []
61  deps += [ ":UsbdeviceFuzzTest" ]
62}
63