xref: /drivers/peripheral/usb/net/BUILD.gn (revision 094332d3)
1# Copyright (c) 2021-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/components/hdi/hdi.gni")
15import("//build/ohos.gni")
16import("./../usb.gni")
17group("usbhost_ecm") {
18  deps = [ ":libusbhost_ecm" ]
19}
20
21ohos_shared_library("libusbhost_ecm") {
22  sanitize = {
23    integer_overflow = true
24    ubsan = true
25    boundary_sanitize = true
26    cfi = true
27    cfi_cross_dso = true
28    debug = false
29  }
30  branch_protector_ret = "pac_ret"
31
32  sources = [ "src/cdc_ether.c" ]
33
34  include_dirs = [
35    "./../ddk/common/include",
36    "./../ddk/host/include",
37    "./../interfaces/ddk/common",
38    "./../interfaces/ddk/host",
39    "./../gadget/function/include",
40    "//drivers/hdf_core/framework/model/usb/include",
41    "include",
42    "${usb_driver_path}/utils/include",
43  ]
44
45  deps = [ "./../ddk:libusb_ddk_host" ]
46
47  if (is_standard_system) {
48    external_deps = [
49      "hdf_core:libhdf_host",
50      "hdf_core:libhdf_utils",
51      "hilog:libhilog",
52    ]
53
54    if (usb_c_utils_enable) {
55      external_deps += [ "c_utils:utils" ]
56    }
57  } else {
58    external_deps = [ "hilog:libhilog" ]
59  }
60
61  shlib_type = "hdi"
62  install_images = [ chipset_base_dir ]
63  subsystem_name = "hdf"
64  part_name = "drivers_peripheral_usb"
65}
66
67group("usbhost_rndis_rawapi") {
68  deps = [ ":libusbhost_rndis_rawapi" ]
69}
70
71ohos_shared_library("libusbhost_rndis_rawapi") {
72  sanitize = {
73    integer_overflow = true
74    ubsan = true
75    boundary_sanitize = true
76    debug = false
77  }
78  sources = [
79    "src/rndis_rawapi.c",
80    "src/usb_net_host.c",
81  ]
82
83  include_dirs = [
84    "./../ddk/common/include",
85    "./../ddk/host/include",
86    "./../interfaces/ddk/common",
87    "./../interfaces/ddk/host",
88    "./../gadget/function/include",
89    "include",
90  ]
91
92  deps = [
93    "${usb_driver_path}/ddk:libusb_ddk_host",
94    "${usb_driver_path}/ddk:libusb_pnp_manager",
95  ]
96
97  if (is_standard_system) {
98    external_deps = [
99      "hdf_core:libhdf_host",
100      "hdf_core:libhdf_utils",
101      "hilog:libhilog",
102    ]
103
104    if (usb_c_utils_enable) {
105      external_deps += [ "c_utils:utils" ]
106    }
107  } else {
108    external_deps = [ "hilog:libhilog" ]
109  }
110
111  shlib_type = "hdi"
112  install_images = [ chipset_base_dir ]
113  subsystem_name = "hdf"
114  part_name = "drivers_peripheral_usb"
115}
116