1f7a47986Sopenharmony_ci# Copyright (c) 2022-2024 Huawei Device Co., Ltd.
2f7a47986Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
3f7a47986Sopenharmony_ci# you may not use this file except in compliance with the License.
4f7a47986Sopenharmony_ci# You may obtain a copy of the License at
5f7a47986Sopenharmony_ci#
6f7a47986Sopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
7f7a47986Sopenharmony_ci#
8f7a47986Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software
9f7a47986Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
10f7a47986Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11f7a47986Sopenharmony_ci# See the License for the specific language governing permissions and
12f7a47986Sopenharmony_ci# limitations under the License.
13f7a47986Sopenharmony_ci
14f7a47986Sopenharmony_ciimport("//build/ohos.gni")
15f7a47986Sopenharmony_ciimport("../../common/config/common.gni")
16f7a47986Sopenharmony_ci
17f7a47986Sopenharmony_ciconfig("edm_config") {
18f7a47986Sopenharmony_ci  cflags = [ "-Wno-error=implicit-fallthrough" ]
19f7a47986Sopenharmony_ci  include_dirs = [
20f7a47986Sopenharmony_ci    "include",
21f7a47986Sopenharmony_ci    "include/connection",
22f7a47986Sopenharmony_ci    "include/database",
23f7a47986Sopenharmony_ci    "include/strategy",
24f7a47986Sopenharmony_ci    "../../framework/extension/include",
25f7a47986Sopenharmony_ci    "../edm_plugin/include",
26f7a47986Sopenharmony_ci    "../edm_plugin/include/network",
27f7a47986Sopenharmony_ci    "../edm_plugin/include/network/executer",
28f7a47986Sopenharmony_ci    "../edm_plugin/include/network/rule",
29f7a47986Sopenharmony_ci    "../edm_plugin/include/utils",
30f7a47986Sopenharmony_ci  ]
31f7a47986Sopenharmony_ci}
32f7a47986Sopenharmony_ci
33f7a47986Sopenharmony_ciohos_shared_library("edmservice") {
34f7a47986Sopenharmony_ci  sources = [
35f7a47986Sopenharmony_ci    "../edm_plugin/src/utils/install_param_serializer.cpp",
36f7a47986Sopenharmony_ci    "../edm_plugin/src/utils/installer_callback.cpp",
37f7a47986Sopenharmony_ci    "../edm_plugin/src/utils/operate_device_param_serializer.cpp",
38f7a47986Sopenharmony_ci    "../edm_plugin/src/utils/uninstall_param_serializer.cpp",
39f7a47986Sopenharmony_ci    "../edm_plugin/src/utils/update_policy_serializer.cpp",
40f7a47986Sopenharmony_ci    "../edm_plugin/src/utils/upgrade_package_info_serializer.cpp",
41f7a47986Sopenharmony_ci    "../edm_plugin/src/utils/watermark_application_observer.cpp",
42f7a47986Sopenharmony_ci    "../edm_plugin/src/utils/watermark_image_serializer.cpp",
43f7a47986Sopenharmony_ci    "./src/admin.cpp",
44f7a47986Sopenharmony_ci    "./src/admin_manager.cpp",
45f7a47986Sopenharmony_ci    "./src/admin_policies_storage_rdb.cpp",
46f7a47986Sopenharmony_ci    "./src/application_state_observer.cpp",
47f7a47986Sopenharmony_ci    "./src/connection/enterprise_admin_connection.cpp",
48f7a47986Sopenharmony_ci    "./src/connection/enterprise_admin_proxy.cpp",
49f7a47986Sopenharmony_ci    "./src/connection/enterprise_bundle_connection.cpp",
50f7a47986Sopenharmony_ci    "./src/connection/enterprise_conn_manager.cpp",
51f7a47986Sopenharmony_ci    "./src/connection/enterprise_update_connection.cpp",
52f7a47986Sopenharmony_ci    "./src/database/edm_rdb_data_manager.cpp",
53f7a47986Sopenharmony_ci    "./src/database/edm_rdb_open_callback.cpp",
54f7a47986Sopenharmony_ci    "./src/device_policies_storage_rdb.cpp",
55f7a47986Sopenharmony_ci    "./src/enterprise_device_mgr_ability.cpp",
56f7a47986Sopenharmony_ci    "./src/enterprise_device_mgr_stub.cpp",
57f7a47986Sopenharmony_ci    "./src/permission_manager.cpp",
58f7a47986Sopenharmony_ci    "./src/plugin_manager.cpp",
59f7a47986Sopenharmony_ci    "./src/policy_manager.cpp",
60f7a47986Sopenharmony_ci    "./src/strategy/enhance_execute_strategy.cpp",
61f7a47986Sopenharmony_ci    "./src/strategy/replace_execute_strategy.cpp",
62f7a47986Sopenharmony_ci    "./src/strategy/single_execute_strategy.cpp",
63f7a47986Sopenharmony_ci    "./src/super_admin.cpp",
64f7a47986Sopenharmony_ci    "./src/user_policy_manager.cpp",
65f7a47986Sopenharmony_ci  ]
66f7a47986Sopenharmony_ci  public_configs = [
67f7a47986Sopenharmony_ci    ":edm_config",
68f7a47986Sopenharmony_ci    "../../common/config:coverage_flags",
69f7a47986Sopenharmony_ci  ]
70f7a47986Sopenharmony_ci
71f7a47986Sopenharmony_ci  defines = []
72f7a47986Sopenharmony_ci
73f7a47986Sopenharmony_ci  if (target_cpu == "arm64") {
74f7a47986Sopenharmony_ci    defines += [ "_ARM64_" ]
75f7a47986Sopenharmony_ci    print("defines _ARM64_")
76f7a47986Sopenharmony_ci  }
77f7a47986Sopenharmony_ci
78f7a47986Sopenharmony_ci  if (target_cpu == "x86_64") {
79f7a47986Sopenharmony_ci    defines += [ "_X86_64_" ]
80f7a47986Sopenharmony_ci    print("defines _X86_64_")
81f7a47986Sopenharmony_ci  }
82f7a47986Sopenharmony_ci
83f7a47986Sopenharmony_ci  external_deps = [
84f7a47986Sopenharmony_ci    "ability_base:want",
85f7a47986Sopenharmony_ci    "ability_runtime:ability_connect_callback_stub",
86f7a47986Sopenharmony_ci    "ability_runtime:app_manager",
87f7a47986Sopenharmony_ci    "ability_runtime:extension_manager",
88f7a47986Sopenharmony_ci    "ability_runtime:wantagent_innerkits",
89f7a47986Sopenharmony_ci    "access_token:libaccesstoken_sdk",
90f7a47986Sopenharmony_ci    "access_token:libtokenid_sdk",
91f7a47986Sopenharmony_ci    "bundle_framework:appexecfwk_base",
92f7a47986Sopenharmony_ci    "bundle_framework:appexecfwk_core",
93f7a47986Sopenharmony_ci    "cJSON:cjson",
94f7a47986Sopenharmony_ci    "c_utils:utils",
95f7a47986Sopenharmony_ci    "file_api:securitylabel",
96f7a47986Sopenharmony_ci    "graphic_2d:librender_service_client",
97f7a47986Sopenharmony_ci    "hilog:libhilog",
98f7a47986Sopenharmony_ci    "init:libbegetutil",
99f7a47986Sopenharmony_ci    "ipc:ipc_core",
100f7a47986Sopenharmony_ci    "jsoncpp:jsoncpp",
101f7a47986Sopenharmony_ci    "relational_store:native_rdb",
102f7a47986Sopenharmony_ci    "safwk:system_ability_fwk",
103f7a47986Sopenharmony_ci    "samgr:samgr_proxy",
104f7a47986Sopenharmony_ci    "window_manager:libwm",
105f7a47986Sopenharmony_ci    "window_manager:sms",
106f7a47986Sopenharmony_ci  ]
107f7a47986Sopenharmony_ci  if (enterprise_device_management_support_all) {
108f7a47986Sopenharmony_ci    defines += [ "EDM_SUPPORT_ALL_ENABLE" ]
109f7a47986Sopenharmony_ci    sources += [
110f7a47986Sopenharmony_ci      "../edm_plugin/src/allowed_install_bundles_plugin.cpp",
111f7a47986Sopenharmony_ci      "../edm_plugin/src/bundle_install_plugin.cpp",
112f7a47986Sopenharmony_ci      "../edm_plugin/src/disallow_modify_datetime_plugin.cpp",
113f7a47986Sopenharmony_ci      "../edm_plugin/src/disallowed_install_bundles_plugin.cpp",
114f7a47986Sopenharmony_ci      "../edm_plugin/src/disallowed_tethering_plugin.cpp",
115f7a47986Sopenharmony_ci      "../edm_plugin/src/disallowed_uninstall_bundles_plugin.cpp",
116f7a47986Sopenharmony_ci      "../edm_plugin/src/get_device_encryption_status_plugin.cpp",
117f7a47986Sopenharmony_ci      "../edm_plugin/src/get_device_info_plugin.cpp",
118f7a47986Sopenharmony_ci      "../edm_plugin/src/get_display_version_plugin.cpp",
119f7a47986Sopenharmony_ci      "../edm_plugin/src/get_security_patch_tag_plugin.cpp",
120f7a47986Sopenharmony_ci      "../edm_plugin/src/inactive_user_freeze_plugin.cpp",
121f7a47986Sopenharmony_ci      "../edm_plugin/src/install_plugin.cpp",
122f7a47986Sopenharmony_ci      "../edm_plugin/src/notify_update_packages_plugin.cpp",
123f7a47986Sopenharmony_ci      "../edm_plugin/src/ntp_server_plugin.cpp",
124f7a47986Sopenharmony_ci      "../edm_plugin/src/operate_device_plugin.cpp",
125f7a47986Sopenharmony_ci      "../edm_plugin/src/power_policy_plugin.cpp",
126f7a47986Sopenharmony_ci      "../edm_plugin/src/screen_off_time_plugin.cpp",
127f7a47986Sopenharmony_ci      "../edm_plugin/src/set_update_policy_plugin.cpp",
128f7a47986Sopenharmony_ci      "../edm_plugin/src/set_watermark_image_plugin.cpp",
129f7a47986Sopenharmony_ci      "../edm_plugin/src/snapshot_skip_plugin.cpp",
130f7a47986Sopenharmony_ci      "../edm_plugin/src/uninstall_plugin.cpp",
131f7a47986Sopenharmony_ci      "../edm_plugin/src/utils/battery_utils.cpp",
132f7a47986Sopenharmony_ci    ]
133f7a47986Sopenharmony_ci    if (time_service_edm_enable) {
134f7a47986Sopenharmony_ci      external_deps += [ "time_service:time_client" ]
135f7a47986Sopenharmony_ci      sources += [ "../edm_plugin/src/set_datetime_plugin.cpp" ]
136f7a47986Sopenharmony_ci    }
137f7a47986Sopenharmony_ci
138f7a47986Sopenharmony_ci    if (os_account_edm_enable) {
139f7a47986Sopenharmony_ci      external_deps += [
140f7a47986Sopenharmony_ci        "os_account:libaccountkits",
141f7a47986Sopenharmony_ci        "os_account:os_account_innerkits",
142f7a47986Sopenharmony_ci      ]
143f7a47986Sopenharmony_ci      sources += [
144f7a47986Sopenharmony_ci        "../edm_plugin/src/add_os_account_plugin.cpp",
145f7a47986Sopenharmony_ci        "../edm_plugin/src/disallow_add_local_account_plugin.cpp",
146f7a47986Sopenharmony_ci        "../edm_plugin/src/disallow_add_os_account_by_user_plugin.cpp",
147f7a47986Sopenharmony_ci      ]
148f7a47986Sopenharmony_ci      defines += [ "OS_ACCOUNT_EDM_ENABLE" ]
149f7a47986Sopenharmony_ci    }
150f7a47986Sopenharmony_ci
151f7a47986Sopenharmony_ci    if (screenlock_mgr_edm_enable) {
152f7a47986Sopenharmony_ci      external_deps += [ "screenlock_mgr:screenlock_client" ]
153f7a47986Sopenharmony_ci      sources += [ "../edm_plugin/src/lock_screen_plugin.cpp" ]
154f7a47986Sopenharmony_ci    }
155f7a47986Sopenharmony_ci
156f7a47986Sopenharmony_ci    if (power_manager_edm_enable) {
157f7a47986Sopenharmony_ci      external_deps += [ "power_manager:powermgr_client" ]
158f7a47986Sopenharmony_ci      sources += [
159f7a47986Sopenharmony_ci        "../edm_plugin/src/reboot_plugin.cpp",
160f7a47986Sopenharmony_ci        "../edm_plugin/src/shutdown_plugin.cpp",
161f7a47986Sopenharmony_ci      ]
162f7a47986Sopenharmony_ci    }
163f7a47986Sopenharmony_ci
164f7a47986Sopenharmony_ci    if (update_service_edm_enable) {
165f7a47986Sopenharmony_ci      external_deps += [ "update_service:updateservicekits" ]
166f7a47986Sopenharmony_ci      sources += [ "../edm_plugin/src/reset_factory_plugin.cpp" ]
167f7a47986Sopenharmony_ci    }
168f7a47986Sopenharmony_ci
169f7a47986Sopenharmony_ci    if (wifi_edm_enable) {
170f7a47986Sopenharmony_ci      external_deps += [ "wifi:wifi_sdk" ]
171f7a47986Sopenharmony_ci      sources += [
172f7a47986Sopenharmony_ci        "../edm_plugin/src/is_wifi_active_plugin.cpp",
173f7a47986Sopenharmony_ci        "../edm_plugin/src/set_wifi_disabled_plugin.cpp",
174f7a47986Sopenharmony_ci        "../edm_plugin/src/set_wifi_profile_plugin.cpp",
175f7a47986Sopenharmony_ci        "../edm_plugin/src/utils/wifi_device_config_serializer.cpp",
176f7a47986Sopenharmony_ci      ]
177f7a47986Sopenharmony_ci      defines += [ "WIFI_EDM_ENABLE" ]
178f7a47986Sopenharmony_ci    }
179f7a47986Sopenharmony_ci
180f7a47986Sopenharmony_ci    if (netmanager_base_edm_enable) {
181f7a47986Sopenharmony_ci      defines += [ "NET_MANAGER_BASE_EDM_ENABLE" ]
182f7a47986Sopenharmony_ci      external_deps += [
183f7a47986Sopenharmony_ci        "netmanager_base:net_conn_manager_if",
184f7a47986Sopenharmony_ci        "netmanager_base:net_native_manager_if",
185f7a47986Sopenharmony_ci        "netmanager_base:net_policy_manager_if",
186f7a47986Sopenharmony_ci        "netmanager_base:netsys_controller",
187f7a47986Sopenharmony_ci      ]
188f7a47986Sopenharmony_ci      sources += [
189f7a47986Sopenharmony_ci        "../edm_plugin/src/disabled_network_interface_plugin.cpp",
190f7a47986Sopenharmony_ci        "../edm_plugin/src/domain_filter_rule_plugin.cpp",
191f7a47986Sopenharmony_ci        "../edm_plugin/src/firewall_rule_plugin.cpp",
192f7a47986Sopenharmony_ci        "../edm_plugin/src/global_proxy_plugin.cpp",
193f7a47986Sopenharmony_ci        "../edm_plugin/src/iptables_rule_plugin.cpp",
194f7a47986Sopenharmony_ci        "../edm_plugin/src/network/executer/domain_executer.cpp",
195f7a47986Sopenharmony_ci        "../edm_plugin/src/network/executer/executer_factory.cpp",
196f7a47986Sopenharmony_ci        "../edm_plugin/src/network/executer/executer_utils.cpp",
197f7a47986Sopenharmony_ci        "../edm_plugin/src/network/executer/firewall_executer.cpp",
198f7a47986Sopenharmony_ci        "../edm_plugin/src/network/executer/iexecuter.cpp",
199f7a47986Sopenharmony_ci        "../edm_plugin/src/network/iptables_manager.cpp",
200f7a47986Sopenharmony_ci        "../edm_plugin/src/network/rule/chain_rule.cpp",
201f7a47986Sopenharmony_ci        "../edm_plugin/src/network/rule/domain_chain_rule.cpp",
202f7a47986Sopenharmony_ci        "../edm_plugin/src/network/rule/firewall_chain_rule.cpp",
203f7a47986Sopenharmony_ci        "../edm_plugin/src/network/rule/rule_utils.cpp",
204f7a47986Sopenharmony_ci        "../edm_plugin/src/utils/domain_filter_rule_serializer.cpp",
205f7a47986Sopenharmony_ci        "../edm_plugin/src/utils/firewall_rule_serializer.cpp",
206f7a47986Sopenharmony_ci        "../edm_plugin/src/utils/http_proxy_serializer.cpp",
207f7a47986Sopenharmony_ci      ]
208f7a47986Sopenharmony_ci    }
209f7a47986Sopenharmony_ci
210f7a47986Sopenharmony_ci    if (netmanager_ext_edm_enable) {
211f7a47986Sopenharmony_ci      external_deps += [ "netmanager_ext:ethernet_manager_if" ]
212f7a47986Sopenharmony_ci      sources += [
213f7a47986Sopenharmony_ci        "../edm_plugin/src/get_all_network_interfaces_plugin.cpp",
214f7a47986Sopenharmony_ci        "../edm_plugin/src/get_ip_address_plugin.cpp",
215f7a47986Sopenharmony_ci        "../edm_plugin/src/get_mac_plugin.cpp",
216f7a47986Sopenharmony_ci      ]
217f7a47986Sopenharmony_ci    }
218f7a47986Sopenharmony_ci
219f7a47986Sopenharmony_ci    if (ability_runtime_edm_enable) {
220f7a47986Sopenharmony_ci      external_deps += [ "ability_runtime:ability_manager" ]
221f7a47986Sopenharmony_ci      sources += [
222f7a47986Sopenharmony_ci        "../edm_plugin/src/disallowed_running_bundles_plugin.cpp",
223f7a47986Sopenharmony_ci        "../edm_plugin/src/manage_auto_start_apps_plugin.cpp",
224f7a47986Sopenharmony_ci      ]
225f7a47986Sopenharmony_ci    }
226f7a47986Sopenharmony_ci
227f7a47986Sopenharmony_ci    if (certificate_manager_edm_enable) {
228f7a47986Sopenharmony_ci      external_deps += [ "certificate_manager:cert_manager_sdk" ]
229f7a47986Sopenharmony_ci      sources += [ "../edm_plugin/src/user_cert_plugin.cpp" ]
230f7a47986Sopenharmony_ci    }
231f7a47986Sopenharmony_ci
232f7a47986Sopenharmony_ci    if (drivers_interface_usb_edm_enable && usb_manager_edm_enable) {
233f7a47986Sopenharmony_ci      external_deps += [ "usb_manager:usbsrv_client" ]
234f7a47986Sopenharmony_ci      sources += [
235f7a47986Sopenharmony_ci        "../edm_plugin/src/allowed_usb_devices_plugin.cpp",
236f7a47986Sopenharmony_ci        "../edm_plugin/src/disable_usb_plugin.cpp",
237f7a47986Sopenharmony_ci        "../edm_plugin/src/disallowed_usb_devices_plugin.cpp",
238f7a47986Sopenharmony_ci        "../edm_plugin/src/utils/array_usb_device_id_serializer.cpp",
239f7a47986Sopenharmony_ci        "../edm_plugin/src/utils/array_usb_device_type_serializer.cpp",
240f7a47986Sopenharmony_ci      ]
241f7a47986Sopenharmony_ci    }
242f7a47986Sopenharmony_ci
243f7a47986Sopenharmony_ci    if (drivers_interface_usb_edm_enable && storage_service_edm_enable &&
244f7a47986Sopenharmony_ci        usb_manager_edm_enable) {
245f7a47986Sopenharmony_ci      external_deps += [ "storage_service:storage_manager_sa_proxy" ]
246f7a47986Sopenharmony_ci      sources += [ "../edm_plugin/src/usb_read_only_plugin.cpp" ]
247f7a47986Sopenharmony_ci    }
248f7a47986Sopenharmony_ci
249f7a47986Sopenharmony_ci    if (audio_framework_edm_enable) {
250f7a47986Sopenharmony_ci      external_deps += [ "audio_framework:audio_client" ]
251f7a47986Sopenharmony_ci      sources += [
252f7a47986Sopenharmony_ci        "../edm_plugin/src/disable_hdc_plugin.cpp",
253f7a47986Sopenharmony_ci        "../edm_plugin/src/disable_microphone_plugin.cpp",
254f7a47986Sopenharmony_ci        "../edm_plugin/src/disable_printer_plugin.cpp",
255f7a47986Sopenharmony_ci      ]
256f7a47986Sopenharmony_ci    }
257f7a47986Sopenharmony_ci
258f7a47986Sopenharmony_ci    if (common_event_service_edm_enable) {
259f7a47986Sopenharmony_ci      external_deps += [ "common_event_service:cesfwk_innerkits" ]
260f7a47986Sopenharmony_ci      sources += [ "../edm_plugin/src/set_browser_policies_plugin.cpp" ]
261f7a47986Sopenharmony_ci      defines += [ "COMMON_EVENT_SERVICE_EDM_ENABLE" ]
262f7a47986Sopenharmony_ci    }
263f7a47986Sopenharmony_ci
264f7a47986Sopenharmony_ci    if (bluetooth_edm_enable) {
265f7a47986Sopenharmony_ci      external_deps += [ "bluetooth:btframework" ]
266f7a47986Sopenharmony_ci      sources += [
267f7a47986Sopenharmony_ci        "../edm_plugin/src/allowed_bluetooth_devices_plugin.cpp",
268f7a47986Sopenharmony_ci        "../edm_plugin/src/disable_bluetooth_plugin.cpp",
269f7a47986Sopenharmony_ci        "../edm_plugin/src/get_bluetooth_info_plugin.cpp",
270f7a47986Sopenharmony_ci      ]
271f7a47986Sopenharmony_ci    }
272f7a47986Sopenharmony_ci
273f7a47986Sopenharmony_ci    if (location_edm_enable) {
274f7a47986Sopenharmony_ci      external_deps += [ "location:locator_sdk" ]
275f7a47986Sopenharmony_ci      sources += [ "../edm_plugin/src/location_policy_plugin.cpp" ]
276f7a47986Sopenharmony_ci    }
277f7a47986Sopenharmony_ci
278f7a47986Sopenharmony_ci    if (telephony_core_edm_enable) {
279f7a47986Sopenharmony_ci      external_deps += [ "core_service:tel_core_service_api" ]
280f7a47986Sopenharmony_ci      defines += [ "TELEPHONY_CORE_EDM_ENABLE" ]
281f7a47986Sopenharmony_ci    }
282f7a47986Sopenharmony_ci  }
283f7a47986Sopenharmony_ci
284f7a47986Sopenharmony_ci  if (pasteboard_edm_enable) {
285f7a47986Sopenharmony_ci    external_deps += [ "pasteboard:pasteboard_client" ]
286f7a47986Sopenharmony_ci    defines += [ "PASTEBOARD_EDM_ENABLE" ]
287f7a47986Sopenharmony_ci    sources += [
288f7a47986Sopenharmony_ci      "../edm_plugin/src/clipboard_policy_plugin.cpp",
289f7a47986Sopenharmony_ci      "../edm_plugin/src/utils/clipboard_policy_serializer.cpp",
290f7a47986Sopenharmony_ci      "../edm_plugin/src/utils/clipboard_utils.cpp",
291f7a47986Sopenharmony_ci    ]
292f7a47986Sopenharmony_ci  }
293f7a47986Sopenharmony_ci
294f7a47986Sopenharmony_ci  if (useriam_edm_enable) {
295f7a47986Sopenharmony_ci    external_deps += [ "user_auth_framework:userauth_client" ]
296f7a47986Sopenharmony_ci    defines += [ "USERIAM_EDM_ENABLE" ]
297f7a47986Sopenharmony_ci    sources += [
298f7a47986Sopenharmony_ci      "../edm_plugin/src/fingerprint_auth_plugin.cpp",
299f7a47986Sopenharmony_ci      "../edm_plugin/src/password_policy_plugin.cpp",
300f7a47986Sopenharmony_ci      "../edm_plugin/src/utils/fingerprint_policy_serializer.cpp",
301f7a47986Sopenharmony_ci      "../edm_plugin/src/utils/password_policy_serializer.cpp",
302f7a47986Sopenharmony_ci    ]
303f7a47986Sopenharmony_ci  }
304f7a47986Sopenharmony_ci
305f7a47986Sopenharmony_ci  if (enterprise_device_management_feature_charging_type_setting) {
306f7a47986Sopenharmony_ci    defines += [ "FEATURE_CHARGING_TYPE_SETTING" ]
307f7a47986Sopenharmony_ci  }
308f7a47986Sopenharmony_ci
309f7a47986Sopenharmony_ci  if (camera_framework_edm_enable) {
310f7a47986Sopenharmony_ci    external_deps += [ "camera_framework:camera_framework" ]
311f7a47986Sopenharmony_ci    sources += [ "../edm_plugin/src/disable_camera_plugin.cpp" ]
312f7a47986Sopenharmony_ci  }
313f7a47986Sopenharmony_ci
314f7a47986Sopenharmony_ci  deps = [
315f7a47986Sopenharmony_ci    "../../common/external:edm_external_adapters",
316f7a47986Sopenharmony_ci    "../../common/native:edm_commom",
317f7a47986Sopenharmony_ci    "../../interfaces/inner_api:edmservice_kits",
318f7a47986Sopenharmony_ci    "../../interfaces/inner_api/plugin_kits:plugin_kits",
319f7a47986Sopenharmony_ci  ]
320f7a47986Sopenharmony_ci
321f7a47986Sopenharmony_ci  shlib_type = "sa"
322f7a47986Sopenharmony_ci
323f7a47986Sopenharmony_ci  sanitize = {
324f7a47986Sopenharmony_ci    boundary_sanitize = true
325f7a47986Sopenharmony_ci    cfi = true
326f7a47986Sopenharmony_ci    cfi_cross_dso = true
327f7a47986Sopenharmony_ci    debug = false
328f7a47986Sopenharmony_ci    integer_overflow = true
329f7a47986Sopenharmony_ci    ubsan = true
330f7a47986Sopenharmony_ci  }
331f7a47986Sopenharmony_ci  branch_protector_ret = "pac_ret"
332f7a47986Sopenharmony_ci  subsystem_name = "customization"
333f7a47986Sopenharmony_ci  part_name = "enterprise_device_management"
334f7a47986Sopenharmony_ci}
335