• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2021-2025 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("//build/ohos.gni")
15import("//build/ohos_var.gni")
16import("//foundation/deviceprofile/device_info_manager/deviceprofile.gni")
17
18config("device_info_manager_config") {
19  visibility = [ ":*" ]
20  visibility += [ "./test/*" ]
21  include_dirs = [
22    "include",
23    "include/contentsensormanager",
24    "include/common",
25    "include/data_share",
26    "include/deviceprofilemanager",
27    "include/deviceprofilemanager/listener",
28    "include/dfx",
29    "include/dm_adapter",
30    "include/localserviceinfomanager",
31    "include/multiusermanager",
32    "include/permissionmanager",
33    "include/persistenceadapter",
34    "include/persistenceadapter/assetadapter",
35    "include/persistenceadapter/kvadapter",
36    "include/persistenceadapter/rdbadapter",
37    "include/profiledatamanager",
38    "include/publishcommonevent",
39    "include/serviceinfoprofile_manager",
40    "include/sessionkeymanager",
41    "include/subscribeprofilemanager",
42    "include/staticcapabilitycollector",
43    "include/staticcapabilityloader",
44    "include/trustprofilemanager",
45    "include/utils",
46    "${device_profile_common}/include/constants",
47    "${device_profile_common}/include/interfaces",
48    "${device_profile_common}/include/utils",
49    "${device_profile_path}/radar/include",
50  ]
51}
52
53ohos_shared_library("distributed_device_profile_svr") {
54  branch_protector_ret = "pac_ret"
55
56  ldflags = [
57    "-Wl,-z,relro",
58    "-Wl,-z,now",
59  ]
60
61  cflags = [
62    "-fPIC",
63    "-fstack-protector-strong",
64    "-D_FORTIFY_SOURCE=2",
65    "-O2",
66  ]
67  if (dp_os_account_part_exists) {
68    cflags += [ "-DDP_OS_ACCOUNT_PART_EXISTS" ]
69  }
70
71  cflags_cc = cflags
72
73  sanitize = {
74    boundary_sanitize = true
75    integer_overflow = true
76    ubsan = true
77    debug = false
78  }
79
80  install_enable = true
81  sources = [
82    "src/common/dp_services_constants.cpp",
83    "src/contentsensormanager/collaboration_info_collector.cpp",
84    "src/contentsensormanager/collector.cpp",
85    "src/contentsensormanager/content_sensor_manager.cpp",
86    "src/contentsensormanager/dms_info_collector.cpp",
87    "src/contentsensormanager/pasteboard_info_collector.cpp",
88    "src/contentsensormanager/switch_status_collector.cpp",
89    "src/contentsensormanager/syscap_info_collector.cpp",
90    "src/contentsensormanager/system_info_collector.cpp",
91    "src/datashare/settings_data_manager.cpp",
92    "src/deviceprofilemanager/device_profile_manager.cpp",
93    "src/deviceprofilemanager/listener/kv_data_change_listener.cpp",
94    "src/deviceprofilemanager/listener/kv_store_death_recipient.cpp",
95    "src/deviceprofilemanager/listener/kv_sync_completed_listener.cpp",
96    "src/deviceprofilemanager/listener/sync_subscriber_death_recipient.cpp",
97    "src/deviceprofilemanager/static_profile_manager.cpp",
98    "src/deviceprofilemanager/switch_profile_manager.cpp",
99    "src/dfx/device_profile_dumper.cpp",
100    "src/distributed_device_profile_service_new.cpp",
101    "src/distributed_device_profile_stub_new.cpp",
102    "src/dm_adapter/dm_adapter.cpp",
103    "src/localserviceinfomanager/local_service_info_manager.cpp",
104    "src/multiusermanager/multi_user_manager.cpp",
105    "src/permissionmanager/permission_manager.cpp",
106    "src/persistenceadapter/assetadapter/asset_adapter.cpp",
107    "src/persistenceadapter/kvadapter/kv_adapter.cpp",
108    "src/persistenceadapter/kvadapter/switch_adapter.cpp",
109    "src/persistenceadapter/rdbadapter/local_service_info_rdb_adapter.cpp",
110    "src/persistenceadapter/rdbadapter/profile_data_rdb_adapter.cpp",
111    "src/persistenceadapter/rdbadapter/rdb_adapter.cpp",
112    "src/persistenceadapter/rdbadapter/service_info_rdb_adapter.cpp",
113    "src/profiledatamanager/device_icon_info_dao.cpp",
114    "src/profiledatamanager/device_profile_dao.cpp",
115    "src/profiledatamanager/product_info_dao.cpp",
116    "src/profiledatamanager/profile_data_manager.cpp",
117    "src/publishcommonevent/dp_account_common_event.cpp",
118    "src/serviceinfoprofile_manager/service_info_profile_manager.cpp",
119    "src/sessionkeymanager/session_key_manager.cpp",
120    "src/staticcapabilitycollector/static_capability_collector.cpp",
121    "src/staticcapabilityloader/static_capability_loader.cpp",
122    "src/subscribeprofilemanager/subscribe_profile_manager.cpp",
123    "src/trustprofilemanager/trust_profile_manager.cpp",
124    "src/utils/event_handler_factory.cpp",
125    "src/utils/profile_cache.cpp",
126    "src/utils/profile_control_utils.cpp",
127  ]
128
129  deps = [
130    "${device_profile_common}:distributed_device_profile_common",
131    "${device_profile_path}/radar:device_profile_radar",
132  ]
133
134  configs = [ ":device_info_manager_config" ]
135
136  external_deps = [
137    "access_token:libaccesstoken_sdk",
138    "asset:asset_sdk",
139    "cJSON:cjson",
140    "c_utils:utils",
141    "common_event_service:cesfwk_core",
142    "common_event_service:cesfwk_innerkits",
143    "config_policy:configpolicy_util",
144    "data_share:datashare_consumer",
145    "device_auth:deviceauth_sdk",
146    "device_manager:devicemanagersdk",
147    "dmsfwk:common_sdk",
148    "eventhandler:libeventhandler",
149    "ffrt:libffrt",
150    "hilog:libhilog",
151    "hisysevent:libhisysevent",
152    "hitrace:hitrace_meter",
153    "init:libbegetutil",
154    "ipc:ipc_core",
155    "kv_store:distributeddata_inner",
156    "os_account:libaccountkits",
157    "os_account:os_account_innerkits",
158    "relational_store:native_rdb",
159    "safwk:system_ability_fwk",
160    "samgr:samgr_common",
161    "samgr:samgr_proxy",
162    "syscap_codec:syscap_interface_shared",
163  ]
164
165  part_name = "device_info_manager"
166  subsystem_name = "deviceprofile"
167}
168
169group("unittest") {
170  testonly = true
171  deps = [ "test:unittest" ]
172}
173