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