• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 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.
13import("//build/ohos.gni")
14import("//foundation/distributeddatamgr/udmf/adapter/arkui_x_udmf.gni")
15import("//foundation/distributeddatamgr/udmf/udmf.gni")
16
17config("udmf_client_config") {
18  include_dirs = [
19    "${udmf_interfaces_path}/innerkits/client",
20    "${udmf_interfaces_path}/innerkits/common",
21    "${udmf_interfaces_path}/innerkits/data",
22    "${udmf_framework_path}/common",
23    "${udmf_framework_path}/innerkitsimpl/data",
24    "${udmf_framework_path}/innerkitsimpl/service",
25    "${kv_store_path}/frameworks/common",
26    "${third_party_path}/libuv/include",
27    "${third_party_path}/node/src",
28    "${kv_store_path}/frameworks/innerkitsimpl/distributeddatafwk/include",
29    "${kv_store_path}/frameworks/innerkitsimpl/distributeddatafwk/src",
30    "${kv_store_path}/frameworks/innerkitsimpl/distributeddatasvc/include",
31    "${kv_store_path}/interfaces/innerkits/distributeddata/include",
32    "${file_service_path}/interfaces/common/include",
33    "${file_service_path}/interfaces/innerkits/native/file_uri/include",
34  ]
35}
36
37config("udmf_napi_config") {
38  include_dirs = [
39    "${udmf_interfaces_path}/innerkits/client",
40    "${udmf_interfaces_path}/innerkits/common",
41    "${udmf_interfaces_path}/innerkits/data",
42    "${udmf_interfaces_path}/jskits/common",
43    "${udmf_interfaces_path}/jskits/data",
44
45    "${udmf_framework_path}/common",
46    "${udmf_framework_path}/innerkitsimpl/data",
47    "${udmf_framework_path}/innerkits/service",
48
49    "${third_party_path}/libuv/include",
50    "${third_party_path}/node/src",
51
52    "${aafwk_inner_api_path}/ability_manager/include",
53    "${aafwk_kits_path}/appkit/native/app/include/",
54    "${aafwk_kits_path}/ability/native/include",
55    "${aafwk_napi_path}/inner/napi_common",
56    "${aafwk_service_path}/abilitymgr/include",
57    "${aafwk_service_path}/common/include",
58  ]
59}
60
61config("arkui_x_udmf_config") {
62  include_dirs = [
63    "${arkui_x_image_framework_path}/interfaces/innerkits/include",
64    "${arkui_x_image_framework_path}/interfaces/kits/js/common/include",
65    "${arkui_x_image_framework_path}/frameworks/innerkitsimpl/receiver/include",
66    "${arkui_x_image_framework_path}/frameworks/innerkitsimpl/utils/include",
67    "${arkui_x_graphic_2d_path}/rosen/modules/platform/ipc_core",
68    "${arkui_x_graphic_2d_path}/utils/color_manager/export",
69    "${arkui_x_graphic_surface_path}/interfaces/inner_api/common",
70    "${arkui_x_graphic_surface_path}/interfaces/inner_api/surface",
71    "${arkui_x_graphic_surface_path}/interfaces/inner_api/utils",
72    "${third_party_path}/skia",
73  ]
74
75  defines = [ "CROSS_PLATFORM" ]
76}
77
78arkui_x_public_source = [
79  "${udmf_framework_path}/innerkitsimpl/client/getter_system.cpp",
80  "${udmf_framework_path}/innerkitsimpl/common/unified_key.cpp",
81  "${udmf_framework_path}/innerkitsimpl/data/application_defined_record.cpp",
82  "${udmf_framework_path}/innerkitsimpl/data/audio.cpp",
83  "${udmf_framework_path}/innerkitsimpl/data/file.cpp",
84  "${udmf_framework_path}/innerkitsimpl/data/flexible_type.cpp",
85  "${udmf_framework_path}/innerkitsimpl/data/folder.cpp",
86  "${udmf_framework_path}/innerkitsimpl/data/html.cpp",
87  "${udmf_framework_path}/innerkitsimpl/data/image.cpp",
88  "${udmf_framework_path}/innerkitsimpl/data/link.cpp",
89  "${udmf_framework_path}/innerkitsimpl/data/plain_text.cpp",
90  "${udmf_framework_path}/innerkitsimpl/data/preset_type_descriptors.cpp",
91  "${udmf_framework_path}/innerkitsimpl/data/system_defined_appitem.cpp",
92  "${udmf_framework_path}/innerkitsimpl/data/system_defined_form.cpp",
93  "${udmf_framework_path}/innerkitsimpl/data/system_defined_pixelmap.cpp",
94  "${udmf_framework_path}/innerkitsimpl/data/system_defined_record.cpp",
95  "${udmf_framework_path}/innerkitsimpl/data/text.cpp",
96  "${udmf_framework_path}/innerkitsimpl/data/type_descriptor.cpp",
97  "${udmf_framework_path}/innerkitsimpl/data/unified_data.cpp",
98  "${udmf_framework_path}/innerkitsimpl/data/unified_record.cpp",
99  "${udmf_framework_path}/innerkitsimpl/data/video.cpp",
100  "${udmf_framework_path}/common/utd_graph.cpp",
101  "${udmf_framework_path}/common/graph.cpp",
102  "${udmf_root_path}/adapter/framework/innerkitsimpl/common/unified_meta.cpp",
103  "${udmf_root_path}/adapter/framework/innerkitsimpl/client/utd_client.cpp",
104]
105
106ohos_source_set("arkui_x_udmf_data") {
107  sources = [
108    "${udmf_framework_path}/common/base32_utils.cpp",
109    "${udmf_framework_path}/common/custom_utd_json_parser.cpp",
110    "${udmf_framework_path}/common/custom_utd_store.cpp",
111    "${udmf_framework_path}/common/utd_cfgs_checker.cpp",
112    "${udmf_root_path}/adapter/framework/common/udmf_utils.cpp",
113  ]
114
115  sources += arkui_x_public_source
116
117  deps = [
118    "${arkui_path}/ace_engine/adapter/${target_os}/build:libarkui_${target_os}",
119    "${arkui_x_c_utils_path}/base:utilsbase",
120    "${arkui_x_hilog_path}/interfaces/native/innerkits:libhilog_${target_os}",
121    "${third_party_path}/cJSON:cjson_static",
122  ]
123
124  configs = [
125    ":arkui_x_udmf_config",
126    ":udmf_client_config",
127    "${ability_runtime_cross_platform_path}/interfaces/inner_api/want:want_params_config",
128  ]
129
130  subsystem_name = "distributeddatamgr"
131  part_name = "udmf"
132}
133
134ohos_source_set("arkui_x_udmf_data_inner") {
135  sources = arkui_x_public_source
136
137  include_dirs = [ "${arkui_x_hilog_path}/interfaces/native/innerkits/include" ]
138
139  deps = [
140    "${arkui_path}/napi/:ace_napi",
141    "${arkui_x_c_utils_path}/base:utilsbase",
142    "${arkui_x_hilog_path}/interfaces/native/innerkits:libhilog_${target_os}",
143  ]
144
145  configs = [
146    ":arkui_x_udmf_config",
147    ":udmf_client_config",
148    "${ability_runtime_cross_platform_path}/interfaces/inner_api/want:want_params_config",
149  ]
150
151  subsystem_name = "distributeddatamgr"
152  part_name = "udmf"
153}
154
155config("arkui_x_udmf_napi_config") {
156  include_dirs = [
157    "${arkui_path}/napi/interfaces/kits",
158    "${arkui_path}/napi/interfaces/inner_api",
159    "${arkui_x_hilog_path}/interfaces/native/innerkits/include",
160    "${arkui_x_image_framework_path}/interfaces/kits/js/common/include",
161    "${arkui_x_image_framework_path}/frameworks/innerkitsimpl/receiver/include",
162    "${arkui_x_image_framework_path}/frameworks/innerkitsimpl/utils/include",
163    "${arkui_x_image_framework_path}/interfaces/innerkits/include",
164    "${arkui_x_graphic_surface_path}/interfaces/inner_api/common",
165    "${arkui_x_graphic_surface_path}/interfaces/inner_api/surface",
166    "${arkui_x_graphic_surface_path}/interfaces/inner_api/utils",
167    "${arkui_x_graphic_2d_path}/utils/color_manager/export",
168    "${arkui_x_graphic_2d_path}/rosen/modules/platform/ipc_core",
169    "${third_party_path}/skia",
170  ]
171  if (current_os == "ios") {
172    defines = [ "IOS_PLATFORM" ]
173  }
174}
175
176ohos_source_set("arkui_x_uniformtypedescriptor") {
177  include_dirs = [
178    "${ability_runtime_cross_platform_path}/frameworks/js/napi/napi_common",
179    "${udmf_framework_path}/innerkitsimpl/data",
180    "${udmf_root_path}/adapter/framework/innerkitsimpl/client",
181  ]
182
183  sources = [
184    "${udmf_framework_path}/jskitsimpl/common/napi_data_utils.cpp",
185    "${udmf_framework_path}/jskitsimpl/common/napi_error_utils.cpp",
186    "${udmf_framework_path}/jskitsimpl/common/napi_queue.cpp",
187    "${udmf_framework_path}/jskitsimpl/data/type_descriptor_napi.cpp",
188    "${udmf_framework_path}/jskitsimpl/data/uniform_type_descriptor_napi.cpp",
189    "${udmf_interfaces_path}/jskits/module/uniform_type_descriptor_napi_module.cpp",
190    "${udmf_root_path}/adapter/framework/innerkitsimpl/client/udmf_client.cpp",
191  ]
192  deps = [
193    ":arkui_x_udmf_data",
194    "${arkui_x_c_utils_path}/base:utilsbase",
195    "${arkui_x_hilog_path}/interfaces/native/innerkits:libhilog_${target_os}",
196    "${arkui_x_plugin_path}/libs/napi:napi_${target_os}",
197  ]
198
199  public_configs = [
200    ":udmf_napi_config",
201    ":arkui_x_udmf_napi_config",
202    "${ability_runtime_cross_platform_path}/interfaces/inner_api/jsruntime:jsruntime_config",
203    "${ability_runtime_cross_platform_path}/interfaces/inner_api/hilog:ability_cross_platform_hilog_config",
204    "${ability_runtime_cross_platform_path}/interfaces/inner_api/want:want_params_config",
205  ]
206
207  subsystem_name = "distributeddatamgr"
208  part_name = "udmf"
209}
210
211ohos_source_set("arkui_x_unifieddatachannel") {
212  include_dirs = [
213    "${ability_runtime_cross_platform_path}/frameworks/js/napi/napi_common",
214    "${kv_store_path}/interfaces/innerkits/distributeddata/include",
215    "${udmf_root_path}/adapter/framework/innerkitsimpl/client",
216    "${third_party_path}/bounds_checking_function/include",
217  ]
218
219  sources = [
220    "${udmf_framework_path}/jskitsimpl/common/napi_data_utils.cpp",
221    "${udmf_framework_path}/jskitsimpl/common/napi_error_utils.cpp",
222    "${udmf_framework_path}/jskitsimpl/common/napi_queue.cpp",
223    "${udmf_framework_path}/jskitsimpl/data/application_defined_record_napi.cpp",
224    "${udmf_framework_path}/jskitsimpl/data/audio_napi.cpp",
225    "${udmf_framework_path}/jskitsimpl/data/file_napi.cpp",
226    "${udmf_framework_path}/jskitsimpl/data/folder_napi.cpp",
227    "${udmf_framework_path}/jskitsimpl/data/html_napi.cpp",
228    "${udmf_framework_path}/jskitsimpl/data/image_napi.cpp",
229    "${udmf_framework_path}/jskitsimpl/data/link_napi.cpp",
230    "${udmf_framework_path}/jskitsimpl/data/plain_text_napi.cpp",
231    "${udmf_framework_path}/jskitsimpl/data/summary_napi.cpp",
232    "${udmf_framework_path}/jskitsimpl/data/system_defined_appitem_napi.cpp",
233    "${udmf_framework_path}/jskitsimpl/data/system_defined_form_napi.cpp",
234    "${udmf_framework_path}/jskitsimpl/data/system_defined_pixelmap_napi.cpp",
235    "${udmf_framework_path}/jskitsimpl/data/system_defined_record_napi.cpp",
236    "${udmf_framework_path}/jskitsimpl/data/text_napi.cpp",
237    "${udmf_framework_path}/jskitsimpl/data/unified_data_channel_napi.cpp",
238    "${udmf_framework_path}/jskitsimpl/data/unified_data_napi.cpp",
239    "${udmf_framework_path}/jskitsimpl/data/unified_data_properties_napi.cpp",
240    "${udmf_framework_path}/jskitsimpl/data/unified_record_napi.cpp",
241    "${udmf_framework_path}/jskitsimpl/data/video_napi.cpp",
242    "${udmf_interfaces_path}/jskits/module/unified_data_channel_napi_module.cpp",
243    "${udmf_root_path}/adapter/framework/innerkitsimpl/client/udmf_client.cpp",
244  ]
245
246  ldflags = [ "-Wl,--exclude-libs=ALL" ]
247
248  public_configs = [
249    ":udmf_napi_config",
250    ":arkui_x_udmf_napi_config",
251    "${ability_runtime_cross_platform_path}/interfaces/inner_api/jsruntime:jsruntime_config",
252    "${ability_runtime_cross_platform_path}/interfaces/inner_api/hilog:ability_cross_platform_hilog_config",
253    "${ability_runtime_cross_platform_path}/interfaces/inner_api/want:want_params_config",
254  ]
255
256  deps = [
257    ":arkui_x_udmf_data",
258    "${ability_runtime_cross_platform_path}/interfaces/inner_api/want:cross_platform_want_params",
259    "${arkui_x_c_utils_path}/base:utilsbase",
260    "${arkui_x_hilog_path}/interfaces/native/innerkits:libhilog_${target_os}",
261    "${arkui_x_plugin_path}/libs/napi:napi_${target_os}",
262  ]
263
264  subsystem_name = "distributeddatamgr"
265  part_name = "udmf"
266}
267
268ohos_source_set("arkui_x_udmf_data_napi") {
269  include_dirs = [
270    "${ability_runtime_cross_platform_path}/frameworks/js/napi/napi_common",
271    "${ability_runtime_cross_platform_path}/interfaces/inner_api/want",
272    "${kv_store_path}/interfaces/innerkits/distributeddata/include",
273  ]
274
275  sources = [
276    "${udmf_framework_path}/jskitsimpl/common/napi_data_utils.cpp",
277    "${udmf_framework_path}/jskitsimpl/common/napi_error_utils.cpp",
278    "${udmf_framework_path}/jskitsimpl/common/napi_queue.cpp",
279    "${udmf_framework_path}/jskitsimpl/data/application_defined_record_napi.cpp",
280    "${udmf_framework_path}/jskitsimpl/data/audio_napi.cpp",
281    "${udmf_framework_path}/jskitsimpl/data/file_napi.cpp",
282    "${udmf_framework_path}/jskitsimpl/data/folder_napi.cpp",
283    "${udmf_framework_path}/jskitsimpl/data/html_napi.cpp",
284    "${udmf_framework_path}/jskitsimpl/data/image_napi.cpp",
285    "${udmf_framework_path}/jskitsimpl/data/link_napi.cpp",
286    "${udmf_framework_path}/jskitsimpl/data/plain_text_napi.cpp",
287    "${udmf_framework_path}/jskitsimpl/data/summary_napi.cpp",
288    "${udmf_framework_path}/jskitsimpl/data/system_defined_appitem_napi.cpp",
289    "${udmf_framework_path}/jskitsimpl/data/system_defined_form_napi.cpp",
290    "${udmf_framework_path}/jskitsimpl/data/system_defined_pixelmap_napi.cpp",
291    "${udmf_framework_path}/jskitsimpl/data/system_defined_record_napi.cpp",
292    "${udmf_framework_path}/jskitsimpl/data/text_napi.cpp",
293    "${udmf_framework_path}/jskitsimpl/data/unified_data_napi.cpp",
294    "${udmf_framework_path}/jskitsimpl/data/unified_data_properties_napi.cpp",
295    "${udmf_framework_path}/jskitsimpl/data/unified_record_napi.cpp",
296    "${udmf_framework_path}/jskitsimpl/data/video_napi.cpp",
297  ]
298
299  public_configs = [
300    ":udmf_napi_config",
301    ":arkui_x_udmf_napi_config",
302    "${ability_runtime_cross_platform_path}/interfaces/inner_api/want:want_params_config",
303  ]
304
305  deps = [
306    ":arkui_x_udmf_data_inner",
307    "${ability_runtime_cross_platform_path}/frameworks/js/napi/napi_common:napi_common",
308    "${ability_runtime_cross_platform_path}/interfaces/inner_api/want:cross_platform_want_params",
309    "${arkui_x_c_utils_path}/base:utilsbase",
310  ]
311
312  subsystem_name = "distributeddatamgr"
313  part_name = "udmf"
314}
315