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