1# Copyright (C) 2021-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. 13import("//build/config/components/idl_tool/idl.gni") 14import("//build/ohos.gni") 15import("../../../core_service/telephony_core_service.gni") 16 17SUBSYSTEM_DIR = "../../../" 18TELEPHONY_CORE_SERVICE_ROOT = "$SUBSYSTEM_DIR/core_service" 19TELEPHONY_INTERFACES_INNERKITS = 20 "$TELEPHONY_CORE_SERVICE_ROOT/interfaces/innerkits" 21TELEPHONY_FRAMEWORKS_NATIVE_ROOT = 22 "$TELEPHONY_CORE_SERVICE_ROOT/frameworks/native/" 23TELEPHONY_IMS_CORE_SERVICE_ROOT = 24 "$TELEPHONY_CORE_SERVICE_ROOT/services/ims_service_interaction" 25 26config("tel_core_service_api_config") { 27 # header file path 28 include_dirs = [ 29 "$TELEPHONY_INTERFACES_INNERKITS/include", 30 "$TELEPHONY_INTERFACES_INNERKITS/ims/include", 31 "$TELEPHONY_INTERFACES_INNERKITS/satellite", 32 "$TELEPHONY_CORE_SERVICE_ROOT/utils/common/include", 33 ] 34 if (core_service_support_esim) { 35 include_dirs += [ "${target_gen_dir}" ] 36 } 37 38 cflags = [] 39 if (is_double_framework) { 40 cflags = [ "-DCONFIG_DUAL_FRAMEWORK" ] 41 } 42 if (target_cpu == "arm") { 43 cflags += [ "-DBINDER_IPC_32BIT" ] 44 } 45 if (is_standard_system) { 46 cflags += [ "-DCONFIG_STANDARD_SYSTEM" ] 47 } 48 if (defined(build_public_version) && build_public_version) { 49 cflags += [ "-DBUILD_PUBLIC_VERSION" ] 50 } 51} 52 53if (core_service_support_esim) { 54 idl_interface_sources = [ "${target_gen_dir}/esim_service_proxy.cpp" ] 55 56 idl_gen_interface("esim_service_api") { 57 src_idl = rebase_path("IEsimService.idl") 58 dst_file = string_join(",", idl_interface_sources) 59 log_domainid = "0xD001F04" 60 log_tag = "CoreServiceApi" 61 } 62} 63 64ohos_shared_library("tel_core_service_api") { 65 sanitize = { 66 cfi = true 67 cfi_cross_dso = true 68 debug = false 69 } 70 branch_protector_ret = "pac_ret" 71 sources = [ 72 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/cell_information.cpp", 73 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/cell_location.cpp", 74 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/core_manager_inner.cpp", 75 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/core_service_client.cpp", 76 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/core_service_proxy.cpp", 77 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/i_network_search_callback_stub.cpp", 78 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/ims_reg_info_callback_stub.cpp", 79 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/network_information.cpp", 80 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/network_search_result.cpp", 81 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/network_state.cpp", 82 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/nr_ssb_information.cpp", 83 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/operator_config_types.cpp", 84 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/raw_parcel_callback_stub.cpp", 85 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/resource_utils.cpp", 86 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/response_esim_result.cpp", 87 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/signal_information.cpp", 88 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/tel_ril_base_parcel.cpp", 89 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/telephony_state_registry_client.cpp", 90 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/telephony_state_registry_proxy.cpp", 91 "$TELEPHONY_IMS_CORE_SERVICE_ROOT/src/ims_core_service_callback_proxy.cpp", 92 "$TELEPHONY_IMS_CORE_SERVICE_ROOT/src/ims_core_service_proxy.cpp", 93 ] 94 95 if (core_service_support_esim) { 96 sources += [ 97 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/download_profile_config_info_parcel.cpp", 98 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/download_profile_result_parcel.cpp", 99 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/downloadable_profile_parcel.cpp", 100 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/esim_service_client.cpp", 101 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/euicc_info_parcel.cpp", 102 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/get_downloadable_profiles_result_parcel.cpp", 103 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/iesim_service_callback_stub.cpp", 104 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/profile_info_list_parcel.cpp", 105 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/profile_metadata_result_parcel.cpp", 106 "$TELEPHONY_FRAMEWORKS_NATIVE_ROOT/src/contract_request_data_parcel.cpp", 107 "${target_gen_dir}/esim_service_proxy.cpp", 108 ] 109 } 110 111 version_script = 112 "$TELEPHONY_INTERFACES_INNERKITS/libtel_core_service_api.versionscript" 113 114 defines = [ 115 "TELEPHONY_LOG_TAG = \"CoreServiceApi\"", 116 "LOG_DOMAIN = 0xD001F04", 117 ] 118 119 defines += telephony_extra_defines 120 121 public_configs = [ "$TELEPHONY_CORE_SERVICE_ROOT/utils:telephony_log_config" ] 122 123 public_configs += [ ":tel_core_service_api_config" ] 124 125 if (core_service_support_esim) { 126 deps = [ ":esim_service_api" ] 127 } 128 129 external_deps = [ 130 "ability_base:want", 131 "bundle_framework:appexecfwk_base", 132 "bundle_framework:appexecfwk_core", 133 "c_utils:utils", 134 "eventhandler:libeventhandler", 135 "hilog:libhilog", 136 "init:libbegetutil", 137 "ipc:ipc_single", 138 "resource_management:global_resmgr", 139 "samgr:samgr_proxy", 140 ] 141 142 if (core_service_support_esim) { 143 external_deps += [ "ipc:ipc_core" ] 144 } 145 146 cflags_cc = [ 147 "-O2", 148 "-D_FORTIFY_SOURCE=2", 149 ] 150 151 innerapi_tags = [ "platformsdk" ] 152 part_name = "core_service" 153 subsystem_name = "telephony" 154} 155