1#Copyright (c) 2020-2022 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/lite/config/subsystem/aafwk/path.gni")
15
16ACE_LITE_PATH = "//foundation/arkui/ace_engine_lite/frameworks"
17ACE_LITE_COMMON_PATH = "//foundation/arkui/ace_engine_lite/frameworks/common"
18NATIVE_ENGINE_PATH =
19    "//foundation/arkui/ace_engine_lite/frameworks/native_engine"
20MODULE_MANAGER_PATH =
21    "//foundation/arkui/ace_engine_lite/frameworks/module_manager"
22GRAPHIC_LITE_PATH = "//foundation/arkui/ui_lite"
23
24ace_lite_common_defines = []
25
26if (!defined(global_parts_info) ||
27    defined(global_parts_info.graphic_surface_lite)) {
28  ace_engine_lite_surface_lite_enable = true
29  ace_lite_common_defines += [ "ace_engine_lite_surface_lite_enable" ]
30} else {
31  ace_engine_lite_surface_lite_enable = false
32}
33
34if (!defined(global_parts_info) ||
35    defined(global_parts_info.communication_netstack)) {
36  ace_engine_lite_netstack_enable = true
37  ace_lite_common_defines += [ "ACE_ENGINE_LITE_NETSTACK_ENABLE" ]
38} else {
39  ace_engine_lite_netstack_enable = false
40}
41
42if (!defined(global_parts_info) ||
43    defined(global_parts_info.powermgr_battery_lite)) {
44  ace_engine_lite_battery_lite_enable = true
45  ace_lite_common_defines += [ "ACE_ENGINE_LITE_BATTERY_LITE_ENABLE" ]
46} else {
47  ace_engine_lite_battery_lite_enable = false
48}
49
50if (!defined(global_parts_info) ||
51    defined(global_parts_info.distributeddatamgr_kv_store)) {
52  ace_engine_lite_kv_store_enable = true
53  ace_lite_common_defines += [ "ACE_ENGINE_LITE_KV_STORE_ENABLE" ]
54} else {
55  ace_engine_lite_kv_store_enable = false
56}
57
58if (!defined(global_parts_info) ||
59    defined(global_parts_info.multimedia_media_lite)) {
60  ace_engine_lite_media_lite_enable = true
61  ace_lite_common_defines += [ "ACE_ENGINE_LITE_MEDIA_LITE_ENABLE" ]
62} else {
63  ace_engine_lite_media_lite_enable = false
64}
65
66if (!defined(global_parts_info) ||
67    defined(global_parts_info.multimedia_camera_lite)) {
68  ace_engine_lite_camera_lite_enable = true
69  ace_lite_common_defines += [ "ACE_ENGINE_LITE_CAMERA_LITE_ENABLE" ]
70} else {
71  ace_engine_lite_camera_lite_enable = false
72}
73
74ace_lite_include_dirs = [
75  "$GRAPHIC_LITE_PATH/interfaces/kits/config",
76  "$GRAPHIC_LITE_PATH/interfaces/kits/animator",
77  "$GRAPHIC_LITE_PATH/interfaces/kits/common",
78  "$GRAPHIC_LITE_PATH/interfaces/kits/components",
79  "$GRAPHIC_LITE_PATH/interfaces/kits/dfx",
80  "$GRAPHIC_LITE_PATH/interfaces/kits/events",
81  "$GRAPHIC_LITE_PATH/interfaces/kits/font",
82  "$GRAPHIC_LITE_PATH/interfaces/kits/layout",
83  "$GRAPHIC_LITE_PATH/interfaces/kits/themes",
84  "$GRAPHIC_LITE_PATH/interfaces/innerkits/common",
85  "//foundation/communication/ipc/interfaces/innerkits/c/ipc/include",
86  "//commonlibrary/utils_lite/include",
87  "${aafwk_lite_path}/interfaces/kits/ability_lite",
88  "${aafwk_lite_path}/interfaces/kits/want_lite",
89  "${aafwk_lite_path}/frameworks/abilitymgr_lite/include",
90  "${aafwk_lite_path}/interfaces/inner_api/abilitymgr_lite",
91  "${appexecfwk_lite_path}/interfaces/kits/bundle_lite",
92  "${appexecfwk_lite_path}/utils/bundle_lite",
93]
94
95ace_lite_include_dirs += [
96  "//third_party/bounds_checking_function/include",
97  "//foundation/arkui/ace_engine_lite/interfaces/inner_api/builtin/async",
98  "//foundation/arkui/ace_engine_lite/interfaces/inner_api/builtin/base",
99  "//foundation/arkui/ace_engine_lite/interfaces/inner_api/builtin/jsi",
100  "$ACE_LITE_PATH/include/context",
101  "$ACE_LITE_PATH/include/base",
102  "$ACE_LITE_PATH/include/modules",
103  "$ACE_LITE_PATH/include/resource",
104  "$ACE_LITE_PATH/src/core",
105  "$ACE_LITE_PATH/src/core/animation",
106  "$ACE_LITE_PATH/src/core/base",
107  "$ACE_LITE_PATH/src/core/components",
108  "$ACE_LITE_PATH/src/core/context",
109  "$ACE_LITE_PATH/src/core/directive",
110  "$ACE_LITE_PATH/src/core/router",
111  "$ACE_LITE_PATH/src/core/modules",
112  "$ACE_LITE_PATH/src/core/router",
113  "$ACE_LITE_PATH/src/core/stylemgr",
114  "$ACE_LITE_PATH/src/core/wrapper",
115  "$ACE_LITE_PATH/targets",
116  "$ACE_LITE_COMMON_PATH/log",
117  "$ACE_LITE_COMMON_PATH/memory",
118  "$ACE_LITE_COMMON_PATH/memory/cache",
119  "$ACE_LITE_COMMON_PATH/utils",
120  "$NATIVE_ENGINE_PATH",
121  "$NATIVE_ENGINE_PATH/jsi",
122  "$MODULE_MANAGER_PATH",
123  "//third_party/jerryscript/jerry-core/include",
124  "//third_party/jerryscript/jerry-ext/include/jerryscript-ext",
125  "//third_party/jerryscript/jerry-port/default/include",
126  "//third_party/jerryscript/jerry-core/api",
127  "//third_party/jerryscript/jerry-core",
128  "//third_party/jerryscript/jerry-core/ecma/base",
129  "//third_party/jerryscript/jerry-core/jrt",
130  "//third_party/jerryscript/jerry-core/jmem",
131  "//third_party/jerryscript/jerry-core/lit",
132  "//third_party/cJSON",
133  "//commonlibrary/utils_lite/timer_task/include/",
134  "//third_party/freetype/include",
135  "//base/global/resource_management_lite/interfaces/inner_api/include",
136  "//base/global/i18n_lite/interfaces/kits/i18n/include",
137  "//base/startup/init/interfaces/innerkits/include",
138  "//base/startup/init/interfaces/innerkits/syscap",
139  "//base/hiviewdfx/hilog_lite/interfaces/native/kits",
140]
141
142ace_lite_include_dirs_simulator = [
143  "$GRAPHIC_LITE_PATH/interfaces/kits/config",
144  "$GRAPHIC_LITE_PATH/interfaces/kits/ui/animator",
145  "$GRAPHIC_LITE_PATH/interfaces/kits/ui/common",
146  "$GRAPHIC_LITE_PATH/interfaces/kits/ui/components",
147  "$GRAPHIC_LITE_PATH/interfaces/kits/ui/dfx",
148  "$GRAPHIC_LITE_PATH/interfaces/kits/ui/events",
149  "$GRAPHIC_LITE_PATH/interfaces/kits/ui/font",
150  "$GRAPHIC_LITE_PATH/interfaces/kits/ui/layout",
151  "$GRAPHIC_LITE_PATH/interfaces/kits/ui/themes",
152  "$GRAPHIC_LITE_PATH/interfaces/innerkits/ui/common",
153  "//foundation/communication/ipc/interfaces/innerkits/c/ipc/include",
154  "//base/hiviewdfx/hilog_lite/interfaces/native/kits",
155  "${aafwk_lite_path}/frameworks/abilitymgr_lite/include",
156]
157
158ace_lite_sources = [
159  "$ACE_LITE_PATH/src/core/animation/transition_impl.cpp",
160  "$ACE_LITE_PATH/src/core/base/ace_lock.cpp",
161  "$ACE_LITE_PATH/src/core/base/async_task_manager.cpp",
162  "$ACE_LITE_PATH/src/core/base/dft_impl.cpp",
163  "$ACE_LITE_PATH/src/core/base/dfx_assist.cpp",
164  "$ACE_LITE_PATH/src/core/base/event_util.cpp",
165  "$ACE_LITE_PATH/src/core/base/js_debugger_config.cpp",
166  "$ACE_LITE_PATH/src/core/base/js_fwk_common.cpp",
167  "$ACE_LITE_PATH/src/core/base/key_parser.cpp",
168  "$ACE_LITE_PATH/src/core/base/lazy_load_manager.cpp",
169  "$ACE_LITE_PATH/src/core/base/lazy_load_watcher.cpp",
170  "$ACE_LITE_PATH/src/core/base/locale_util.cpp",
171  "$ACE_LITE_PATH/src/core/base/number_parser.cpp",
172  "$ACE_LITE_PATH/src/core/base/product_adapter.cpp",
173  "$ACE_LITE_PATH/src/core/base/string_util.cpp",
174  "$ACE_LITE_PATH/src/core/base/system_info.cpp",
175  "$ACE_LITE_PATH/src/core/base/time_util.cpp",
176  "$ACE_LITE_PATH/src/core/components/analog_clock_component.cpp",
177  "$ACE_LITE_PATH/src/core/components/camera_component.cpp",
178  "$ACE_LITE_PATH/src/core/components/canvas_component.cpp",
179  "$ACE_LITE_PATH/src/core/components/chart_component.cpp",
180  "$ACE_LITE_PATH/src/core/components/circle_progress_component.cpp",
181  "$ACE_LITE_PATH/src/core/components/clock_hand_component.cpp",
182  "$ACE_LITE_PATH/src/core/components/component.cpp",
183  "$ACE_LITE_PATH/src/core/components/component_utils.cpp",
184  "$ACE_LITE_PATH/src/core/components/div_component.cpp",
185  "$ACE_LITE_PATH/src/core/components/event_listener.cpp",
186  "$ACE_LITE_PATH/src/core/components/horizon_progress_component.cpp",
187  "$ACE_LITE_PATH/src/core/components/image_animator_component.cpp",
188  "$ACE_LITE_PATH/src/core/components/image_component.cpp",
189  "$ACE_LITE_PATH/src/core/components/input_button_component.cpp",
190  "$ACE_LITE_PATH/src/core/components/input_checkbox_component.cpp",
191  "$ACE_LITE_PATH/src/core/components/input_edittext_component.cpp",
192  "$ACE_LITE_PATH/src/core/components/input_radio_component.cpp",
193  "$ACE_LITE_PATH/src/core/components/list_adapter.cpp",
194  "$ACE_LITE_PATH/src/core/components/list_component.cpp",
195  "$ACE_LITE_PATH/src/core/components/marquee_component.cpp",
196  "$ACE_LITE_PATH/src/core/components/panel_view.cpp",
197  "$ACE_LITE_PATH/src/core/components/picker_view_component.cpp",
198  "$ACE_LITE_PATH/src/core/components/qrcode_component.cpp",
199  "$ACE_LITE_PATH/src/core/components/scroll_layer.cpp",
200  "$ACE_LITE_PATH/src/core/components/slider_component.cpp",
201  "$ACE_LITE_PATH/src/core/components/stack_component.cpp",
202  "$ACE_LITE_PATH/src/core/components/swiper_component.cpp",
203  "$ACE_LITE_PATH/src/core/components/switch_component.cpp",
204  "$ACE_LITE_PATH/src/core/components/tab_bar_component.cpp",
205  "$ACE_LITE_PATH/src/core/components/tab_content_component.cpp",
206  "$ACE_LITE_PATH/src/core/components/tabs_component.cpp",
207  "$ACE_LITE_PATH/src/core/components/text_component.cpp",
208  "$ACE_LITE_PATH/src/core/components/video_component.cpp",
209  "$ACE_LITE_PATH/src/core/components/video_view.cpp",
210  "$ACE_LITE_PATH/src/core/context/ace_ability.cpp",
211  "$ACE_LITE_PATH/src/core/context/ace_event_error_code.cpp",
212  "$ACE_LITE_PATH/src/core/context/fatal_handler.cpp",
213  "$ACE_LITE_PATH/src/core/context/js_ability.cpp",
214  "$ACE_LITE_PATH/src/core/context/js_ability_impl.cpp",
215  "$ACE_LITE_PATH/src/core/context/js_app_context.cpp",
216  "$ACE_LITE_PATH/src/core/context/js_app_environment.cpp",
217  "$ACE_LITE_PATH/src/core/context/js_framework_raw.cpp",
218  "$ACE_LITE_PATH/src/core/context/js_profiler.cpp",
219  "$ACE_LITE_PATH/src/core/context/js_timer_list.cpp",
220  "$ACE_LITE_PATH/src/core/dialog/js_dialog.cpp",
221  "$ACE_LITE_PATH/src/core/directive/descriptor_utils.cpp",
222  "$ACE_LITE_PATH/src/core/directive/directive_watcher_callback.cpp",
223  "$ACE_LITE_PATH/src/core/modules/app_module.cpp",
224  "$ACE_LITE_PATH/src/core/modules/dfx_module.cpp",
225  "$ACE_LITE_PATH/src/core/modules/dialog_module.cpp",
226  "$ACE_LITE_PATH/src/core/modules/presets/app_data_module.cpp",
227  "$ACE_LITE_PATH/src/core/modules/presets/cjson_parser.cpp",
228  "$ACE_LITE_PATH/src/core/modules/presets/console_log_impl.cpp",
229  "$ACE_LITE_PATH/src/core/modules/presets/console_module.cpp",
230  "$ACE_LITE_PATH/src/core/modules/presets/date_time_format_module.cpp",
231  "$ACE_LITE_PATH/src/core/modules/presets/image_module.cpp",
232  "$ACE_LITE_PATH/src/core/modules/presets/intl_module.cpp",
233  "$ACE_LITE_PATH/src/core/modules/presets/localization_module.cpp",
234  "$ACE_LITE_PATH/src/core/modules/presets/number_format_module.cpp",
235  "$ACE_LITE_PATH/src/core/modules/presets/preset_module.cpp",
236  "$ACE_LITE_PATH/src/core/modules/presets/profiler_module.cpp",
237  "$ACE_LITE_PATH/src/core/modules/presets/render_module.cpp",
238  "$ACE_LITE_PATH/src/core/modules/presets/require_module.cpp",
239  "$ACE_LITE_PATH/src/core/modules/presets/syscap_module.cpp",
240  "$ACE_LITE_PATH/src/core/modules/presets/timer_module.cpp",
241  "$ACE_LITE_PATH/src/core/modules/presets/version_module.cpp",
242  "$ACE_LITE_PATH/src/core/modules/router_module.cpp",
243  "$ACE_LITE_PATH/src/core/modules/sample_module.cpp",
244  "$ACE_LITE_PATH/src/core/resource/video_muted_image_res.cpp",
245  "$ACE_LITE_PATH/src/core/resource/video_play_image_res.cpp",
246  "$ACE_LITE_PATH/src/core/router/js_page_state.cpp",
247  "$ACE_LITE_PATH/src/core/router/js_page_state_machine.cpp",
248  "$ACE_LITE_PATH/src/core/router/js_router.cpp",
249  "$ACE_LITE_PATH/src/core/stylemgr/app_style.cpp",
250  "$ACE_LITE_PATH/src/core/stylemgr/app_style_item.cpp",
251  "$ACE_LITE_PATH/src/core/stylemgr/app_style_list.cpp",
252  "$ACE_LITE_PATH/src/core/stylemgr/app_style_manager.cpp",
253  "$ACE_LITE_PATH/src/core/stylemgr/app_style_sheet.cpp",
254  "$ACE_LITE_PATH/src/core/stylemgr/condition_arbitrator.cpp",
255  "$ACE_LITE_PATH/src/core/stylemgr/link_queue.cpp",
256  "$ACE_LITE_PATH/src/core/stylemgr/link_stack.cpp",
257  "$ACE_LITE_PATH/src/core/wrapper/js.cpp",
258  "$ACE_LITE_PATH/targets/platform_adapter.cpp",
259]
260