# Copyright (C) 2021 Huawei Device Co., Ltd.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
import("//build/ohos.gni")
import("../../callmanager.gni")
SUBSYSTEM_DIR = "../.."
config("call_manager_config") {
include_dirs = [
"include",
"${SUBSYSTEM_DIR}/interfaces/innerkits",
"${SUBSYSTEM_DIR}/utils/include",
]
}
ohos_shared_library("tel_call_manager_api") {
sanitize = {
cfi = true
cfi_cross_dso = true
cfi_no_nvcall = true
debug = false
}
branch_protector_ret = "pac_ret"
version_script = "tel_call_manager_api.versionscript"
sources = [
"src/bluetooth_call_client.cpp",
"src/bluetooth_call_proxy.cpp",
"src/call_ability_callback.cpp",
"src/call_ability_callback_stub.cpp",
"src/call_manager_client.cpp",
"src/call_manager_proxy.cpp",
"src/call_manager_service_proxy.cpp",
"src/call_status_callback_proxy.cpp",
"src/cellular_call_proxy.cpp",
"src/native_call_manager_hisysevent.cpp",
"src/native_call_manager_utils.cpp",
"src/nearlink_call_client.cpp",
"src/voip_call_manager_proxy.cpp",
]
public_configs = [ ":call_manager_config" ]
external_deps = [
"ability_base:base",
"ability_base:want",
"ability_runtime:ability_manager",
"access_token:libaccesstoken_sdk",
"c_utils:utils",
"common_event_service:cesfwk_innerkits",
"core_service:libtel_common",
"core_service:tel_core_service_api",
"eventhandler:libeventhandler",
"graphic_surface:surface",
"hilog:libhilog",
"ffrt:libffrt",
"hisysevent:libhisysevent",
"hitrace:libhitracechain",
"init:libbegetutil",
"ipc:ipc_single",
"safwk:system_ability_fwk",
"samgr:samgr_proxy",
]
cflags_cc = [
"-Wunused",
"-Wunreachable-code",
"-fno-exceptions",
"-fno-rtti",
"-fstack-protector-all",
"-Os",
"-flto",
"-Wno-unused-but-set-variable",
"-fdata-sections",
"-ffunction-sections",
"-fno-asynchronous-unwind-tables",
"-fno-unwind-tables",
]
ldflags = [
"-flto",
"-Wl,--gc-sections",
]
defines = [
"TELEPHONY_LOG_TAG = \"CallManagerApi\"",
"LOG_DOMAIN = 0xD001F10",
]
if (device_name == "rk3568") {
defines += [ "CALL_MANAGER_AUTO_START_OPTIMIZE" ]
}
defines += call_manager_defines
part_name = "call_manager"
innerapi_tags = [ "platformsdk" ]
subsystem_name = "telephony"
}