1# Copyright (c) 2024-2025 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/arkui/ace_engine/ace_config.gni") 16 17config("ace_kit_config") { 18 include_dirs = [ 19 "$ace_root/interfaces/inner_api/ace_kit/include", 20 ] 21} 22 23ohos_source_set("ace_kit") { 24 subsystem_name = ace_engine_subsystem 25 part_name = ace_engine_part 26 27 public_configs = [ ":ace_kit_config" ] 28 29 configs = [ "$ace_root:ace_config" ] 30 31 defines = [ 32 "USE_ARK_ENGINE", 33 "NOGDI", 34 ] 35 36 cflags_cc = [ "-Wno-macro-redefined" ] 37 38 sources = [ 39 "src/agingadapation/aging_adapation_dialog_util.cpp", 40 "src/animation/animation_utils.cpp", 41 "src/napi/napi_parser.cpp", 42 "src/properties/property.cpp", 43 "src/resource/resource_parser.cpp", 44 "src/utils/measure_utils.cpp", 45 "src/view/components/column.cpp", 46 "src/view/components/custom_node.cpp", 47 "src/view/components/menu_view.cpp", 48 "src/view/components/tabs.cpp", 49 "src/view/components/text.cpp", 50 "src/view/draw/content_modifier.cpp", 51 "src/view/draw/modifier_adapter.cpp", 52 "src/view/extend_pattern.cpp", 53 "src/view/frame_node_impl.cpp", 54 "src/view/layout/box_layout_algorithm.cpp", 55 "src/view/overlay/overlay_manager_impl.cpp", 56 "src/view/scroller_impl.cpp", 57 "src/view/theme/theme_factory.cpp", 58 "src/view/theme/theme_style_impl.cpp", 59 "src/view/theme/token_colors.cpp", 60 "src/view/theme/token_theme.cpp", 61 "src/view/ui_context_impl.cpp", 62 "src/view/view.cpp", 63 "src/view_factory/abstract_view_factory.cpp", 64 "src/view_stack/view_stack_processor.cpp", 65 ] 66 67 include_dirs = [ 68 "$ace_root", 69 "$ace_root/frameworks", 70 "$ace_root/interfaces/inner_api/ace_kit/src", 71 ] 72 73 deps = [ "$ace_root/frameworks/core/components/theme:build_theme_code" ] 74 external_deps = [ "hilog:libhilog" ] 75 76 if (is_arkui_x) { 77 include_dirs += [ 78 "//foundation/arkui/napi", 79 "//third_party/node/src", 80 ] 81 deps += [ 82 "${ace_graphic}/rosen/modules/render_service_client:librender_service_client_static", 83 "//third_party/libuv:uv_static" 84 ] 85 } else { 86 external_deps += [ 87 "graphic_2d:librender_service_client", 88 "napi:ace_napi", 89 ] 90 } 91 92 if (current_os == "ohos") { 93 external_deps += [ "ipc:ipc_single" ] 94 } 95} 96