1# Copyright (c) 2021 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/core/adapter/core_adapter.gni") 15import( 16 "//foundation/communication/dsoftbus/core/authentication/authentication.gni") 17import( 18 "//foundation/communication/dsoftbus/core/bus_center/bus_center_server.gni") 19import( 20 "//foundation/communication/dsoftbus/core/common/security/permission/permission.gni") 21import("//foundation/communication/dsoftbus/core/connection/conn.gni") 22import("//foundation/communication/dsoftbus/core/discovery/disc.gni") 23import("//foundation/communication/dsoftbus/core/transmission/trans.gni") 24import("//foundation/communication/dsoftbus/dsoftbus.gni") 25 26dsoftbus_server_common_src = 27 auth_server_src + bus_center_server_src + conn_manager_src + 28 disc_server_src + trans_session_src + softbus_permission_src 29dsoftbus_server_common_inc = 30 auth_server_inc + bus_center_server_inc + conn_manager_inc + 31 disc_server_inc + trans_session_inc + softbus_permission_inc 32dsoftbus_server_common_deps = 33 auth_server_deps + bus_center_server_deps + conn_manager_deps + 34 disc_server_deps + trans_session_deps + softbus_permission_deps 35 36if (defined(ohos_lite)) { 37 copy("permission_json") { 38 sources = [ "$dsoftbus_core_path/common/security/permission/softbus_trans_permission.json" ] 39 outputs = [ "$root_out_dir/etc/softbus_trans_permission.json" ] 40 } 41 if (ohos_kernel_type == "liteos_m") { 42 static_library("softbus_server_frame") { 43 defines = AUTH_SERVER_DEFINES 44 defines += [ "__STDC_FORMAT_MACROS" ] 45 include_dirs = dsoftbus_server_common_inc 46 include_dirs += [ 47 "$dsoftbus_root_path/core/frame/common/include", 48 "$dsoftbus_root_path/interfaces/kits", 49 "$dsoftbus_root_path/interfaces/kits/bus_center", 50 "$dsoftbus_root_path/interfaces/kits/transport", 51 "$dsoftbus_root_path/interfaces/kits/common", 52 "$dsoftbus_root_path/core/common/dfx/hidumper_adapter/include", 53 "$dsoftbus_root_path/core/common/dfx/hisysevent_adapter/include", 54 "$softbus_adapter_config/spec_config", 55 "//base/security/device_auth/interfaces/innerkits", 56 ] 57 sources = dsoftbus_server_common_src 58 sources += [ 59 "common/src/softbus_server_frame.c", 60 "mini/src/softbus_server_stub.c", 61 ] 62 if (board_toolchain_type != "iccarm") { 63 cflags = [ 64 "-Wall", 65 "-fPIC", 66 "-std=c99", 67 ] 68 cflags_cc = cflags 69 } else { 70 include_dirs += [ 71 "//kernel/liteos_m/components/net/lwip-2.1/porting/include", 72 "//third_party/lwip/src/include", 73 ] 74 cflags = [ 75 "--diag_suppress", 76 "Pe301", 77 ] 78 } 79 deps = dsoftbus_server_common_deps 80 deps += [ 81 "$dsoftbus_root_path/adapter:softbus_adapter", 82 "$dsoftbus_root_path/core/common:softbus_utils", 83 "//build/lite/config/component/cJSON:cjson_static", 84 ] 85 } 86 } else { 87 shared_library("softbus_server_frame") { 88 defines = AUTH_SERVER_DEFINES 89 defines += [ "__STDC_FORMAT_MACROS" ] 90 include_dirs = dsoftbus_server_common_inc 91 include_dirs += [ 92 "common/include", 93 "small/init/include", 94 "small/client_manager/include", 95 "$softbus_adapter_common/include", 96 "$softbus_adapter_config/spec_config", 97 "$dsoftbus_root_path/interfaces/kits/transport", 98 "$dsoftbus_root_path/core/common/dfx/hidumper_adapter/include", 99 "$dsoftbus_root_path/core/common/dfx/hisysevent_adapter/include", 100 "//base/security/device_auth/interfaces/innerkits", 101 "//commonlibrary/utils_lite/include", 102 "//third_party/bounds_checking_function/include", 103 ] 104 sources = dsoftbus_server_common_src 105 sources += [ 106 "common/src/softbus_server_frame.c", 107 "small/client_manager/src/softbus_client_info_manager.c", 108 "small/init/src/bus_center_server_stub.c", 109 "small/init/src/disc_server_stub.c", 110 "small/init/src/softbus_server_stub.c", 111 "small/init/src/trans_server_stub.c", 112 ] 113 114 cflags = [ 115 "-Wall", 116 "-fPIC", 117 "-fno-builtin", 118 "-std=c99", 119 ] 120 cflags_cc = cflags 121 deps = dsoftbus_server_common_deps 122 deps += [ 123 ":permission_json", 124 "$dsoftbus_root_path/adapter:softbus_adapter", 125 "$dsoftbus_root_path/core/common:softbus_utils", 126 "//build/lite/config/component/cJSON:cjson_shared", 127 "//foundation/communication/ipc/interfaces/innerkits/c/ipc:ipc_single", 128 "//foundation/systemabilitymgr/samgr_lite/samgr:samgr", 129 ] 130 } 131 executable("softbus_server") { 132 sources = [ "small/init/src/softbus_server_main.c" ] 133 include_dirs = [ "common/include" ] 134 deps = [ ":softbus_server_frame" ] 135 cflags = [ "-fPIC" ] 136 } 137 } 138} else { 139 ohos_prebuilt_etc("softbus_server.rc") { 140 relative_install_dir = "init" 141 if (use_musl) { 142 source = "$dsoftbus_root_path/core/frame/$os_type/init/src/softbus_server_musl.cfg" 143 } else { 144 source = 145 "$dsoftbus_root_path/core/frame/$os_type/init/src/softbus_server.cfg" 146 } 147 148 part_name = "dsoftbus" 149 subsystem_name = "communication" 150 } 151 ohos_prebuilt_etc("softbus_permission_json") { 152 source = "$dsoftbus_root_path/core/common/security/permission/softbus_trans_permission.json" 153 install_enable = true 154 relative_install_dir = "communication/softbus" 155 part_name = "dsoftbus" 156 } 157 ohos_shared_library("softbus_server") { 158 defines = AUTH_SERVER_DEFINES 159 defines += [ "__STDC_FORMAT_MACROS" ] 160 include_dirs = dsoftbus_server_common_inc 161 include_dirs += [ 162 "$dsoftbus_root_path/core/frame/common/include", 163 "$dsoftbus_root_path/core/frame/$os_type/client_manager/include", 164 "$dsoftbus_root_path/core/frame/$os_type/init/include", 165 "$dsoftbus_root_path/interfaces/kits/common", 166 "$dsoftbus_root_path/interfaces/kits/transport", 167 "$dsoftbus_feature_product_config_path/spec_config", 168 "$dsoftbus_root_path/core/common/include", 169 "$dsoftbus_root_path/core/common/dfx/hidumper_adapter/include", 170 "$dsoftbus_root_path/core/common/dfx/hisysevent_adapter/include", 171 "//base/security/access_token/interfaces/innerkits/privacy/include", 172 ] 173 sources = dsoftbus_server_common_src 174 sources += [ 175 "$dsoftbus_root_path/sdk/frame/$os_type/src/if_softbus_client.cpp", 176 "$os_type/client_manager/src/permission_status_change_cb.cpp", 177 "$os_type/client_manager/src/softbus_client_info_manager.cpp", 178 "$os_type/init/src/if_softbus_server.cpp", 179 "$os_type/init/src/softbus_server.cpp", 180 "$os_type/init/src/softbus_server_death_recipient.cpp", 181 "$os_type/init/src/softbus_server_stub.cpp", 182 "common/src/softbus_server_frame.c", 183 ] 184 deps = dsoftbus_server_common_deps 185 deps += [ 186 ":softbus_permission_json", 187 ":softbus_server.rc", 188 "$dsoftbus_root_path/adapter:softbus_adapter", 189 "$dsoftbus_root_path/core/common:softbus_utils", 190 "//third_party/cJSON:cjson", 191 ] 192 dsoftbus_server_common_external_deps = 193 bus_center_server_external_deps + disc_server_external_deps + 194 softbus_permission_external_deps + trans_session_external_deps 195 if (is_standard_system) { 196 external_deps = dsoftbus_server_common_external_deps 197 external_deps += [ 198 "access_token:libaccesstoken_sdk", 199 "access_token:libprivacy_sdk", 200 "device_auth:deviceauth_sdk", 201 "hiviewdfx_hilog_native:libhilog", 202 "ipc:ipc_core", 203 "safwk:system_ability_fwk", 204 "samgr:samgr_proxy", 205 ] 206 } 207 208 part_name = "dsoftbus" 209 subsystem_name = "communication" 210 } 211} 212