• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2021-2024 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/config/components/ets_frontend/es2abc_config.gni")
15import("//build/ohos.gni")
16import("//build/ohos/ace/ace.gni")
17import("//foundation/ability/form_fwk/form_fwk.gni")
18
19config("fmskit_config") {
20  defines = [ "FMS_LOG_TAG = \"FmskitNative\"" ]
21}
22
23################################### formbindingdata_napi ########################################
24ohos_shared_library("formbindingdata_napi") {
25  sanitize = {
26    cfi = true
27    cfi_cross_dso = true
28    debug = false
29  }
30  include_dirs = []
31
32  sources = [
33    "form_binding_data/form_binding_data.cpp",
34    "form_binding_data/form_binding_data_module.cpp",
35  ]
36
37  configs = [ ":fmskit_config" ]
38
39  deps = [ "${form_fwk_path}:form_manager" ]
40
41  external_deps = [
42    "ability_runtime:runtime",
43    "c_utils:utils",
44    "hilog:libhilog",
45    "ipc:ipc_core",
46    "napi:ace_napi",
47  ]
48
49  relative_install_dir = "module/application"
50
51  subsystem_name = "ability"
52  part_name = "form_fwk"
53}
54
55ohos_shared_library("formbindingdata") {
56  sanitize = {
57    cfi = true
58    cfi_cross_dso = true
59    debug = false
60  }
61  include_dirs = []
62
63  sources = [
64    "form_binding_data/js_form_binding_data.cpp",
65    "form_binding_data/js_form_binding_data_module.cpp",
66  ]
67
68  configs = [ ":fmskit_config" ]
69
70  deps = [
71    ":formutil_napi",
72    "${form_fwk_path}:form_manager",
73  ]
74
75  external_deps = [
76    "ability_runtime:abilitykit_native",
77    "ability_runtime:extensionkit_native",
78    "ability_runtime:runtime",
79    "c_utils:utils",
80    "common_event_service:cesfwk_innerkits",
81    "hilog:libhilog",
82    "ipc:ipc_core",
83    "napi:ace_napi",
84  ]
85
86  relative_install_dir = "module/app/form"
87
88  subsystem_name = "ability"
89  part_name = "form_fwk"
90}
91
92################################### gen_form_extension_abc ########################################
93es2abc_gen_abc("gen_form_extension_abc") {
94  src_js = rebase_path("form_extension/form_extension.js")
95  dst_file = rebase_path(target_out_dir + "/form_extension.abc")
96  in_puts = [ "form_extension/form_extension.js" ]
97  out_puts = [ target_out_dir + "/form_extension.abc" ]
98  extra_args = [ "--module" ]
99}
100
101gen_js_obj("form_extension_js") {
102  input = "form_extension/form_extension.js"
103  output = target_out_dir + "/form_extension.o"
104}
105
106gen_js_obj("form_extension_abc") {
107  input = get_label_info(":gen_form_extension_abc", "target_out_dir") +
108          "/form_extension.abc"
109  output = target_out_dir + "/form_extension_abc.o"
110  dep = ":gen_form_extension_abc"
111}
112
113ohos_shared_library("formextension_napi") {
114  sanitize = {
115    cfi = true
116    cfi_cross_dso = true
117    debug = false
118  }
119  sources = [ "form_extension/form_extension_module.cpp" ]
120
121  configs = [ ":fmskit_config" ]
122
123  deps = [
124    ":form_extension_abc",
125    ":form_extension_js",
126  ]
127
128  external_deps = [ "napi:ace_napi" ]
129
130  relative_install_dir = "module/application"
131  subsystem_name = "ability"
132  part_name = "form_fwk"
133}
134
135################################### gen_form_extension_ability_abc ########################################
136es2abc_gen_abc("gen_form_extension_ability_abc") {
137  src_js = rebase_path("form_extension_ability/form_extension_ability.js")
138  dst_file = rebase_path(target_out_dir + "/form_extension_ability.abc")
139  in_puts = [ "form_extension_ability/form_extension_ability.js" ]
140  out_puts = [ target_out_dir + "/form_extension_ability.abc" ]
141  extra_args = [ "--module" ]
142}
143
144gen_js_obj("form_extension_ability_js") {
145  input = "form_extension_ability/form_extension_ability.js"
146  output = target_out_dir + "/form_extension_ability.o"
147}
148
149gen_js_obj("form_extension_ability_abc") {
150  input = get_label_info(":gen_form_extension_ability_abc", "target_out_dir") +
151          "/form_extension_ability.abc"
152  output = target_out_dir + "/form_extension_ability_abc.o"
153  dep = ":gen_form_extension_ability_abc"
154}
155
156ohos_shared_library("formextensionability") {
157  sanitize = {
158    cfi = true
159    cfi_cross_dso = true
160    debug = false
161  }
162  sources = [ "form_extension_ability/form_extension_ability_module.cpp" ]
163
164  configs = [ ":fmskit_config" ]
165
166  deps = [
167    ":form_extension_ability_abc",
168    ":form_extension_ability_js",
169  ]
170
171  external_deps = [ "napi:ace_napi" ]
172
173  relative_install_dir = "module/app/form"
174  subsystem_name = "ability"
175  part_name = "form_fwk"
176}
177
178################################### gen_form_extension_context_abc ########################################
179es2abc_gen_abc("gen_form_extension_context_abc") {
180  src_js = rebase_path("form_extension_context/form_extension_context.js")
181  dst_file = rebase_path(target_out_dir + "/form_extension_context.abc")
182  in_puts = [ "form_extension_context/form_extension_context.js" ]
183  out_puts = [ target_out_dir + "/form_extension_context.abc" ]
184  extra_args = [ "--module" ]
185}
186
187gen_js_obj("form_extension_context_js") {
188  input = "form_extension_context/form_extension_context.js"
189  output = target_out_dir + "/form_extension_context.o"
190}
191
192gen_js_obj("form_extension_context_abc") {
193  input = get_label_info(":gen_form_extension_context_abc", "target_out_dir") +
194          "/form_extension_context.abc"
195  output = target_out_dir + "/form_extension_context_abc.o"
196  dep = ":gen_form_extension_context_abc"
197}
198
199ohos_shared_library("formextensioncontext_napi") {
200  sanitize = {
201    cfi = true
202    cfi_cross_dso = true
203    debug = false
204  }
205  sources = [ "form_extension_context/form_extension_context_module.cpp" ]
206
207  configs = [ ":fmskit_config" ]
208
209  deps = [
210    ":form_extension_context_abc",
211    ":form_extension_context_js",
212  ]
213
214  external_deps = [ "napi:ace_napi" ]
215
216  relative_install_dir = "module/application"
217  subsystem_name = "ability"
218  part_name = "form_fwk"
219}
220
221################################### forminfo_napi ########################################
222ohos_shared_library("forminfo_napi") {
223  sanitize = {
224    cfi = true
225    cfi_cross_dso = true
226    debug = false
227  }
228  include_dirs = [ "${form_fwk_path}/interfaces/inner_api/include" ]
229
230  sources = [
231    "form_info/form_info_module.cpp",
232    "form_info/js_form_info.cpp",
233  ]
234
235  configs = [ ":fmskit_config" ]
236
237  deps = []
238
239  external_deps = [
240    "ability_runtime:runtime",
241    "bundle_framework:appexecfwk_base",
242    "c_utils:utils",
243    "hilog:libhilog",
244    "ipc:ipc_core",
245    "napi:ace_napi",
246  ]
247
248  defines = []
249  if (form_fwk_form_dimension_2_3) {
250    defines += [ "FORM_DIMENSION_2_3" ]
251  }
252  if (form_fwk_form_dimension_3_3) {
253    defines += [ "FORM_DIMENSION_3_3" ]
254  }
255
256  relative_install_dir = "module/application"
257
258  subsystem_name = "ability"
259  part_name = "form_fwk"
260}
261
262ohos_shared_library("forminfo") {
263  sanitize = {
264    cfi = true
265    cfi_cross_dso = true
266    debug = false
267  }
268  include_dirs = [ "${form_fwk_path}/interfaces/inner_api/include" ]
269
270  sources = [
271    "form_info/form_info_module.cpp",
272    "form_info/js_form_info.cpp",
273  ]
274
275  configs = [ ":fmskit_config" ]
276
277  deps = []
278
279  external_deps = [
280    "ability_runtime:runtime",
281    "bundle_framework:appexecfwk_base",
282    "c_utils:utils",
283    "hilog:libhilog",
284    "ipc:ipc_core",
285    "napi:ace_napi",
286  ]
287
288  defines = [ "ENABLE_ERRCODE" ]
289
290  if (form_fwk_form_dimension_2_3) {
291    defines += [ "FORM_DIMENSION_2_3" ]
292  }
293  if (form_fwk_form_dimension_3_3) {
294    defines += [ "FORM_DIMENSION_3_3" ]
295  }
296
297  relative_install_dir = "module/app/form"
298
299  subsystem_name = "ability"
300  part_name = "form_fwk"
301}
302
303################################### formhost_napi ########################################
304ohos_shared_library("formhost_napi") {
305  sanitize = {
306    cfi = true
307    cfi_cross_dso = true
308    debug = false
309  }
310  include_dirs = []
311
312  sources = [
313    "formHost/napi_form_host.cpp",
314    "formHost/native_module.cpp",
315  ]
316
317  configs = [ ":fmskit_config" ]
318
319  deps = [
320    ":formutil_napi",
321    "${form_fwk_path}:fmskit_native",
322  ]
323
324  external_deps = [
325    "ability_base:want",
326    "ability_runtime:abilitykit_native",
327    "ability_runtime:extensionkit_native",
328    "ability_runtime:napi_common",
329    "ability_runtime:runtime",
330    "bundle_framework:appexecfwk_base",
331    "c_utils:utils",
332    "common_event_service:cesfwk_innerkits",
333    "eventhandler:libeventhandler",
334    "hilog:libhilog",
335    "ipc:ipc_single",
336    "napi:ace_napi",
337  ]
338
339  relative_install_dir = "module/application"
340
341  subsystem_name = "ability"
342  part_name = "form_fwk"
343}
344
345################################### formhost ########################################
346ohos_shared_library("formhost") {
347  sanitize = {
348    cfi = true
349    cfi_cross_dso = true
350    debug = false
351  }
352  include_dirs = [ "${form_fwk_path}/interfaces/inner_api/include" ]
353
354  sources = [
355    "form_host/js_form_host.cpp",
356    "form_host/js_form_state_observer.cpp",
357    "form_host/native_module.cpp",
358  ]
359
360  configs = [ ":fmskit_config" ]
361
362  deps = [
363    ":formutil_napi",
364    "${form_fwk_path}:fmskit_native",
365    "${form_fwk_path}:form_host_delegate_stub",
366    "${form_fwk_path}:form_manager",
367  ]
368
369  external_deps = [
370    "ability_base:want",
371    "ability_runtime:abilitykit_native",
372    "ability_runtime:extensionkit_native",
373    "ability_runtime:napi_common",
374    "ability_runtime:runtime",
375    "access_token:libtokenid_sdk",
376    "bundle_framework:appexecfwk_base",
377    "c_utils:utils",
378    "common_event_service:cesfwk_innerkits",
379    "eventhandler:libeventhandler",
380    "hilog:libhilog",
381    "ipc:ipc_single",
382    "napi:ace_napi",
383  ]
384
385  relative_install_dir = "module/app/form"
386
387  subsystem_name = "ability"
388  part_name = "form_fwk"
389
390  defines = []
391  if (form_fwk_watch_api_disable) {
392    defines += [ "WATCH_API_DISABLE" ]
393  }
394}
395
396################################### formobserver ########################################
397ohos_shared_library("formobserver") {
398  sanitize = {
399    cfi = true
400    cfi_cross_dso = true
401    debug = false
402  }
403  include_dirs = [
404    "${form_fwk_path}/interfaces/inner_api/include",
405    "${form_fwk_path}/frameworks/js/napi/form_host",
406    "${form_fwk_path}/frameworks/js/napi/form_observer",
407  ]
408
409  sources = [
410    "form_host/js_form_state_observer.cpp",
411    "form_observer/js_form_observer.cpp",
412    "form_observer/native_module.cpp",
413  ]
414
415  configs = [ ":fmskit_config" ]
416
417  deps = [
418    ":formutil_napi",
419    "${form_fwk_napi_path}:formhost",
420    "${form_fwk_path}:fmskit_native",
421    "${form_fwk_path}:form_host_delegate_stub",
422    "${form_fwk_path}:form_manager",
423  ]
424
425  external_deps = [
426    "ability_base:want",
427    "ability_runtime:abilitykit_native",
428    "ability_runtime:extensionkit_native",
429    "ability_runtime:napi_common",
430    "ability_runtime:runtime",
431    "access_token:libtokenid_sdk",
432    "bundle_framework:appexecfwk_base",
433    "c_utils:utils",
434    "common_event_service:cesfwk_innerkits",
435    "eventhandler:libeventhandler",
436    "hilog:libhilog",
437    "ipc:ipc_single",
438    "napi:ace_napi",
439  ]
440
441  relative_install_dir = "module/app/form"
442
443  subsystem_name = "ability"
444  part_name = "form_fwk"
445}
446
447################################### formprovider_napi ########################################
448ohos_shared_library("formprovider_napi") {
449  sanitize = {
450    cfi = true
451    cfi_cross_dso = true
452    debug = false
453  }
454  include_dirs = []
455
456  sources = [
457    "formProvider/napi_form_provider.cpp",
458    "formProvider/native_module.cpp",
459  ]
460
461  configs = [ ":fmskit_config" ]
462
463  deps = [
464    ":formutil_napi",
465    "${form_fwk_path}:fmskit_native",
466    "${form_fwk_path}:form_manager",
467  ]
468
469  external_deps = [
470    "ability_base:want",
471    "ability_runtime:abilitykit_native",
472    "ability_runtime:extensionkit_native",
473    "ability_runtime:napi_common",
474    "ability_runtime:runtime",
475    "bundle_framework:appexecfwk_base",
476    "c_utils:utils",
477    "common_event_service:cesfwk_innerkits",
478    "hilog:libhilog",
479    "ipc:ipc_single",
480    "napi:ace_napi",
481  ]
482
483  relative_install_dir = "module/application"
484
485  subsystem_name = "ability"
486  part_name = "form_fwk"
487}
488
489ohos_shared_library("formprovider") {
490  sanitize = {
491    cfi = true
492    cfi_cross_dso = true
493    debug = false
494  }
495  include_dirs = []
496
497  sources = [
498    "form_provider/js_form_provider.cpp",
499    "form_provider/native_module.cpp",
500  ]
501
502  configs = [ ":fmskit_config" ]
503
504  deps = [
505    ":formutil_napi",
506    "${form_fwk_path}:fmskit_native",
507    "${form_fwk_path}:form_manager",
508  ]
509
510  external_deps = [
511    "ability_base:want",
512    "ability_runtime:abilitykit_native",
513    "ability_runtime:extensionkit_native",
514    "ability_runtime:napi_common",
515    "ability_runtime:runtime",
516    "access_token:libtokenid_sdk",
517    "bundle_framework:appexecfwk_base",
518    "c_utils:utils",
519    "common_event_service:cesfwk_innerkits",
520    "hilog:libhilog",
521    "ipc:ipc_single",
522    "napi:ace_napi",
523  ]
524
525  relative_install_dir = "module/app/form"
526
527  subsystem_name = "ability"
528  part_name = "form_fwk"
529
530  defines = []
531  if (hiappevent_global_part_enabled) {
532    defines += [ "NO_RUNTIME_EMULATOR" ]
533  }
534}
535
536################################### formagent_napi ########################################
537ohos_shared_library("formagent") {
538  sanitize = {
539    cfi = true
540    cfi_cross_dso = true
541    debug = false
542  }
543  include_dirs = []
544
545  sources = [
546    "form_agent/js_form_agent.cpp",
547    "form_agent/native_module.cpp",
548  ]
549
550  configs = [ ":fmskit_config" ]
551
552  deps = [
553    ":formutil_napi",
554    "${form_fwk_path}:fmskit_native",
555    "${form_fwk_path}:form_manager",
556  ]
557
558  external_deps = [
559    "ability_base:want",
560    "ability_runtime:abilitykit_native",
561    "ability_runtime:extensionkit_native",
562    "ability_runtime:napi_common",
563    "ability_runtime:runtime",
564    "bundle_framework:appexecfwk_base",
565    "c_utils:utils",
566    "common_event_service:cesfwk_innerkits",
567    "hilog:libhilog",
568    "ipc:ipc_single",
569    "napi:ace_napi",
570  ]
571
572  relative_install_dir = "module/app/form"
573
574  subsystem_name = "ability"
575  part_name = "form_fwk"
576}
577
578################################### formutil_napi_public_config ########################################
579config("formutil_napi_public_config") {
580  include_dirs = [ "formUtil/" ]
581}
582
583ohos_shared_library("formutil_napi") {
584  sanitize = {
585    cfi = true
586    cfi_cross_dso = true
587    debug = false
588  }
589  include_dirs = []
590
591  public_configs = [ ":formutil_napi_public_config" ]
592
593  sources = [ "formUtil/napi_form_util.cpp" ]
594
595  configs = [ ":fmskit_config" ]
596
597  deps = [ "${form_fwk_path}:fmskit_native" ]
598
599  external_deps = [
600    "ability_runtime:abilitykit_native",
601    "ability_runtime:extensionkit_native",
602    "ability_runtime:runtime",
603    "common_event_service:cesfwk_innerkits",
604    "hilog:libhilog",
605    "ipc:ipc_single",
606    "napi:ace_napi",
607  ]
608
609  subsystem_name = "ability"
610  innerapi_tags = [ "platformsdk" ]
611  part_name = "form_fwk"
612}
613
614################################### formerror_napi ########################################
615ohos_shared_library("formerror_napi") {
616  sanitize = {
617    cfi = true
618    cfi_cross_dso = true
619    debug = false
620  }
621  include_dirs = [ "${form_fwk_napi_path}/formUtil" ]
622
623  sources = [
624    "form_error/form_error_module.cpp",
625    "form_error/js_form_error.cpp",
626  ]
627
628  configs = [ ":fmskit_config" ]
629
630  external_deps = [
631    "ability_runtime:abilitykit_native",
632    "ability_runtime:extensionkit_native",
633    "ability_runtime:runtime",
634    "common_event_service:cesfwk_innerkits",
635    "hilog:libhilog",
636    "ipc:ipc_single",
637    "napi:ace_napi",
638  ]
639
640  relative_install_dir = "module/application"
641
642  subsystem_name = "ability"
643  part_name = "form_fwk"
644}
645
646################################### gen_form_edit_extension_ability_abc ########################################
647es2abc_gen_abc("gen_form_edit_extension_ability_abc") {
648  src_js =
649      rebase_path("form_edit_extension_ability/form_edit_extension_ability.js")
650  dst_file = rebase_path(target_out_dir + "/form_edit_extension_ability.abc")
651  in_puts = [ "form_edit_extension_ability/form_edit_extension_ability.js" ]
652  out_puts = [ target_out_dir + "/form_edit_extension_ability.abc" ]
653  extra_args = [ "--module" ]
654}
655
656gen_js_obj("form_edit_extension_ability_js") {
657  input = "form_edit_extension_ability/form_edit_extension_ability.js"
658  output = target_out_dir + "/form_edit_extension_ability.o"
659}
660
661gen_js_obj("form_edit_extension_ability_abc") {
662  input = get_label_info(":gen_form_edit_extension_ability_abc",
663                         "target_out_dir") + "/form_edit_extension_ability.abc"
664  output = target_out_dir + "/form_edit_extension_ability_abc.o"
665  dep = ":gen_form_edit_extension_ability_abc"
666}
667
668ohos_shared_library("formeditextensionability_napi") {
669  sanitize = {
670    cfi = true
671    cfi_cross_dso = true
672    debug = false
673  }
674  sources =
675      [ "form_edit_extension_ability/form_edit_extension_ability_module.cpp" ]
676
677  configs = [ ":fmskit_config" ]
678
679  deps = [
680    ":form_edit_extension_ability_abc",
681    ":form_edit_extension_ability_js",
682  ]
683
684  external_deps = [ "napi:ace_napi" ]
685
686  relative_install_dir = "module/app/form"
687  subsystem_name = "ability"
688  part_name = "form_fwk"
689}
690
691################################### gen_form_edit_extension_context_abc ########################################
692es2abc_gen_abc("gen_form_edit_extension_context_abc") {
693  src_js =
694      rebase_path("form_edit_extension_context/form_edit_extension_context.js")
695  dst_file = rebase_path(target_out_dir + "/form_edit_extension_context.abc")
696  in_puts = [ "form_edit_extension_context/form_edit_extension_context.js" ]
697  out_puts = [ target_out_dir + "/form_edit_extension_context.abc" ]
698  extra_args = [ "--module" ]
699}
700
701gen_js_obj("form_edit_extension_context_js") {
702  input = "form_edit_extension_context/form_edit_extension_context.js"
703  output = target_out_dir + "/form_edit_extension_context.o"
704}
705
706gen_js_obj("form_edit_extension_context_abc") {
707  input = get_label_info(":gen_form_edit_extension_context_abc",
708                         "target_out_dir") + "/form_edit_extension_context.abc"
709  output = target_out_dir + "/form_edit_extension_context_abc.o"
710  dep = ":gen_form_edit_extension_context_abc"
711}
712
713ohos_shared_library("formeditextensioncontext_napi") {
714  sanitize = {
715    cfi = true
716    cfi_cross_dso = true
717    debug = false
718  }
719  sources =
720      [ "form_edit_extension_context/form_edit_extension_context_module.cpp" ]
721
722  configs = [ ":fmskit_config" ]
723
724  deps = [
725    ":form_edit_extension_context_abc",
726    ":form_edit_extension_context_js",
727  ]
728
729  external_deps = [ "napi:ace_napi" ]
730
731  relative_install_dir = "module/application"
732  subsystem_name = "ability"
733  part_name = "form_fwk"
734}
735
736################################### gen_form_edit_extension_ability ########################################
737ohos_shared_library("form_edit_extension") {
738  sanitize = {
739    cfi = true
740    cfi_cross_dso = true
741    debug = false
742  }
743  include_dirs = ["form_edit_extension_context/"]
744
745  sources = [
746    "form_edit_extension_ability/form_edit_extension.cpp",
747    "form_edit_extension_ability/js_form_edit_extension.cpp",
748    "form_edit_extension_context/form_edit_extension_context.cpp",
749    "form_edit_extension_context/js_form_edit_extension_context.cpp",
750    "form_edit_extension_context/js_form_edit_extension_impl.cpp",
751  ]
752
753  configs = [ ":fmskit_config" ]
754
755  deps = [
756    ":formutil_napi",
757    "${form_fwk_path}:fmskit_native",
758    "${form_fwk_path}:fmskit_provider_client",
759    "${form_fwk_path}:form_manager",
760  ]
761
762  external_deps = [
763    "ability_base:want",
764    "ability_runtime:ability_context_native",
765    "ability_runtime:abilitykit_native",
766    "ability_runtime:app_context",
767    "ability_runtime:napi_common",
768    "ability_runtime:runtime",
769    "ability_runtime:ui_extension",
770    "c_utils:utils",
771    "eventhandler:libeventhandler",
772    "hilog:libhilog",
773    "hitrace:hitrace_meter",
774    "ipc:ipc_napi",
775    "napi:ace_napi",
776  ]
777
778  subsystem_name = "ability"
779  part_name = "form_fwk"
780}
781
782ohos_shared_library("form_edit_extension_module") {
783  sanitize = {
784    cfi = true
785    cfi_cross_dso = true
786    debug = false
787  }
788  include_dirs = ["form_edit_extension_context/"]
789
790  sources =
791      [ "form_edit_extension_ability/form_edit_extension_module_loader.cpp" ]
792
793  configs = [ ":fmskit_config" ]
794
795  deps = [ ":form_edit_extension" ]
796
797  external_deps = [
798    "ability_base:configuration",
799    "ability_base:session_info",
800    "ability_base:want",
801    "ability_runtime:abilitykit_native",
802    "ability_runtime:appkit_native",
803    "ability_runtime:extensionkit_native",
804    "ability_runtime:runtime",
805    "ability_runtime:ui_extension",
806    "bundle_framework:appexecfwk_core",
807    "hilog:libhilog",
808    "ipc:ipc_napi",
809    "napi:ace_napi",
810  ]
811
812  if (ability_runtime_graphics) {
813    deps += [ "${form_fwk_path}:form_manager" ]
814  }
815
816  relative_install_dir = "extensionability"
817  subsystem_name = "ability"
818  part_name = "form_fwk"
819}
820
821################################### gen_live_form_extension_ability_abc ########################################
822es2abc_gen_abc("gen_live_form_extension_ability_abc") {
823  src_js =
824      rebase_path("live_form_extension_ability/live_form_extension_ability.js")
825  dst_file = rebase_path(target_out_dir + "/live_form_extension_ability.abc")
826  in_puts = [ "live_form_extension_ability/live_form_extension_ability.js" ]
827  out_puts = [ target_out_dir + "/live_form_extension_ability.abc" ]
828  extra_args = [ "--module" ]
829}
830
831gen_js_obj("live_form_extension_ability_js") {
832  input = "live_form_extension_ability/live_form_extension_ability.js"
833  output = target_out_dir + "/live_form_extension_ability.o"
834}
835
836gen_js_obj("live_form_extension_ability_abc") {
837  input = get_label_info(":gen_live_form_extension_ability_abc",
838                         "target_out_dir") + "/live_form_extension_ability.abc"
839  output = target_out_dir + "/live_form_extension_ability_abc.o"
840  dep = ":gen_live_form_extension_ability_abc"
841}
842
843ohos_shared_library("liveformextensionability_napi") {
844  sanitize = {
845    cfi = true
846    cfi_cross_dso = true
847    debug = false
848  }
849  sources =
850      [ "live_form_extension_ability/live_form_extension_ability_module.cpp" ]
851
852  configs = [ ":fmskit_config" ]
853
854  deps = [
855    ":live_form_extension_ability_abc",
856    ":live_form_extension_ability_js",
857  ]
858
859  external_deps = [ "napi:ace_napi" ]
860
861  relative_install_dir = "module/app/form"
862  subsystem_name = "ability"
863  part_name = "form_fwk"
864}
865
866################################### gen_live_form_extension_context_abc ########################################
867es2abc_gen_abc("gen_live_form_extension_context_abc") {
868  src_js =
869      rebase_path("live_form_extension_context/live_form_extension_context.js")
870  dst_file = rebase_path(target_out_dir + "/live_form_extension_context.abc")
871  in_puts = [ "live_form_extension_context/live_form_extension_context.js" ]
872  out_puts = [ target_out_dir + "/live_form_extension_context.abc" ]
873  extra_args = [ "--module" ]
874}
875
876gen_js_obj("live_form_extension_context_js") {
877  input = "live_form_extension_context/live_form_extension_context.js"
878  output = target_out_dir + "/live_form_extension_context.o"
879}
880
881gen_js_obj("live_form_extension_context_abc") {
882  input = get_label_info(":gen_live_form_extension_context_abc",
883                         "target_out_dir") + "/live_form_extension_context.abc"
884  output = target_out_dir + "/live_form_extension_context_abc.o"
885  dep = ":gen_live_form_extension_context_abc"
886}
887
888ohos_shared_library("liveformextensioncontext_napi") {
889  sanitize = {
890    cfi = true
891    cfi_cross_dso = true
892    debug = false
893  }
894  sources =
895      [ "live_form_extension_context/live_form_extension_context_module.cpp" ]
896
897  configs = [ ":fmskit_config" ]
898
899  deps = [
900    ":live_form_extension_context_abc",
901    ":live_form_extension_context_js",
902  ]
903
904  external_deps = [ "napi:ace_napi" ]
905
906  relative_install_dir = "module/application"
907  subsystem_name = "ability"
908  part_name = "form_fwk"
909}
910
911################################### gen_live_form_extension_ability ########################################
912ohos_shared_library("live_form_extension") {
913  sanitize = {
914    cfi = true
915    cfi_cross_dso = true
916    debug = false
917  }
918  include_dirs = [ "live_form_extension_context" ]
919
920  sources = [
921    "live_form_extension_ability/js_live_form_extension.cpp",
922    "live_form_extension_ability/live_form_extension.cpp",
923    "live_form_extension_context/js_live_form_extension_context.cpp",
924    "live_form_extension_context/js_live_form_extension_impl.cpp",
925    "live_form_extension_context/live_form_extension_context.cpp",
926  ]
927
928  configs = [ ":fmskit_config" ]
929
930  deps = [
931    ":formutil_napi",
932    "${form_fwk_path}:fmskit_native",
933    "${form_fwk_path}:fmskit_provider_client",
934    "${form_fwk_path}:form_manager",
935  ]
936
937  external_deps = [
938    "ability_base:want",
939    "ability_runtime:ability_context_native",
940    "ability_runtime:abilitykit_native",
941    "ability_runtime:app_context",
942    "ability_runtime:napi_common",
943    "ability_runtime:runtime",
944    "ability_runtime:ui_extension",
945    "c_utils:utils",
946    "eventhandler:libeventhandler",
947    "hilog:libhilog",
948    "hitrace:hitrace_meter",
949    "ipc:ipc_napi",
950    "napi:ace_napi",
951  ]
952
953  subsystem_name = "ability"
954  part_name = "form_fwk"
955}
956
957ohos_shared_library("live_form_extension_module") {
958  sanitize = {
959    cfi = true
960    cfi_cross_dso = true
961    debug = false
962  }
963  include_dirs = [ "live_form_extension_context" ]
964
965  sources =
966      [ "live_form_extension_ability/live_form_extension_module_loader.cpp" ]
967
968  configs = [ ":fmskit_config" ]
969
970  deps = [ ":live_form_extension" ]
971
972  external_deps = [
973    "ability_base:configuration",
974    "ability_base:session_info",
975    "ability_base:want",
976    "ability_runtime:abilitykit_native",
977    "ability_runtime:appkit_native",
978    "ability_runtime:extensionkit_native",
979    "ability_runtime:runtime",
980    "ability_runtime:ui_extension",
981    "bundle_framework:appexecfwk_core",
982    "hilog:libhilog",
983    "ipc:ipc_napi",
984    "napi:ace_napi",
985  ]
986
987  if (ability_runtime_graphics) {
988    deps += [ "${form_fwk_path}:form_manager" ]
989  }
990
991  relative_install_dir = "extensionability"
992  subsystem_name = "ability"
993  part_name = "form_fwk"
994}
995