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