• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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