• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2022 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("//foundation/communication/dsoftbus/dsoftbus.gni")
15
16fillp_source = [
17  "src/app_lib/src/api.c",
18  "src/app_lib/src/epoll_app.c",
19  "src/app_lib/src/fillp_stack_app_config.c",
20  "src/app_lib/src/fillp_stack_app_config_in.c",
21  "src/app_lib/src/socket_app.c",
22  "src/app_lib/src/spunge_app.c",
23  "src/app_lib/src/socket_opt.c",
24  "src/fillp_lib/src/fillp_buf_item.c",
25  "src/fillp_lib/src/fillp_cookie.c",
26  "src/fillp_lib/src/fillp_stack_config.c",
27  "src/fillp_lib/src/fillp_stack_config_in.c",
28  "src/fillp_lib/src/hmac.c",
29  "src/fillp_lib/src/net.c",
30  "src/fillp_lib/src/pcb.c",
31  "src/fillp_lib/src/res.c",
32  "src/fillp_lib/src/sha256.c",
33  "src/fillp_lib/src/spunge_core.c",
34  "src/fillp_lib/src/spunge_stack.c",
35  "src/fillp_lib/src/sysio.c",
36  "src/fillp_lib/src/sysio_udp.c",
37  "src/fillp_lib/src/fillp/fillp.c",
38  "src/fillp_lib/src/fillp/fillp_common.c",
39  "src/fillp_lib/src/fillp/fillp_conn.c",
40  "src/fillp_lib/src/fillp/fillp_flow_control_alg0.c",
41  "src/fillp_lib/src/fillp/fillp_flow_control.c",
42  "src/fillp_lib/src/fillp/fillp_input.c",
43  "src/fillp_lib/src/fillp/fillp_output.c",
44  "src/fillp_lib/src/fillp/fillp_pcb.c",
45  "src/fillp_lib/src/fillp/fillp_timer.c",
46  "src/fillp_lib/src/fillp/fillp_frame.c",
47  "src/public/src/callbacks.c",
48  "src/public/src/dympool.c",
49  "src/public/src/epoll.c",
50  "src/public/src/fillp_os.c",
51  "src/public/src/lf_ring.c",
52  "src/public/src/log.c",
53  "src/public/src/mem_pool.c",
54  "src/public/src/rb_tree.c",
55  "src/public/src/skiplist.c",
56  "src/public/src/socket_common.c",
57  "src/public/src/spunge.c",
58  "src/public/src/spunge_mem.c",
59  "src/public/src/spunge_message.c",
60  "src/public/src/timing_wheel.c",
61]
62
63fillp_include = [
64  "include",
65  "src/app_lib/include",
66  "src/fillp_lib/include",
67  "src/fillp_lib/include/fillp",
68  "src/public/include",
69]
70
71fillp_cflags = [
72  "-DPDT_MIRACAST",
73  "-DFILLP_SERVER_SUPPORT",
74  "-DFILLP_LITTLE_ENDIAN",
75  "-DFILLP_LINUX",
76  "-DFILLP_POWER_SAVE",
77  "-DFILLP_POWER_SAVING_LINUX",
78]
79
80if (defined(ohos_lite)) {
81  import("//build/lite/config/component/lite_component.gni")
82  shared_library("FillpSo.open") {
83    cflags = fillp_cflags
84    cflags += [ "-Wall" ]
85    include_dirs = fillp_include
86    include_dirs += [ "//third_party/bounds_checking_function/include/" ]
87    sources = fillp_source
88    deps = [ "//third_party/bounds_checking_function:libsec_shared" ]
89
90    if (ohos_kernel_type == "liteos_a") {
91      cflags += [ "-DNSTACKX_WITH_LITEOS" ]
92    } else {
93      cflags += [ "-DNSTACKX_WITH_HMOS_LINUX" ]
94    }
95  }
96} else {
97  import("//build/ohos.gni")
98  ohos_shared_library("FillpSo.open") {
99    cflags = fillp_cflags
100    cflags += [
101      "-Wall",
102      "-DNSTACKX_WITH_HMOS_LINUX",
103    ]
104
105    include_dirs = fillp_include
106    include_dirs += [ "//utils/native/base/include/" ]
107    sources = fillp_source
108    deps = [ "//utils/native/base:utilsecurec_shared" ]
109
110    part_name = "dsoftbus_standard"
111    subsystem_name = "communication"
112  }
113}
114