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")
14SUBSYSTEM_DIR = "../../../../"
15import("$SUBSYSTEM_DIR/core_service/telephony_core_service.gni")
16
17ohos_shared_library("esim") {
18  sanitize = {
19    cfi = true
20    cfi_cross_dso = true
21    debug = false
22  }
23  branch_protector_ret = "pac_ret"
24  if (core_service_support_esim) {
25    include_dirs = [
26      "include",
27      "$SUBSYSTEM_DIR/core_service/frameworks/js/napi",
28      "$SUBSYSTEM_DIR/core_service/interfaces/kits/native",
29      "$SUBSYSTEM_DIR/core_service/interfaces/innerkits/include",
30    ]
31
32    sources = [
33      "$SUBSYSTEM_DIR/core_service/frameworks/js/napi/napi_util.cpp",
34      "$SUBSYSTEM_DIR/core_service/frameworks/native/src/download_profile_config_info_parcel.cpp",
35      "$SUBSYSTEM_DIR/core_service/frameworks/native/src/download_profile_result_parcel.cpp",
36      "$SUBSYSTEM_DIR/core_service/frameworks/native/src/downloadable_profile_parcel.cpp",
37      "$SUBSYSTEM_DIR/core_service/frameworks/native/src/euicc_info_parcel.cpp",
38      "$SUBSYSTEM_DIR/core_service/frameworks/native/src/get_downloadable_profiles_result_parcel.cpp",
39      "$SUBSYSTEM_DIR/core_service/frameworks/native/src/profile_info_list_parcel.cpp",
40      "$SUBSYSTEM_DIR/core_service/frameworks/native/src/profile_metadata_result_parcel.cpp",
41      "$SUBSYSTEM_DIR/core_service/frameworks/native/src/response_esim_result.cpp",
42      "src/napi_esim.cpp",
43    ]
44  }
45
46  configs = [ "$SUBSYSTEM_DIR/core_service/utils:telephony_log_config" ]
47
48  deps = [
49    "$SUBSYSTEM_DIR/core_service/interfaces/innerkits:tel_core_service_api",
50    "$SUBSYSTEM_DIR/core_service/utils:libtel_common",
51  ]
52
53  external_deps = [
54    "ability_runtime:abilitykit_native",
55    "c_utils:utils",
56    "hilog:libhilog",
57    "init:libbegetutil",
58    "ipc:ipc_single",
59    "napi:ace_napi",
60  ]
61
62  defines = [
63    "TELEPHONY_LOG_TAG = \"CoreServiceEsimJsApi\"",
64    "LOG_DOMAIN = 0xD001F04",
65  ]
66  subsystem_name = "telephony"
67  part_name = "core_service"
68  relative_install_dir = "module/telephony"
69}
70