• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2021-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
14import("//build/ohos.gni")
15import("//foundation/ability/ability_runtime/ability_runtime.gni")
16import("//foundation/ability/form_fwk/form_fwk.gni")
17
18################################### libfms ########################################
19config("formmgr_log_config") {
20  defines = [ "FMS_LOG_TAG = \"FormManagerService\"" ]
21}
22
23config("formmgr_config") {
24  include_dirs = [
25    "services/config",
26    "services/include",
27    "//third_party/json/include",
28  ]
29}
30
31ohos_shared_library("libfms") {
32  shlib_type = "sa"
33  version_script = "libfms.map"
34  cflags_cc = []
35  include_dirs = [
36    "${ability_runtime_path}/services/common/include",
37    "${ability_runtime_native_path}/appkit/ability_runtime",
38    "${form_fwk_napi_path}/form_host/form_state_observer/include",
39  ]
40
41  sources = [
42    "services/config/form_xml_parser.cpp",
43    "services/src/form_ability_connection.cpp",
44    "services/src/form_acquire_connection.cpp",
45    "services/src/form_acquire_data_connection.cpp",
46    "services/src/form_acquire_state_connection.cpp",
47    "services/src/form_ams_helper.cpp",
48    "services/src/form_background_connection.cpp",
49    "services/src/form_batch_delete_connection.cpp",
50    "services/src/form_bms_helper.cpp",
51    "services/src/form_bundle_event_callback.cpp",
52    "services/src/form_cache_mgr.cpp",
53    "services/src/form_cast_temp_connection.cpp",
54    "services/src/form_data_mgr.cpp",
55    "services/src/form_data_proxy_mgr.cpp",
56    "services/src/form_data_proxy_record.cpp",
57    "services/src/form_db_cache.cpp",
58    "services/src/form_db_info.cpp",
59    "services/src/form_delete_connection.cpp",
60    "services/src/form_distributed_client.cpp",
61    "services/src/form_dump_mgr.cpp",
62    "services/src/form_event_handler.cpp",
63    "services/src/form_event_notify_connection.cpp",
64    "services/src/form_event_report.cpp",
65    "services/src/form_event_util.cpp",
66    "services/src/form_free_install_operator.cpp",
67    "services/src/form_host_callback.cpp",
68    "services/src/form_host_record.cpp",
69    "services/src/form_info_mgr.cpp",
70    "services/src/form_info_rdb_storage_mgr.cpp",
71    "services/src/form_info_storage.cpp",
72    "services/src/form_info_storage_mgr.cpp",
73    "services/src/form_item_info.cpp",
74    "services/src/form_mgr_adapter.cpp",
75    "services/src/form_mgr_service.cpp",
76    "services/src/form_msg_event_connection.cpp",
77    "services/src/form_observer_record.cpp",
78    "services/src/form_provider_mgr.cpp",
79    "services/src/form_rdb_data_mgr.cpp",
80    "services/src/form_refresh_connection.cpp",
81    "services/src/form_refresh_limiter.cpp",
82    "services/src/form_render_connection.cpp",
83    "services/src/form_render_mgr.cpp",
84    "services/src/form_serial_queue.cpp",
85    "services/src/form_share_connection.cpp",
86    "services/src/form_share_mgr.cpp",
87    "services/src/form_supply_callback.cpp",
88    "services/src/form_sys_event_receiver.cpp",
89    "services/src/form_task_mgr.cpp",
90    "services/src/form_timer_mgr.cpp",
91    "services/src/form_trust_mgr.cpp",
92    "services/src/form_util.cpp",
93    "services/src/free_install_status_callback_proxy.cpp",
94    "services/src/free_install_status_callback_stub.cpp",
95  ]
96
97  configs = [
98    ":formmgr_config",
99    ":formmgr_log_config",
100    ":formmgr_sdk_config",
101  ]
102  cflags = []
103  if (target_cpu == "arm") {
104    cflags += [ "-DBINDER_IPC_32BIT" ]
105  }
106
107  deps = [
108    "${form_fwk_path}:form_config",
109    "${form_fwk_path}:form_manager",
110    "//third_party/libxml2:libxml2",
111  ]
112
113  external_deps = [
114    "ability_base:base",
115    "ability_base:want",
116    "ability_runtime:ability_deps_wrapper",
117    "ability_runtime:ability_manager",
118    "ability_runtime:app_manager",
119    "ability_runtime:wantagent_innerkits",
120    "access_token:libaccesstoken_sdk",
121    "access_token:libtokenid_sdk",
122    "bundle_framework:appexecfwk_base",
123    "bundle_framework:appexecfwk_core",
124    "c_utils:utils",
125    "common_event_service:cesfwk_core",
126    "common_event_service:cesfwk_innerkits",
127    "data_share:datashare_common",
128    "data_share:datashare_consumer",
129    "eventhandler:libeventhandler",
130    "ffrt:libffrt",
131    "hicollie:libhicollie",
132    "hilog:libhilog",
133    "hisysevent:libhisysevent",
134    "hitrace:hitrace_meter",
135    "ipc:ipc_core",
136    "kv_store:distributeddata_inner",
137    "os_account:os_account_innerkits",
138    "relational_store:native_rdb",
139    "resource_management:global_resmgr",
140    "safwk:system_ability_fwk",
141    "samgr:samgr_proxy",
142    "time_service:time_client",
143  ]
144
145  defines = []
146  if (ability_runtime_power) {
147    defines = [ "SUPPORT_POWER" ]
148    external_deps += [ "power_manager:powermgr_client" ]
149  }
150
151  if (fms_ecologic_rule_mgr_enabled) {
152    include_dirs += [ "${ecological_rule_mgr_path}" ]
153    defines += [ "SUPPORT_ERMS" ]
154    external_deps += [ "ecological_rule_mgr:erms_client" ]
155  }
156
157  if (device_usage_statistics) {
158    external_deps += [ "device_usage_statistics:usagestatsinner" ]
159    defines += [ "DEVICE_USAGE_STATISTICS_ENABLE" ]
160  }
161
162  if (build_variant == "root") {
163    defines += [ "FORM_EVENT_FOR_TEST" ]
164  }
165
166  subsystem_name = "ability"
167  part_name = "form_fwk"
168}
169
170################################### fmskit_native ########################################
171config("fmskit_config") {
172  defines = [ "FMS_LOG_TAG = \"FmskitNative\"" ]
173}
174
175config("fmskit_public_config") {
176  include_dirs = [
177    "interfaces/kits/native/include",
178    "${ability_runtime_path}/services/common/include",
179    "${form_fwk_path}/interfaces/inner_api/include",
180    "${bundlefwk_inner_api_path}/appexecfwk_base/include",
181  ]
182}
183
184ohos_shared_library("fmskit_native") {
185  configs = [ ":fmskit_config" ]
186  public_configs = [ ":fmskit_public_config" ]
187  sources = [
188    "interfaces/kits/native/src/form_caller_mgr.cpp",
189    "interfaces/kits/native/src/form_errors.cpp",
190    "interfaces/kits/native/src/form_host_caller.cpp",
191    "interfaces/kits/native/src/form_host_client.cpp",
192    "interfaces/kits/native/src/form_mgr.cpp",
193    "interfaces/kits/native/src/form_provider_caller.cpp",
194    "interfaces/kits/native/src/form_provider_client.cpp",
195  ]
196
197  cflags = []
198  if (target_cpu == "arm") {
199    cflags += [ "-DBINDER_IPC_32BIT" ]
200  }
201
202  deps = [ ":form_manager" ]
203
204  external_deps = [
205    "ability_base:want",
206    "ability_runtime:abilitykit_native",
207    "c_utils:utils",
208    "eventhandler:libeventhandler",
209    "hilog:libhilog",
210    "hitrace:hitrace_meter",
211    "ipc:ipc_core",
212    "napi:ace_napi",
213    "samgr:samgr_proxy",
214  ]
215
216  subsystem_name = "ability"
217  innerapi_tags = [ "platformsdk" ]
218  part_name = "form_fwk"
219}
220
221################################### form_manager ########################################
222config("formmgr_sdk_config") {
223  visibility = [ ":*" ]
224  include_dirs = [
225    "interfaces/inner_api/include/",
226    "//third_party/json/include",
227    "${ability_base_kits_path}/configuration/include",
228    "${ability_runtime_path}/interfaces/kits/native/ability/native",
229    "${ability_runtime_innerapi_path}/ability_manager/include",
230    "${ability_runtime_innerapi_path}/app_manager/include/appmgr",
231    "${ability_runtime_path}/services/common/include",
232  ]
233  cflags = []
234  if (target_cpu == "arm") {
235    cflags += [ "-DBINDER_IPC_32BIT" ]
236  }
237}
238
239ohos_shared_library("form_manager") {
240  include_dirs = [ "${ability_runtime_innerapi_path}/runtime/include" ]
241
242  sources = [
243    "interfaces/inner_api/src/form_ashmem.cpp",
244    "interfaces/inner_api/src/form_host_proxy.cpp",
245    "interfaces/inner_api/src/form_host_stub.cpp",
246    "interfaces/inner_api/src/form_info_filter.cpp",
247    "interfaces/inner_api/src/form_instance.cpp",
248    "interfaces/inner_api/src/form_instances_filter.cpp",
249    "interfaces/inner_api/src/form_js_info.cpp",
250    "interfaces/inner_api/src/form_mgr_proxy.cpp",
251    "interfaces/inner_api/src/form_mgr_stub.cpp",
252    "interfaces/inner_api/src/form_provider_data.cpp",
253    "interfaces/inner_api/src/form_provider_info.cpp",
254    "interfaces/inner_api/src/form_provider_proxy.cpp",
255    "interfaces/inner_api/src/form_provider_stub.cpp",
256    "interfaces/inner_api/src/form_publish_interceptor_proxy.cpp",
257    "interfaces/inner_api/src/form_publish_interceptor_stub.cpp",
258    "interfaces/inner_api/src/form_render_proxy.cpp",
259    "interfaces/inner_api/src/form_render_stub.cpp",
260    "interfaces/inner_api/src/form_share_info.cpp",
261    "interfaces/inner_api/src/form_supply_proxy.cpp",
262    "interfaces/inner_api/src/form_supply_stub.cpp",
263    "interfaces/inner_api/src/js_form_state_observer_proxy.cpp",
264    "interfaces/inner_api/src/js_form_state_observer_stub.cpp",
265    "interfaces/inner_api/src/provider_connect_proxy.cpp",
266    "interfaces/inner_api/src/provider_connect_stub.cpp",
267    "interfaces/inner_api/src/running_form_info.cpp",
268  ]
269
270  configs = [ ":formmgr_log_config" ]
271
272  public_configs = [
273    ":formmgr_sdk_config",
274    "${form_fwk_path}:formmgr_config",
275  ]
276
277  deps = [ "//third_party/jsoncpp:jsoncpp" ]
278
279  external_deps = [
280    "ability_base:want",
281    "bundle_framework:appexecfwk_base",
282    "c_utils:utils",
283    "hilog:libhilog",
284    "ipc:ipc_core",
285    "napi:ace_napi",
286  ]
287
288  subsystem_name = "ability"
289  innerapi_tags = [ "platformsdk" ]
290  part_name = "form_fwk"
291}
292
293ohos_prebuilt_etc("form_config") {
294  source = "services/config/form_config.xml"
295  module_install_dir = "etc/form"
296  part_name = "form_fwk"
297  subsystem_name = "ability"
298}
299
300group("form_napi_packages") {
301  if (ability_runtime_graphics) {
302    deps = [
303      "${form_fwk_napi_path}:formbindingdata",
304      "${form_fwk_napi_path}:formbindingdata_napi",
305      "${form_fwk_napi_path}:formerror_napi",
306      "${form_fwk_napi_path}:formextension_napi",
307      "${form_fwk_napi_path}:formextensionability",
308      "${form_fwk_napi_path}:formextensioncontext_napi",
309      "${form_fwk_napi_path}:formhost",
310      "${form_fwk_napi_path}:formhost_napi",
311      "${form_fwk_napi_path}:forminfo",
312      "${form_fwk_napi_path}:forminfo_napi",
313      "${form_fwk_napi_path}:formobserver",
314      "${form_fwk_napi_path}:formprovider",
315      "${form_fwk_napi_path}:formprovider_napi",
316      "${form_fwk_napi_path}:formutil_napi",
317    ]
318  }
319}
320
321group("fms_innerkits_target") {
322  if (ability_runtime_graphics) {
323    deps = [ ":form_manager" ]
324  }
325}
326
327group("fms_target") {
328  deps = [
329    ":libfms",
330    "services/form_render_service:formrender_service_hap",
331  ]
332}
333
334group("fms_services_target") {
335  if (ability_runtime_graphics) {
336    deps = [ ":fms_target" ]
337  }
338}
339