123b3eb3cSopenharmony_ci# Copyright (c) 2023-2024 Huawei Device Co., Ltd.
223b3eb3cSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
323b3eb3cSopenharmony_ci# you may not use this file except in compliance with the License.
423b3eb3cSopenharmony_ci# You may obtain a copy of the License at
523b3eb3cSopenharmony_ci#
623b3eb3cSopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
723b3eb3cSopenharmony_ci#
823b3eb3cSopenharmony_ci# Unless required by applicable law or agreed to in writing, software
923b3eb3cSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
1023b3eb3cSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1123b3eb3cSopenharmony_ci# See the License for the specific language governing permissions and
1223b3eb3cSopenharmony_ci# limitations under the License.
1323b3eb3cSopenharmony_ciimport("//build/ohos_var.gni")
1423b3eb3cSopenharmony_ciimport("//foundation/arkui/ace_engine/ace_config.gni")
1523b3eb3cSopenharmony_ciimport("//foundation/arkui/ace_engine/adapter/preview/build/config.gni")
1623b3eb3cSopenharmony_ci
1723b3eb3cSopenharmony_ci# Avoid conditional judgment branches caused by dynamic library suffixes.
1823b3eb3cSopenharmony_ciif (use_mac) {
1923b3eb3cSopenharmony_ci  dylib_suffix = ".dylib"
2023b3eb3cSopenharmony_ci  label_res =
2123b3eb3cSopenharmony_ci      "//base/global/resource_management/frameworks/resmgr:global_resmgr_mac"
2223b3eb3cSopenharmony_ci  label_hilog =
2323b3eb3cSopenharmony_ci      "//base/hiviewdfx/hilog/interfaces/native/innerkits:libhilog_mac"
2423b3eb3cSopenharmony_ci} else if (use_mingw_win) {
2523b3eb3cSopenharmony_ci  dylib_suffix = ".dll"
2623b3eb3cSopenharmony_ci  label_res =
2723b3eb3cSopenharmony_ci      "//base/global/resource_management/frameworks/resmgr:global_resmgr_win"
2823b3eb3cSopenharmony_ci  label_hilog =
2923b3eb3cSopenharmony_ci      "//base/hiviewdfx/hilog/interfaces/native/innerkits:libhilog_windows"
3023b3eb3cSopenharmony_ci} else if (use_linux || host_cpu == "arm64") {
3123b3eb3cSopenharmony_ci  dylib_suffix = ".so"
3223b3eb3cSopenharmony_ci  label_res =
3323b3eb3cSopenharmony_ci      "//base/global/resource_management/frameworks/resmgr:global_resmgr_linux"
3423b3eb3cSopenharmony_ci  label_hilog =
3523b3eb3cSopenharmony_ci      "//base/hiviewdfx/hilog/interfaces/native/innerkits:libhilog_linux"
3623b3eb3cSopenharmony_ci}
3723b3eb3cSopenharmony_ci
3823b3eb3cSopenharmony_cicommon_bin = [
3923b3eb3cSopenharmony_ci  {
4023b3eb3cSopenharmony_ci    label = "//third_party/curl:curl_shared"
4123b3eb3cSopenharmony_ci    subsystem_name = "thirdparty"
4223b3eb3cSopenharmony_ci    part_name = "curl"
4323b3eb3cSopenharmony_ci  },
4423b3eb3cSopenharmony_ci  {
4523b3eb3cSopenharmony_ci    label = "//third_party/nghttp2/lib:libnghttp2_shared"
4623b3eb3cSopenharmony_ci    subsystem_name = "thirdparty"
4723b3eb3cSopenharmony_ci    part_name = "nghttp2"
4823b3eb3cSopenharmony_ci  },
4923b3eb3cSopenharmony_ci  {
5023b3eb3cSopenharmony_ci    label = "//third_party/bounds_checking_function:libsec_shared"
5123b3eb3cSopenharmony_ci    subsystem_name = "thirdparty"
5223b3eb3cSopenharmony_ci    part_name = "bounds_checking_function"
5323b3eb3cSopenharmony_ci  },
5423b3eb3cSopenharmony_ci  {
5523b3eb3cSopenharmony_ci    label = "//foundation/arkui/napi:ace_napi"
5623b3eb3cSopenharmony_ci    subsystem_name = "arkui"
5723b3eb3cSopenharmony_ci    part_name = "napi"
5823b3eb3cSopenharmony_ci  },
5923b3eb3cSopenharmony_ci  {
6023b3eb3cSopenharmony_ci    label = "//third_party/cJSON:cjson"
6123b3eb3cSopenharmony_ci    subsystem_name = "thirdparty"
6223b3eb3cSopenharmony_ci    part_name = "cJSON"
6323b3eb3cSopenharmony_ci  },
6423b3eb3cSopenharmony_ci  {
6523b3eb3cSopenharmony_ci    label = "//third_party/icu/icu4c:shared_icui18n"
6623b3eb3cSopenharmony_ci    subsystem_name = "thirdparty"
6723b3eb3cSopenharmony_ci    part_name = "icu"
6823b3eb3cSopenharmony_ci    lib_names = [ "hmicui18n" ]
6923b3eb3cSopenharmony_ci  },
7023b3eb3cSopenharmony_ci  {
7123b3eb3cSopenharmony_ci    label = "//third_party/icu/icu4c:shared_icuuc"
7223b3eb3cSopenharmony_ci    subsystem_name = "thirdparty"
7323b3eb3cSopenharmony_ci    part_name = "icu"
7423b3eb3cSopenharmony_ci    lib_names = [ "hmicuuc" ]
7523b3eb3cSopenharmony_ci  },
7623b3eb3cSopenharmony_ci  {
7723b3eb3cSopenharmony_ci    label = "//base/global/i18n/frameworks/intl:intl_util"
7823b3eb3cSopenharmony_ci    subsystem_name = "global"
7923b3eb3cSopenharmony_ci    part_name = "i18n"
8023b3eb3cSopenharmony_ci    lib_names = [ "intl_util" ]
8123b3eb3cSopenharmony_ci  },
8223b3eb3cSopenharmony_ci  {
8323b3eb3cSopenharmony_ci    label = "//third_party/libuv:uv"
8423b3eb3cSopenharmony_ci    subsystem_name = "thirdparty"
8523b3eb3cSopenharmony_ci    part_name = "libuv"
8623b3eb3cSopenharmony_ci  },
8723b3eb3cSopenharmony_ci  {
8823b3eb3cSopenharmony_ci    label = "//foundation/graphic/graphic_2d/rosen/modules/glfw_render_context:libglfw_render_context"
8923b3eb3cSopenharmony_ci    subsystem_name = "graphic"
9023b3eb3cSopenharmony_ci    part_name = "graphic_2d"
9123b3eb3cSopenharmony_ci  },
9223b3eb3cSopenharmony_ci  {
9323b3eb3cSopenharmony_ci    label = "//foundation/graphic/graphic_2d/rosen/modules/render_service_base:librender_service_base"
9423b3eb3cSopenharmony_ci    subsystem_name = "graphic"
9523b3eb3cSopenharmony_ci    part_name = "graphic_2d"
9623b3eb3cSopenharmony_ci  },
9723b3eb3cSopenharmony_ci  {
9823b3eb3cSopenharmony_ci    label = "//foundation/graphic/graphic_2d/rosen/modules/render_service_client:librender_service_client"
9923b3eb3cSopenharmony_ci    subsystem_name = "graphic"
10023b3eb3cSopenharmony_ci    part_name = "graphic_2d"
10123b3eb3cSopenharmony_ci  },
10223b3eb3cSopenharmony_ci  {
10323b3eb3cSopenharmony_ci    label = "//third_party/glfw:glfw"
10423b3eb3cSopenharmony_ci    subsystem_name = "thirdparty"
10523b3eb3cSopenharmony_ci    part_name = "glfw"
10623b3eb3cSopenharmony_ci  },
10723b3eb3cSopenharmony_ci  {
10823b3eb3cSopenharmony_ci    label = "//foundation/graphic/graphic_2d/rosen/modules/texgine:libtexgine"
10923b3eb3cSopenharmony_ci    subsystem_name = "graphic"
11023b3eb3cSopenharmony_ci    part_name = "graphic_2d"
11123b3eb3cSopenharmony_ci  },
11223b3eb3cSopenharmony_ci  {
11323b3eb3cSopenharmony_ci    label = "//foundation/graphic/graphic_2d/rosen/modules/texgine/texgine_drawing:libtexgine_drawing"
11423b3eb3cSopenharmony_ci    subsystem_name = "graphic"
11523b3eb3cSopenharmony_ci    part_name = "graphic_2d"
11623b3eb3cSopenharmony_ci  },
11723b3eb3cSopenharmony_ci  {
11823b3eb3cSopenharmony_ci    label = "//foundation/graphic/graphic_2d/rosen/modules/graphics_effect:libgraphics_effect"
11923b3eb3cSopenharmony_ci    subsystem_name = "graphic"
12023b3eb3cSopenharmony_ci    part_name = "graphic_2d"
12123b3eb3cSopenharmony_ci  },
12223b3eb3cSopenharmony_ci  {
12323b3eb3cSopenharmony_ci    label = "//third_party/jsoncpp:jsoncpp"
12423b3eb3cSopenharmony_ci    subsystem_name = "thirdparty"
12523b3eb3cSopenharmony_ci    part_name = "jsoncpp"
12623b3eb3cSopenharmony_ci  },
12723b3eb3cSopenharmony_ci  {
12823b3eb3cSopenharmony_ci    label = "//third_party/skia:skia_canvaskit"
12923b3eb3cSopenharmony_ci    subsystem_name = "thirdparty"
13023b3eb3cSopenharmony_ci    part_name = "skia"
13123b3eb3cSopenharmony_ci  },
13223b3eb3cSopenharmony_ci  {
13323b3eb3cSopenharmony_ci    label = "//arkcompiler/ets_runtime:libark_jsruntime"
13423b3eb3cSopenharmony_ci    subsystem_name = "arkcompiler"
13523b3eb3cSopenharmony_ci    part_name = "ets_runtime"
13623b3eb3cSopenharmony_ci  },
13723b3eb3cSopenharmony_ci  {
13823b3eb3cSopenharmony_ci    label = "//arkcompiler/toolchain/tooling:libark_ecma_debugger"
13923b3eb3cSopenharmony_ci    subsystem_name = "arkcompiler"
14023b3eb3cSopenharmony_ci    part_name = "toolchain"
14123b3eb3cSopenharmony_ci    lib_names = [ "ark_tooling" ]
14223b3eb3cSopenharmony_ci  },
14323b3eb3cSopenharmony_ci  {
14423b3eb3cSopenharmony_ci    label = "//arkcompiler/toolchain/inspector:ark_debugger"
14523b3eb3cSopenharmony_ci    subsystem_name = "arkcompiler"
14623b3eb3cSopenharmony_ci    part_name = "toolchain"
14723b3eb3cSopenharmony_ci    lib_names = [ "ark_inspector" ]
14823b3eb3cSopenharmony_ci  },
14923b3eb3cSopenharmony_ci  {
15023b3eb3cSopenharmony_ci    label = "//third_party/openssl:libssl_shared"
15123b3eb3cSopenharmony_ci    subsystem_name = "thirdparty"
15223b3eb3cSopenharmony_ci    part_name = "openssl"
15323b3eb3cSopenharmony_ci    lib_names = [ "ssl_openssl" ]
15423b3eb3cSopenharmony_ci  },
15523b3eb3cSopenharmony_ci  {
15623b3eb3cSopenharmony_ci    label = "//third_party/openssl:libcrypto_shared"
15723b3eb3cSopenharmony_ci    subsystem_name = "thirdparty"
15823b3eb3cSopenharmony_ci    part_name = "openssl"
15923b3eb3cSopenharmony_ci    lib_names = [ "crypto_openssl" ]
16023b3eb3cSopenharmony_ci  },
16123b3eb3cSopenharmony_ci  {
16223b3eb3cSopenharmony_ci    label = label_res
16323b3eb3cSopenharmony_ci    subsystem_name = "global"
16423b3eb3cSopenharmony_ci    part_name = "resource_management"
16523b3eb3cSopenharmony_ci  },
16623b3eb3cSopenharmony_ci  {
16723b3eb3cSopenharmony_ci    label = label_hilog
16823b3eb3cSopenharmony_ci    subsystem_name = "hiviewdfx"
16923b3eb3cSopenharmony_ci    part_name = "hilog"
17023b3eb3cSopenharmony_ci  },
17123b3eb3cSopenharmony_ci  {
17223b3eb3cSopenharmony_ci    label = "//foundation/arkui/ace_engine/build:libace_compatible"
17323b3eb3cSopenharmony_ci    subsystem_name = "arkui"
17423b3eb3cSopenharmony_ci    part_name = "ace_engine"
17523b3eb3cSopenharmony_ci  },
17623b3eb3cSopenharmony_ci  {
17723b3eb3cSopenharmony_ci    label = "//foundation/arkui/ace_engine/interfaces/inner_api/ace:ace_forward_compatibility"
17823b3eb3cSopenharmony_ci    subsystem_name = "arkui"
17923b3eb3cSopenharmony_ci    part_name = "ace_engine"
18023b3eb3cSopenharmony_ci  },
18123b3eb3cSopenharmony_ci  {
18223b3eb3cSopenharmony_ci    label =
18323b3eb3cSopenharmony_ci        "//foundation/arkui/ace_engine/interfaces/inner_api/ace:ace_uicontent"
18423b3eb3cSopenharmony_ci    subsystem_name = "arkui"
18523b3eb3cSopenharmony_ci    part_name = "ace_engine"
18623b3eb3cSopenharmony_ci  },
18723b3eb3cSopenharmony_ci  {
18823b3eb3cSopenharmony_ci    label = "//foundation/arkui/ace_engine/interfaces/inner_api/drawable_descriptor:drawable_descriptor"
18923b3eb3cSopenharmony_ci    subsystem_name = "arkui"
19023b3eb3cSopenharmony_ci    part_name = "ace_engine"
19123b3eb3cSopenharmony_ci  },
19223b3eb3cSopenharmony_ci]
19323b3eb3cSopenharmony_ci
19423b3eb3cSopenharmony_ciif (enable_graphic_text_gine) {
19523b3eb3cSopenharmony_ci  common_bin += [
19623b3eb3cSopenharmony_ci    {
19723b3eb3cSopenharmony_ci      label = "//foundation/graphic/graphic_2d/rosen/modules/2d_graphics:2d_graphics_new"
19823b3eb3cSopenharmony_ci      subsystem_name = "graphic"
19923b3eb3cSopenharmony_ci      part_name = "graphic_2d"
20023b3eb3cSopenharmony_ci    },
20123b3eb3cSopenharmony_ci    {
20223b3eb3cSopenharmony_ci      label = "//foundation/graphic/graphic_2d/rosen/modules/2d_engine/rosen_text:rosen_text"
20323b3eb3cSopenharmony_ci      subsystem_name = "graphic"
20423b3eb3cSopenharmony_ci      part_name = "graphic_2d"
20523b3eb3cSopenharmony_ci    },
20623b3eb3cSopenharmony_ci  ]
20723b3eb3cSopenharmony_ci}
20823b3eb3cSopenharmony_ci
20923b3eb3cSopenharmony_ciif (defined(use_rosen_drawing) && use_rosen_drawing) {
21023b3eb3cSopenharmony_ci  common_bin += [
21123b3eb3cSopenharmony_ci    {
21223b3eb3cSopenharmony_ci      label = "//foundation/graphic/graphic_2d/rosen/modules/2d_graphics:2d_graphics"
21323b3eb3cSopenharmony_ci      subsystem_name = "graphic"
21423b3eb3cSopenharmony_ci      part_name = "graphic_2d"
21523b3eb3cSopenharmony_ci    },
21623b3eb3cSopenharmony_ci  ]
21723b3eb3cSopenharmony_ci
21823b3eb3cSopenharmony_ci  common_bin += [
21923b3eb3cSopenharmony_ci    {
22023b3eb3cSopenharmony_ci      label = "//foundation/graphic/graphic_2d/interfaces/kits/napi/graphic/drawing:drawing_napi_impl"
22123b3eb3cSopenharmony_ci      subsystem_name = "graphic"
22223b3eb3cSopenharmony_ci      part_name = "graphic_2d"
22323b3eb3cSopenharmony_ci    },
22423b3eb3cSopenharmony_ci  ]
22523b3eb3cSopenharmony_ci
22623b3eb3cSopenharmony_ci  common_bin -= [
22723b3eb3cSopenharmony_ci    {
22823b3eb3cSopenharmony_ci      label = "//foundation/graphic/graphic_2d/rosen/modules/texgine/texgine_drawing:libtexgine_drawing"
22923b3eb3cSopenharmony_ci      subsystem_name = "graphic"
23023b3eb3cSopenharmony_ci      part_name = "graphic_2d"
23123b3eb3cSopenharmony_ci    },
23223b3eb3cSopenharmony_ci  ]
23323b3eb3cSopenharmony_ci}
23423b3eb3cSopenharmony_ci
23523b3eb3cSopenharmony_ci_arkui_shared_libs = [
23623b3eb3cSopenharmony_ci  {
23723b3eb3cSopenharmony_ci    label = "//foundation/arkui/ace_engine/interfaces/napi/kits/drawabledescriptor:drawabledescriptor"
23823b3eb3cSopenharmony_ci    subsystem_name = "arkui"
23923b3eb3cSopenharmony_ci    part_name = "ace_engine"
24023b3eb3cSopenharmony_ci    lib_names = [ "drawabledescriptor" ]
24123b3eb3cSopenharmony_ci  },
24223b3eb3cSopenharmony_ci]
24323b3eb3cSopenharmony_ci
24423b3eb3cSopenharmony_ciif (defined(current_platform.config)) {
24523b3eb3cSopenharmony_ci  platform_config = current_platform.config
24623b3eb3cSopenharmony_ci  if (defined(platform_config.enable_component_test) &&
24723b3eb3cSopenharmony_ci      platform_config.enable_component_test && use_mingw_win) {
24823b3eb3cSopenharmony_ci    _arkui_shared_libs += [
24923b3eb3cSopenharmony_ci      {
25023b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/interfaces/napi/kits/component_test:componenttest"
25123b3eb3cSopenharmony_ci        subsystem_name = "arkui"
25223b3eb3cSopenharmony_ci        part_name = "ace_engine"
25323b3eb3cSopenharmony_ci        lib_names = [ "componenttest" ]
25423b3eb3cSopenharmony_ci      },
25523b3eb3cSopenharmony_ci    ]
25623b3eb3cSopenharmony_ci  }
25723b3eb3cSopenharmony_ci}
25823b3eb3cSopenharmony_ci
25923b3eb3cSopenharmony_cinapi_modules = [
26023b3eb3cSopenharmony_ci  {
26123b3eb3cSopenharmony_ci    prefix = "arkui"
26223b3eb3cSopenharmony_ci    shard_libs = _arkui_shared_libs
26323b3eb3cSopenharmony_ci  },
26423b3eb3cSopenharmony_ci  {
26523b3eb3cSopenharmony_ci    prefix = "multimedia"
26623b3eb3cSopenharmony_ci    shard_libs = [
26723b3eb3cSopenharmony_ci      {
26823b3eb3cSopenharmony_ci        label = "//foundation/multimedia/av_session/avpicker:avcastpicker"
26923b3eb3cSopenharmony_ci        subsystem_name = "multimedia"
27023b3eb3cSopenharmony_ci        part_name = "av_session"
27123b3eb3cSopenharmony_ci        lib_names = [ "avcastpicker" ]
27223b3eb3cSopenharmony_ci      },
27323b3eb3cSopenharmony_ci    ]
27423b3eb3cSopenharmony_ci  },
27523b3eb3cSopenharmony_ci  {
27623b3eb3cSopenharmony_ci    prefix = ""
27723b3eb3cSopenharmony_ci    shard_libs = [
27823b3eb3cSopenharmony_ci      {
27923b3eb3cSopenharmony_ci        label = "//base/hiviewdfx/hilog/interfaces/js/kits/napi:libhilognapi"
28023b3eb3cSopenharmony_ci        subsystem_name = "hiviewdfx"
28123b3eb3cSopenharmony_ci        part_name = "hilog"
28223b3eb3cSopenharmony_ci        lib_names = [ "hilog_napi" ]
28323b3eb3cSopenharmony_ci      },
28423b3eb3cSopenharmony_ci      {
28523b3eb3cSopenharmony_ci        label = "//commonlibrary/ets_utils/js_api_module/buffer:buffer_packages"
28623b3eb3cSopenharmony_ci        subsystem_name = "commonlibrary"
28723b3eb3cSopenharmony_ci        part_name = "ets_utils"
28823b3eb3cSopenharmony_ci        lib_names = [ "buffer" ]
28923b3eb3cSopenharmony_ci      },
29023b3eb3cSopenharmony_ci      {
29123b3eb3cSopenharmony_ci        label =
29223b3eb3cSopenharmony_ci            "//foundation/window/window_manager/previewer:previewer_window_napi"
29323b3eb3cSopenharmony_ci        subsystem_name = "window"
29423b3eb3cSopenharmony_ci        part_name = "window_manager"
29523b3eb3cSopenharmony_ci        lib_names = [ "previewer_window_napi" ]
29623b3eb3cSopenharmony_ci      },
29723b3eb3cSopenharmony_ci      {
29823b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/interfaces/napi/kits:napi_group"
29923b3eb3cSopenharmony_ci        subsystem_name = "arkui"
30023b3eb3cSopenharmony_ci        part_name = "ace_engine"
30123b3eb3cSopenharmony_ci        lib_names = [
30223b3eb3cSopenharmony_ci          "configuration",
30323b3eb3cSopenharmony_ci          "device",
30423b3eb3cSopenharmony_ci          "font",
30523b3eb3cSopenharmony_ci          "grid",
30623b3eb3cSopenharmony_ci          "measure",
30723b3eb3cSopenharmony_ci          "mediaquery",
30823b3eb3cSopenharmony_ci          "prompt",
30923b3eb3cSopenharmony_ci          "promptaction",
31023b3eb3cSopenharmony_ci          "router",
31123b3eb3cSopenharmony_ci          "animator",
31223b3eb3cSopenharmony_ci        ]
31323b3eb3cSopenharmony_ci      },
31423b3eb3cSopenharmony_ci    ]
31523b3eb3cSopenharmony_ci  },
31623b3eb3cSopenharmony_ci  {
31723b3eb3cSopenharmony_ci    prefix = "util"
31823b3eb3cSopenharmony_ci    shard_libs = [
31923b3eb3cSopenharmony_ci      {
32023b3eb3cSopenharmony_ci        label = "//commonlibrary/ets_utils/js_util_module/container:container_packages"
32123b3eb3cSopenharmony_ci        subsystem_name = "commonlibrary"
32223b3eb3cSopenharmony_ci        part_name = "ets_utils"
32323b3eb3cSopenharmony_ci        lib_names = [
32423b3eb3cSopenharmony_ci          "arraylist",
32523b3eb3cSopenharmony_ci          "deque",
32623b3eb3cSopenharmony_ci          "queue",
32723b3eb3cSopenharmony_ci          "vector",
32823b3eb3cSopenharmony_ci          "linkedlist",
32923b3eb3cSopenharmony_ci          "list",
33023b3eb3cSopenharmony_ci          "stack",
33123b3eb3cSopenharmony_ci          "struct",
33223b3eb3cSopenharmony_ci          "treemap",
33323b3eb3cSopenharmony_ci          "treeset",
33423b3eb3cSopenharmony_ci          "hashmap",
33523b3eb3cSopenharmony_ci          "hashset",
33623b3eb3cSopenharmony_ci          "lightweightmap",
33723b3eb3cSopenharmony_ci          "lightweightset",
33823b3eb3cSopenharmony_ci          "plainarray",
33923b3eb3cSopenharmony_ci        ]
34023b3eb3cSopenharmony_ci      },
34123b3eb3cSopenharmony_ci    ]
34223b3eb3cSopenharmony_ci  },
34323b3eb3cSopenharmony_ci  {
34423b3eb3cSopenharmony_ci    prefix = "arkui/advanced"
34523b3eb3cSopenharmony_ci    shard_libs = [
34623b3eb3cSopenharmony_ci      {
34723b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/chip/interfaces:chip"
34823b3eb3cSopenharmony_ci        subsystem_name = "arkui"
34923b3eb3cSopenharmony_ci        part_name = "ace_engine"
35023b3eb3cSopenharmony_ci        lib_names = [ "chip" ]
35123b3eb3cSopenharmony_ci      },
35223b3eb3cSopenharmony_ci      {
35323b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/chipgroup/interfaces:chipgroup"
35423b3eb3cSopenharmony_ci        subsystem_name = "arkui"
35523b3eb3cSopenharmony_ci        part_name = "ace_engine"
35623b3eb3cSopenharmony_ci        lib_names = [ "chipgroup" ]
35723b3eb3cSopenharmony_ci      },
35823b3eb3cSopenharmony_ci      {
35923b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/counter/interfaces:counter"
36023b3eb3cSopenharmony_ci        subsystem_name = "arkui"
36123b3eb3cSopenharmony_ci        part_name = "ace_engine"
36223b3eb3cSopenharmony_ci        lib_names = [ "counter" ]
36323b3eb3cSopenharmony_ci      },
36423b3eb3cSopenharmony_ci      {
36523b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/segmentbutton/interfaces:segmentbutton"
36623b3eb3cSopenharmony_ci        subsystem_name = "arkui"
36723b3eb3cSopenharmony_ci        part_name = "ace_engine"
36823b3eb3cSopenharmony_ci        lib_names = [ "segmentbutton" ]
36923b3eb3cSopenharmony_ci      },
37023b3eb3cSopenharmony_ci      {
37123b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/composelistitem/interfaces:composelistitem"
37223b3eb3cSopenharmony_ci        subsystem_name = "arkui"
37323b3eb3cSopenharmony_ci        part_name = "ace_engine"
37423b3eb3cSopenharmony_ci        lib_names = [ "composelistitem" ]
37523b3eb3cSopenharmony_ci      },
37623b3eb3cSopenharmony_ci      {
37723b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/composetitlebar/interfaces:composetitlebar"
37823b3eb3cSopenharmony_ci        subsystem_name = "arkui"
37923b3eb3cSopenharmony_ci        part_name = "ace_engine"
38023b3eb3cSopenharmony_ci        lib_names = [ "composetitlebar" ]
38123b3eb3cSopenharmony_ci      },
38223b3eb3cSopenharmony_ci      {
38323b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/dialog/interfaces:dialog"
38423b3eb3cSopenharmony_ci        subsystem_name = "arkui"
38523b3eb3cSopenharmony_ci        part_name = "ace_engine"
38623b3eb3cSopenharmony_ci        lib_names = [ "dialog" ]
38723b3eb3cSopenharmony_ci      },
38823b3eb3cSopenharmony_ci      {
38923b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/editabletitlebar/interfaces:editabletitlebar"
39023b3eb3cSopenharmony_ci        subsystem_name = "arkui"
39123b3eb3cSopenharmony_ci        part_name = "ace_engine"
39223b3eb3cSopenharmony_ci        lib_names = [ "editabletitlebar" ]
39323b3eb3cSopenharmony_ci      },
39423b3eb3cSopenharmony_ci      {
39523b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/filter/interfaces:filter"
39623b3eb3cSopenharmony_ci        subsystem_name = "arkui"
39723b3eb3cSopenharmony_ci        part_name = "ace_engine"
39823b3eb3cSopenharmony_ci        lib_names = [ "filter" ]
39923b3eb3cSopenharmony_ci      },
40023b3eb3cSopenharmony_ci      {
40123b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/progressbutton/interfaces:progressbutton"
40223b3eb3cSopenharmony_ci        subsystem_name = "arkui"
40323b3eb3cSopenharmony_ci        part_name = "ace_engine"
40423b3eb3cSopenharmony_ci        lib_names = [ "progressbutton" ]
40523b3eb3cSopenharmony_ci      },
40623b3eb3cSopenharmony_ci      {
40723b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/selecttitlebar/interfaces:selecttitlebar"
40823b3eb3cSopenharmony_ci        subsystem_name = "arkui"
40923b3eb3cSopenharmony_ci        part_name = "ace_engine"
41023b3eb3cSopenharmony_ci        lib_names = [ "selecttitlebar" ]
41123b3eb3cSopenharmony_ci      },
41223b3eb3cSopenharmony_ci      {
41323b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/splitlayout/interfaces:splitlayout"
41423b3eb3cSopenharmony_ci        subsystem_name = "arkui"
41523b3eb3cSopenharmony_ci        part_name = "ace_engine"
41623b3eb3cSopenharmony_ci        lib_names = [ "splitlayout" ]
41723b3eb3cSopenharmony_ci      },
41823b3eb3cSopenharmony_ci      {
41923b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/subheader/interfaces:subheader"
42023b3eb3cSopenharmony_ci        subsystem_name = "arkui"
42123b3eb3cSopenharmony_ci        part_name = "ace_engine"
42223b3eb3cSopenharmony_ci        lib_names = [ "subheader" ]
42323b3eb3cSopenharmony_ci      },
42423b3eb3cSopenharmony_ci      {
42523b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/swiperefresher/interfaces:swiperefresher"
42623b3eb3cSopenharmony_ci        subsystem_name = "arkui"
42723b3eb3cSopenharmony_ci        part_name = "ace_engine"
42823b3eb3cSopenharmony_ci        lib_names = [ "swiperefresher" ]
42923b3eb3cSopenharmony_ci      },
43023b3eb3cSopenharmony_ci      {
43123b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/tabtitlebar/interfaces:tabtitlebar"
43223b3eb3cSopenharmony_ci        subsystem_name = "arkui"
43323b3eb3cSopenharmony_ci        part_name = "ace_engine"
43423b3eb3cSopenharmony_ci        lib_names = [ "tabtitlebar" ]
43523b3eb3cSopenharmony_ci      },
43623b3eb3cSopenharmony_ci      {
43723b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/toolbar/interfaces:toolbar"
43823b3eb3cSopenharmony_ci        subsystem_name = "arkui"
43923b3eb3cSopenharmony_ci        part_name = "ace_engine"
44023b3eb3cSopenharmony_ci        lib_names = [ "toolbar" ]
44123b3eb3cSopenharmony_ci      },
44223b3eb3cSopenharmony_ci      {
44323b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/treeview/interfaces:treeview"
44423b3eb3cSopenharmony_ci        subsystem_name = "arkui"
44523b3eb3cSopenharmony_ci        part_name = "ace_engine"
44623b3eb3cSopenharmony_ci        lib_names = [ "treeview" ]
44723b3eb3cSopenharmony_ci      },
44823b3eb3cSopenharmony_ci      {
44923b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/selectionmenu/interfaces:selectionmenu"
45023b3eb3cSopenharmony_ci        subsystem_name = "arkui"
45123b3eb3cSopenharmony_ci        part_name = "ace_engine"
45223b3eb3cSopenharmony_ci        lib_names = [ "selectionmenu" ]
45323b3eb3cSopenharmony_ci      },
45423b3eb3cSopenharmony_ci      {
45523b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/popup/interfaces:popup"
45623b3eb3cSopenharmony_ci        subsystem_name = "arkui"
45723b3eb3cSopenharmony_ci        part_name = "ace_engine"
45823b3eb3cSopenharmony_ci        lib_names = [ "popup" ]
45923b3eb3cSopenharmony_ci      },
46023b3eb3cSopenharmony_ci      {
46123b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/gridobjectsortcomponent/interfaces:gridobjectsortcomponent"
46223b3eb3cSopenharmony_ci        subsystem_name = "arkui"
46323b3eb3cSopenharmony_ci        part_name = "ace_engine"
46423b3eb3cSopenharmony_ci        lib_names = [ "gridobjectsortcomponent" ]
46523b3eb3cSopenharmony_ci      },
46623b3eb3cSopenharmony_ci      {
46723b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/exceptionprompt/interfaces:exceptionprompt"
46823b3eb3cSopenharmony_ci        subsystem_name = "arkui"
46923b3eb3cSopenharmony_ci        part_name = "ace_engine"
47023b3eb3cSopenharmony_ci        lib_names = [ "exceptionprompt" ]
47123b3eb3cSopenharmony_ci      },
47223b3eb3cSopenharmony_ci      {
47323b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/fullscreenlaunchcomponent/interfaces:fullscreenlaunchcomponent"
47423b3eb3cSopenharmony_ci        subsystem_name = "arkui"
47523b3eb3cSopenharmony_ci        part_name = "ace_engine"
47623b3eb3cSopenharmony_ci        lib_names = [ "fullscreenlaunchcomponent" ]
47723b3eb3cSopenharmony_ci      },
47823b3eb3cSopenharmony_ci      {
47923b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/innerfullscreenlaunchcomponent/interfaces:innerfullscreenlaunchcomponent"
48023b3eb3cSopenharmony_ci        subsystem_name = "arkui"
48123b3eb3cSopenharmony_ci        part_name = "ace_engine"
48223b3eb3cSopenharmony_ci        lib_names = [ "innerfullscreenlaunchcomponent" ]
48323b3eb3cSopenharmony_ci      },
48423b3eb3cSopenharmony_ci      {
48523b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/formmenu/interfaces:formmenu"
48623b3eb3cSopenharmony_ci        subsystem_name = "arkui"
48723b3eb3cSopenharmony_ci        part_name = "ace_engine"
48823b3eb3cSopenharmony_ci        lib_names = [ "formmenu" ]
48923b3eb3cSopenharmony_ci      },
49023b3eb3cSopenharmony_ci      {
49123b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/foldsplitcontainer/interfaces:foldsplitcontainer"
49223b3eb3cSopenharmony_ci        subsystem_name = "arkui"
49323b3eb3cSopenharmony_ci        part_name = "ace_engine"
49423b3eb3cSopenharmony_ci        lib_names = [ "foldsplitcontainer" ]
49523b3eb3cSopenharmony_ci      },
49623b3eb3cSopenharmony_ci    ]
49723b3eb3cSopenharmony_ci  },
49823b3eb3cSopenharmony_ci  {
49923b3eb3cSopenharmony_ci    prefix = "atomicservice"
50023b3eb3cSopenharmony_ci    shard_libs = [
50123b3eb3cSopenharmony_ci      {
50223b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/atomicservicenavigation/interfaces:atomicservicenavigation"
50323b3eb3cSopenharmony_ci        subsystem_name = "arkui"
50423b3eb3cSopenharmony_ci        part_name = "ace_engine"
50523b3eb3cSopenharmony_ci        lib_names = [ "atomicservicenavigation" ]
50623b3eb3cSopenharmony_ci      },
50723b3eb3cSopenharmony_ci      {
50823b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/atomicservicetabs/interfaces:atomicservicetabs"
50923b3eb3cSopenharmony_ci        subsystem_name = "arkui"
51023b3eb3cSopenharmony_ci        part_name = "ace_engine"
51123b3eb3cSopenharmony_ci        lib_names = [ "atomicservicetabs" ]
51223b3eb3cSopenharmony_ci      },
51323b3eb3cSopenharmony_ci      {
51423b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/atomicserviceweb/interfaces:atomicserviceweb"
51523b3eb3cSopenharmony_ci        subsystem_name = "arkui"
51623b3eb3cSopenharmony_ci        part_name = "ace_engine"
51723b3eb3cSopenharmony_ci        lib_names = [ "atomicserviceweb" ]
51823b3eb3cSopenharmony_ci      },
51923b3eb3cSopenharmony_ci      {
52023b3eb3cSopenharmony_ci        label = "//foundation/arkui/ace_engine/advanced_ui_component/interstitialdialogaction/interfaces:interstitialdialogaction"
52123b3eb3cSopenharmony_ci        subsystem_name = "arkui"
52223b3eb3cSopenharmony_ci        part_name = "ace_engine"
52323b3eb3cSopenharmony_ci        lib_names = [ "interstitialdialogaction" ]
52423b3eb3cSopenharmony_ci      },
52523b3eb3cSopenharmony_ci    ]
52623b3eb3cSopenharmony_ci  },
52723b3eb3cSopenharmony_ci]
52823b3eb3cSopenharmony_ci
52923b3eb3cSopenharmony_ciif (defined(use_rosen_drawing) && use_rosen_drawing) {
53023b3eb3cSopenharmony_ci  napi_modules += [
53123b3eb3cSopenharmony_ci    {
53223b3eb3cSopenharmony_ci      prefix = "graphics"
53323b3eb3cSopenharmony_ci      shard_libs = [
53423b3eb3cSopenharmony_ci        {
53523b3eb3cSopenharmony_ci          label = "//foundation/graphic/graphic_2d/interfaces/kits/napi/graphic/drawing:drawing_napi"
53623b3eb3cSopenharmony_ci          subsystem_name = "graphic"
53723b3eb3cSopenharmony_ci          part_name = "graphic_2d"
53823b3eb3cSopenharmony_ci          lib_names = [ "drawing_napi" ]
53923b3eb3cSopenharmony_ci        },
54023b3eb3cSopenharmony_ci        {
54123b3eb3cSopenharmony_ci          label = "//foundation/graphic/graphic_2d/interfaces/kits/napi/graphic/ui_effect:uieffect_napi"
54223b3eb3cSopenharmony_ci          subsystem_name = "graphic"
54323b3eb3cSopenharmony_ci          part_name = "graphic_2d"
54423b3eb3cSopenharmony_ci          lib_names = [ "uieffect_napi" ]
54523b3eb3cSopenharmony_ci        },
54623b3eb3cSopenharmony_ci      ]
54723b3eb3cSopenharmony_ci    },
54823b3eb3cSopenharmony_ci  ]
54923b3eb3cSopenharmony_ci}
55023b3eb3cSopenharmony_ci
55123b3eb3cSopenharmony_ciif (use_mac || use_mingw_win) {
55223b3eb3cSopenharmony_ci  common_bin += [
55323b3eb3cSopenharmony_ci    {
55423b3eb3cSopenharmony_ci      label = "//foundation/distributeddatamgr/preferences/interfaces/inner_api:native_preferences"
55523b3eb3cSopenharmony_ci      subsystem_name = "distributeddatamgr"
55623b3eb3cSopenharmony_ci      part_name = "preferences"
55723b3eb3cSopenharmony_ci    },
55823b3eb3cSopenharmony_ci    {
55923b3eb3cSopenharmony_ci      label = "//foundation/distributeddatamgr/relational_store/interfaces/inner_api/rdb:native_rdb"
56023b3eb3cSopenharmony_ci      subsystem_name = "distributeddatamgr"
56123b3eb3cSopenharmony_ci      part_name = "relational_store"
56223b3eb3cSopenharmony_ci    },
56323b3eb3cSopenharmony_ci    {
56423b3eb3cSopenharmony_ci      label = "//third_party/sqlite:sqlite_sdk"
56523b3eb3cSopenharmony_ci      subsystem_name = "thirdparty"
56623b3eb3cSopenharmony_ci      part_name = "sqlite"
56723b3eb3cSopenharmony_ci    },
56823b3eb3cSopenharmony_ci    {
56923b3eb3cSopenharmony_ci      label = "//third_party/openssl:libcrypto_restool"
57023b3eb3cSopenharmony_ci      subsystem_name = "thirdparty"
57123b3eb3cSopenharmony_ci      part_name = "openssl"
57223b3eb3cSopenharmony_ci    },
57323b3eb3cSopenharmony_ci    {
57423b3eb3cSopenharmony_ci      label = "//foundation/distributeddatamgr/kv_store/kvstoremock/interfaces/innerkits/distributeddata:distributeddata_inner_mock"
57523b3eb3cSopenharmony_ci      subsystem_name = "distributeddatamgr"
57623b3eb3cSopenharmony_ci      part_name = "kv_store"
57723b3eb3cSopenharmony_ci    },
57823b3eb3cSopenharmony_ci    {
57923b3eb3cSopenharmony_ci      label = "//foundation/distributeddatamgr/kv_store/kvstoremock/distributeddb:distributeddb_mock"
58023b3eb3cSopenharmony_ci      subsystem_name = "distributeddatamgr"
58123b3eb3cSopenharmony_ci      part_name = "kv_store"
58223b3eb3cSopenharmony_ci    },
58323b3eb3cSopenharmony_ci    {
58423b3eb3cSopenharmony_ci      label = "//third_party/zlib:shared_libz"
58523b3eb3cSopenharmony_ci      subsystem_name = "thirdparty"
58623b3eb3cSopenharmony_ci      part_name = "zlib"
58723b3eb3cSopenharmony_ci      lib_names = [ "shared_libz" ]
58823b3eb3cSopenharmony_ci    },
58923b3eb3cSopenharmony_ci    {
59023b3eb3cSopenharmony_ci      label = "//foundation/filemanagement/file_api/utils/filemgmt_libhilog:filemgmt_libhilog"
59123b3eb3cSopenharmony_ci      subsystem_name = "filemanagement"
59223b3eb3cSopenharmony_ci      part_name = "file_api"
59323b3eb3cSopenharmony_ci      lib_names = [ "filemgmt_libhilog" ]
59423b3eb3cSopenharmony_ci    },
59523b3eb3cSopenharmony_ci    {
59623b3eb3cSopenharmony_ci      label = "//foundation/filemanagement/file_api/utils/filemgmt_libn:filemgmt_libn"
59723b3eb3cSopenharmony_ci      subsystem_name = "filemanagement"
59823b3eb3cSopenharmony_ci      part_name = "file_api"
59923b3eb3cSopenharmony_ci      lib_names = [ "filemgmt_libn" ]
60023b3eb3cSopenharmony_ci    },
60123b3eb3cSopenharmony_ci  ]
60223b3eb3cSopenharmony_ci
60323b3eb3cSopenharmony_ci  napi_modules += [
60423b3eb3cSopenharmony_ci    {
60523b3eb3cSopenharmony_ci      prefix = "data"
60623b3eb3cSopenharmony_ci      shard_libs = [
60723b3eb3cSopenharmony_ci        {
60823b3eb3cSopenharmony_ci          label = "//foundation/distributeddatamgr/preferences/frameworks/js/napi/preferences:preferences"
60923b3eb3cSopenharmony_ci          subsystem_name = "distributeddatamgr"
61023b3eb3cSopenharmony_ci          part_name = "preferences"
61123b3eb3cSopenharmony_ci        },
61223b3eb3cSopenharmony_ci        {
61323b3eb3cSopenharmony_ci          label = "//foundation/distributeddatamgr/relational_store/frameworks/js/napi/rdb:rdb"
61423b3eb3cSopenharmony_ci          subsystem_name = "distributeddatamgr"
61523b3eb3cSopenharmony_ci          part_name = "relational_store"
61623b3eb3cSopenharmony_ci        },
61723b3eb3cSopenharmony_ci        {
61823b3eb3cSopenharmony_ci          label = "//foundation/distributeddatamgr/kv_store/kvstoremock/interfaces/jskits/distributeddata:distributeddata"
61923b3eb3cSopenharmony_ci          subsystem_name = "distributeddatamgr"
62023b3eb3cSopenharmony_ci          part_name = "kv_store"
62123b3eb3cSopenharmony_ci        },
62223b3eb3cSopenharmony_ci        {
62323b3eb3cSopenharmony_ci          label = "//foundation/distributeddatamgr/kv_store/kvstoremock/interfaces/jskits/distributedkvstore:distributedkvstore"
62423b3eb3cSopenharmony_ci          subsystem_name = "distributeddatamgr"
62523b3eb3cSopenharmony_ci          part_name = "kv_store"
62623b3eb3cSopenharmony_ci        },
62723b3eb3cSopenharmony_ci      ]
62823b3eb3cSopenharmony_ci    },
62923b3eb3cSopenharmony_ci    {
63023b3eb3cSopenharmony_ci      prefix = "net"
63123b3eb3cSopenharmony_ci      shard_libs = [
63223b3eb3cSopenharmony_ci        {
63323b3eb3cSopenharmony_ci          label =
63423b3eb3cSopenharmony_ci              "//foundation/communication/netstack/frameworks/js/napi/http:http"
63523b3eb3cSopenharmony_ci          subsystem_name = "communication"
63623b3eb3cSopenharmony_ci          part_name = "netstack"
63723b3eb3cSopenharmony_ci        },
63823b3eb3cSopenharmony_ci      ]
63923b3eb3cSopenharmony_ci    },
64023b3eb3cSopenharmony_ci    {
64123b3eb3cSopenharmony_ci      prefix = "file"
64223b3eb3cSopenharmony_ci      shard_libs = [
64323b3eb3cSopenharmony_ci        {
64423b3eb3cSopenharmony_ci          label = "//foundation/filemanagement/file_api/interfaces/kits/js:fs"
64523b3eb3cSopenharmony_ci          subsystem_name = "filemanagement"
64623b3eb3cSopenharmony_ci          part_name = "file_api"
64723b3eb3cSopenharmony_ci        },
64823b3eb3cSopenharmony_ci      ]
64923b3eb3cSopenharmony_ci    },
65023b3eb3cSopenharmony_ci  ]
65123b3eb3cSopenharmony_ci}
652