• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2022-2023 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
14if (defined(ohos_lite)) {
15  import("//build/lite/config/component/lite_component.gni")
16} else {
17  import("//build/ohos.gni")
18}
19
20import("//foundation/distributedhardware/device_manager/device_manager.gni")
21
22if (defined(ohos_lite)) {
23  if (ohos_kernel_type == "linux") {
24    executable("devicemanagerservice") {
25      include_dirs = [
26        "include",
27        "include/advertise",
28        "include/discovery",
29        "include/softbus",
30        "include/ipc/lite",
31        "include/permission/lite",
32        "include/pinholder",
33        "${common_path}/include",
34        "${common_path}/include/ipc",
35        "${common_path}/include/ipc/lite",
36        "${common_path}/include/ipc/model",
37        "${common_path}/include/dfx",
38        "${common_path}/include/dfx/lite",
39        "${utils_path}/include",
40        "${utils_path}/include/appInfo/lite",
41        "${utils_path}/include/crypto",
42        "${utils_path}/include/fwkload/lite",
43        "${utils_path}/include/timer",
44        "${innerkits_path}/native_cpp/include",
45        "${innerkits_path}/native_cpp/include/ipc",
46        "${innerkits_path}/native_cpp/include/ipc/lite",
47        "//third_party/json/include",
48        "//third_party/bounds_checking_function/include",
49        "//base/hiviewdfx/hilog_lite/interfaces/native/kits/hilog_lite",
50        "${interfaces_path}/c/ipc/include",
51        "//foundation/distributedshedule/samgr_lite/interfaces/kits/samgr",
52        "//foundation/systemabilitymgr/samgr/interfaces/innerkits/samgr_proxy/include",
53        "${devicemanager_path}/radar/include",
54      ]
55
56      sources = [
57        "${common_path}/src/dm_softbus_adapter_crypto.cpp",
58        "src/advertise/advertise_manager.cpp",
59        "src/device_manager_service.cpp",
60        "src/device_manager_service_listener.cpp",
61        "src/discovery/discovery_filter.cpp",
62        "src/discovery/discovery_manager.cpp",
63        "src/ipc/lite/ipc_cmd_parser.cpp",
64        "src/ipc/lite/ipc_server_listener.cpp",
65        "src/ipc/lite/ipc_server_listenermgr.cpp",
66        "src/ipc/lite/ipc_server_main.cpp",
67        "src/ipc/lite/ipc_server_stub.cpp",
68        "src/permission/lite/permission_manager.cpp",
69        "src/pinholder/pin_holder.cpp",
70        "src/pinholder/pin_holder_session.cpp",
71        "src/softbus/softbus_listener.cpp",
72      ]
73
74      defines = [
75        "LITE_DEVICE",
76        "HI_LOG_ENABLE",
77        "DH_LOG_TAG=\"devicemanagerservice\"",
78        "LOG_DOMAIN=0xD004110",
79      ]
80
81      deps = [
82        "${utils_path}:devicemanagerutils",
83        "//base/security/device_auth/services:deviceauth_sdk",
84        "//base/startup/init/interfaces/innerkits:libbegetutil",
85        "//commonlibrary/utils_lite:utils",
86        "//foundation/communication/dsoftbus:dsoftbus",
87        "//foundation/systemabilitymgr/safwk_lite:safwk_lite",
88        "//foundation/systemabilitymgr/samgr_lite/samgr:samgr",
89        "//third_party/bounds_checking_function:libsec_shared",
90        "//third_party/mbedtls:mbedtls_shared",
91      ]
92
93      cflags = [
94        "-Wall",
95        "-O2",
96        "-Wdate-time",
97        "-Wextra",
98        "-Wfloat-equal",
99        "-Wshadow",
100      ]
101
102      cflags_cc = cflags
103    }
104  }
105} else if (!support_jsapi) {
106  group("devicemanagerservice") {
107    deps = []
108  }
109} else {
110  config("devicemanagerservice_config") {
111    include_dirs = [
112      "include",
113      "include/advertise",
114      "include/discovery",
115      "include/ipc",
116      "include/ipc/standard",
117      "include/permission/standard",
118      "include/pinholder",
119      "include/softbus",
120      "${common_path}/include",
121      "${common_path}/include/dfx",
122      "${common_path}/include/dfx/standard",
123      "${common_path}/include/ipc",
124      "${common_path}/include/ipc/model",
125      "${common_path}/include/ipc/standard",
126      "${devicemanager_path}/commondependency/include",
127      "${devicemanager_path}/radar/include",
128      "${innerkits_path}/native_cpp/include",
129      "${utils_path}/include/appInfo/standard",
130      "${utils_path}/include/crypto",
131      "${utils_path}/include/timer",
132      "//third_party/json/include",
133    ]
134  }
135
136  ohos_shared_library("devicemanagerservice") {
137    branch_protector_ret = "pac_ret"
138
139    sanitize = {
140      boundary_sanitize = true
141      cfi = true
142      cfi_cross_dso = true
143      debug = false
144      integer_overflow = true
145      ubsan = true
146    }
147
148    sources = [
149      "${common_path}/src/dfx/standard/dm_hidumper.cpp",
150      "${common_path}/src/dm_anonymous.cpp",
151      "${common_path}/src/dm_log.cpp",
152      "${common_path}/src/dm_softbus_adapter_crypto.cpp",
153      "${common_path}/src/ipc/standard/ipc_cmd_register.cpp",
154      "src/advertise/advertise_manager.cpp",
155      "src/device_manager_service.cpp",
156      "src/device_manager_service_listener.cpp",
157      "src/discovery/discovery_filter.cpp",
158      "src/discovery/discovery_manager.cpp",
159      "src/ipc/standard/ipc_cmd_parser.cpp",
160      "src/ipc/standard/ipc_server_client_proxy.cpp",
161      "src/ipc/standard/ipc_server_listener.cpp",
162      "src/ipc/standard/ipc_server_stub.cpp",
163      "src/permission/standard/permission_manager.cpp",
164      "src/pinholder/pin_holder.cpp",
165      "src/pinholder/pin_holder_session.cpp",
166      "src/softbus/softbus_listener.cpp",
167    ]
168
169    public_configs = [ ":devicemanagerservice_config" ]
170
171    defines = [
172      "HI_LOG_ENABLE",
173      "DH_LOG_TAG=\"devicemanagerservice\"",
174      "LOG_DOMAIN=0xD004110",
175    ]
176
177    deps = [
178      "${utils_path}:devicemanagerutils",
179      "//third_party/mbedtls:mbedtls_shared",
180    ]
181
182    external_deps = [
183      "access_token:libaccesstoken_sdk",
184      "c_utils:utils",
185      "device_info_manager:distributed_device_profile_common",
186      "device_info_manager:distributed_device_profile_sdk",
187      "dsoftbus:softbus_client",
188      "hilog:libhilog",
189      "init:libbeget_proxy",
190      "init:libbegetutil",
191      "ipc:ipc_core",
192      "ipc:ipc_single",
193      "safwk:system_ability_fwk",
194      "samgr:samgr_proxy",
195    ]
196
197    subsystem_name = "distributedhardware"
198
199    part_name = "device_manager"
200  }
201}
202