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 include_dirs = dsoftbus_server_common_inc 45 include_dirs += [ 46 "$dsoftbus_root_path/core/frame/common/include", 47 "$dsoftbus_root_path/interfaces/kits", 48 "$dsoftbus_root_path/interfaces/kits/bus_center", 49 "$dsoftbus_root_path/interfaces/kits/transport", 50 "$dsoftbus_root_path/interfaces/kits/common", 51 "$softbus_adapter_config/spec_config", 52 "//base/security/deviceauth/interfaces/innerkits", 53 ] 54 sources = dsoftbus_server_common_src 55 sources += [ 56 "common/src/softbus_server_frame.c", 57 "mini/src/softbus_server_stub.c", 58 ] 59 cflags = [ 60 "-Wall", 61 "-fPIC", 62 "-std=c99", 63 ] 64 cflags_cc = cflags 65 deps = dsoftbus_server_common_deps 66 deps += [ 67 "$dsoftbus_root_path/adapter:softbus_adapter", 68 "$dsoftbus_root_path/core/common:softbus_utils", 69 "//build/lite/config/component/cJSON:cjson_static", 70 ] 71 } 72 } else { 73 shared_library("softbus_server_frame") { 74 defines = AUTH_SERVER_DEFINES 75 include_dirs = dsoftbus_server_common_inc 76 include_dirs += [ 77 "common/include", 78 "small/init/include", 79 "small/client_manager/include", 80 "$softbus_adapter_common/include", 81 "$softbus_adapter_config/spec_config", 82 "$dsoftbus_root_path/interfaces/kits/transport", 83 "//base/security/deviceauth/interfaces/innerkits", 84 "//utils/native/lite/include", 85 ] 86 sources = dsoftbus_server_common_src 87 sources += [ 88 "common/src/softbus_server_frame.c", 89 "small/client_manager/src/softbus_client_info_manager.c", 90 "small/init/src/bus_center_server_stub.c", 91 "small/init/src/disc_server_stub.c", 92 "small/init/src/softbus_server_stub.c", 93 "small/init/src/trans_server_stub.c", 94 ] 95 96 cflags = [ 97 "-Wall", 98 "-fPIC", 99 "-fno-builtin", 100 "-std=c99", 101 ] 102 cflags_cc = cflags 103 deps = dsoftbus_server_common_deps 104 deps += [ 105 ":permission_json", 106 "$dsoftbus_root_path/adapter:softbus_adapter", 107 "$dsoftbus_root_path/core/common:softbus_utils", 108 "//build/lite/config/component/cJSON:cjson_shared", 109 "//foundation/communication/ipc_lite:liteipc_adapter", 110 "//foundation/distributedschedule/samgr_lite/samgr:samgr", 111 "//third_party/bounds_checking_function:libsec_shared", 112 ] 113 } 114 executable("softbus_server") { 115 sources = [ "small/init/src/softbus_server_main.c" ] 116 include_dirs = [ "common/include" ] 117 deps = [ ":softbus_server_frame" ] 118 cflags = [ "-fPIC" ] 119 } 120 } 121} else { 122 ohos_prebuilt_etc("softbus_server.rc") { 123 relative_install_dir = "init" 124 if (use_musl) { 125 source = "$dsoftbus_root_path/core/frame/standard/init/src/softbus_server_musl.cfg" 126 } else { 127 source = 128 "$dsoftbus_root_path/core/frame/standard/init/src/softbus_server.cfg" 129 } 130 131 part_name = "dsoftbus_standard" 132 subsystem_name = "communication" 133 } 134 ohos_prebuilt_etc("softbus_permission_json") { 135 source = "$dsoftbus_root_path/core/common/security/permission/softbus_trans_permission.json" 136 install_enable = true 137 relative_install_dir = "communication/softbus" 138 part_name = "dsoftbus_standard" 139 } 140 ohos_shared_library("softbus_server") { 141 defines = AUTH_SERVER_DEFINES 142 include_dirs = dsoftbus_server_common_inc 143 include_dirs += [ 144 "$dsoftbus_root_path/core/frame/common/include", 145 "$dsoftbus_root_path/core/frame/standard/client_manager/include", 146 "$dsoftbus_root_path/core/frame/standard/init/include", 147 "$dsoftbus_root_path/interfaces/kits/common", 148 "$dsoftbus_root_path/interfaces/kits/transport", 149 "$softbus_adapter_config/spec_config", 150 "$dsoftbus_root_path/core/common/include", 151 ] 152 sources = dsoftbus_server_common_src 153 sources += [ 154 "$dsoftbus_root_path/sdk/frame/standard/src/if_softbus_client.cpp", 155 "common/src/softbus_server_frame.c", 156 "standard/client_manager/src/softbus_client_info_manager.cpp", 157 "standard/init/src/if_softbus_server.cpp", 158 "standard/init/src/softbus_server.cpp", 159 "standard/init/src/softbus_server_death_recipient.cpp", 160 "standard/init/src/softbus_server_stub.cpp", 161 ] 162 deps = dsoftbus_server_common_deps 163 deps += [ 164 ":softbus_permission_json", 165 ":softbus_server.rc", 166 "$dsoftbus_root_path/adapter:softbus_adapter", 167 "$dsoftbus_root_path/core/common:softbus_utils", 168 "//third_party/cJSON:cjson_static", 169 "//utils/native/base:utils", 170 ] 171 if (is_standard_system) { 172 external_deps = bus_center_server_external_deps 173 external_deps += [ 174 "deviceauth_standard:deviceauth_sdk", 175 "hiviewdfx_hilog_native:libhilog", 176 "ipc:ipc_core", 177 "safwk:system_ability_fwk", 178 "samgr_standard:samgr_proxy", 179 ] 180 } 181 182 part_name = "dsoftbus_standard" 183 subsystem_name = "communication" 184 } 185} 186