# Copyright (c) 2021-2022 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/lite/config/component/lite_component.gni")
import("//build/ohos.gni")
## Build Contacts_DataAbility.hap
ohos_app("Contacts_DataAbility") {
deps = [
]
publicity_file = "publicity.xml"
certificate_profile = "./signature/contactsdata.p7b"
hap_name = "Contacts_DataAbility"
part_name = "contacts_data"
subsystem_name = "applications"
module_install_dir = "app/com.ohos.contactsdataability"
# hvigor_home = "//commandline-tools/command-line-tools/hvigor"
# sdk_home = "//commandline-tools/command-line-tools/sdk"
# node_version = "v18.20.1"
# sdk_type_name = [ "hwsdk.dir" ]
system_lib_deps = [ "//applications/standard/contacts_data:contactsdataability" ]
assemble_type = "assembleHap"
js_build_mode = "release"
build_level = "module"
build_modules = [ "contactsdata" ]
if (defined(sign_hap_py_path)) {
certificate_profile = "${certificate_profile_path}"
key_alias = "contacts_data"
private_key_path = "contacts_data"
compatible_version = "9"
}
}
ohos_app_scope("Contacts_DataAbility_app_profile") {
app_profile = "AppScope/app.json"
sources = [ "AppScope/resources" ]
}
ohos_js_assets("Contacts_DataAbility_js_assets") {
ets2abc = true
source_dir = "entry/src/main/ets"
}
ohos_resources("Contacts_DataAbility_resources") {
sources = [ "entry/src/main/resources" ]
deps = [ ":Contacts_DataAbility_app_profile" ]
hap_profile = "entry/src/main/module.json"
}
## Build contactsdataability.so {{{
config("contactsdataability_public_config") {
visibility = [ ":*" ]
include_dirs = [
"ability/common/include",
"ability/common/utils/include/",
"dataBusiness/voicemail/include",
"dataBusiness/calllog/include",
"dataBusiness/contacts/include",
"dataBusiness/poster/include",
"ability/account/include",
"dataBusiness/quicksearch/include",
"ability/sinicization/include",
"ability/account/include",
"ability/merge/include",
"ability/datadisasterrecovery/include",
"dataBusiness/spam_call/include",
]
cflags = [ "-Wno-c99-designator" ]
}
ohos_shared_library("contactsdataability") {
use_exceptions = true
sources = [
"ability/account/src/account_data_collection.cpp",
"ability/account/src/account_manager.cpp",
"ability/account/src/account_sync.cpp",
"ability/common/utils/src/board_report_util.cpp",
"ability/common/utils/src/contacts_common_event.cpp",
"ability/common/utils/src/contacts_json_utils.cpp",
"ability/common/utils/src/contacts_path.cpp",
"ability/common/utils/src/contacts_string_utils.cpp",
"ability/common/utils/src/file_utils.cpp",
"ability/common/utils/src/merge_utils.cpp",
"ability/common/utils/src/predicates_convert.cpp",
"ability/common/utils/src/sql_analyzer.cpp",
"ability/common/utils/src/telephony_permission.cpp",
"ability/common/utils/src/uri_utils.cpp",
"ability/common/utils/src/phone_number_utils.cpp",
"ability/common/utils/src/pixel_map_util.cpp",
"ability/common/utils/src/zip_util.cpp",
"ability/common/utils/src/hi_audit.cpp",
"ability/datadisasterrecovery/src/database_disaster_recovery.cpp",
"ability/merge/src/candidate.cpp",
"ability/merge/src/candidate_status.cpp",
"ability/merge/src/match_candidate.cpp",
"ability/merge/src/merger_contacts.cpp",
"ability/sinicization/src/character_transliterate.cpp",
"ability/sinicization/src/construction_name.cpp",
"dataBusiness/calllog/src/calllog_ability.cpp",
"dataBusiness/calllog/src/calllogcheck_ability.cpp",
"dataBusiness/calllog/src/calllog_database.cpp",
"dataBusiness/calllog/src/calllog_manager.cpp",
"dataBusiness/contacts/src/contacts.cpp",
"dataBusiness/contacts/src/contacts_account.cpp",
"dataBusiness/contacts/src/blocklist_database.cpp",
"dataBusiness/contacts/src/contacts_data_ability.cpp",
"dataBusiness/contacts/src/contacts_database.cpp",
"dataBusiness/contacts/src/number_identity_helper.cpp",
"dataBusiness/contacts/src/contacts_manager.cpp",
"dataBusiness/contacts/src/contacts_datashare_stub_impl.cpp",
"dataBusiness/contacts/src/contacts_type.cpp",
"dataBusiness/contacts/src/contacts_update_helper.cpp",
"dataBusiness/contacts/src/profile_database.cpp",
"dataBusiness/contacts/src/raw_contacts.cpp",
"dataBusiness/contacts/src/ptivacy_contacts_manager.cpp",
"dataBusiness/quicksearch/src/contacts_search.cpp",
"dataBusiness/voicemail/src/voicemail_ability.cpp",
"dataBusiness/voicemail/src/voicemail_database.cpp",
"dataBusiness/contacts/src/contact_connect_ability.cpp",
"dataBusiness/contacts/src/cloud_contacts_observer.cpp",
"dataBusiness/contacts/src/auto_sync_detail_progress_observer.cpp",
"dataBusiness/spam_call/src/callback_stub_helper.cpp",
"dataBusiness/spam_call/src/spam_call_adapter.cpp",
"dataBusiness/spam_call/src/spam_call_connection.cpp",
"dataBusiness/spam_call/src/spam_call_proxy.cpp",
"dataBusiness/spam_call/src/spam_call_stub.cpp",
"dataBusiness/poster/src/poster_callback_stub.cpp",
"dataBusiness/poster/src/poster_call_adapter.cpp",
"dataBusiness/poster/src/poster_call_connection.cpp",
"dataBusiness/poster/src/poster_call_proxy.cpp",
"dataBusiness/poster/src/poster_call_stub.cpp",
]
public_configs = [ ":contactsdataability_public_config" ]
external_deps = [
"app_file_service:fileuri_native",
"ability_base:base",
"ability_base:want",
"ability_base:zuri",
"ability_runtime:app_context",
"ability_runtime:app_manager",
"ability_runtime:dataobs_manager",
"ability_runtime:extension_manager",
"ability_runtime:extensionkit_native",
"ability_runtime:ability_deps_wrapper",
"ability_runtime:ability_manager",
"ability_runtime:dataobs_manager",
"ability_runtime:abilitykit_utils",
"ability_runtime:data_ability_helper",
"access_token:libaccesstoken_sdk",
"access_token:libprivacy_sdk",
"access_token:libtokenid_sdk",
"bundle_framework:appexecfwk_base",
"bundle_framework:appexecfwk_core",
"c_utils:utils",
"core_service:tel_core_service_api",
"common_event_service:cesfwk_innerkits",
"ipc:ipc_napi",
"ipc:ipc_single",
"data_share:datashare_common",
"ability_runtime:uri_permission_mgr",
"data_share:datashare_provider",
"data_share:datashare_consumer",
"icu:shared_icui18n",
"icu:icundk",
"icu:shared_icuuc",
"image_framework:image_native",
"hilog:libhilog",
"jsoncpp:jsoncpp",
"napi:ace_napi",
"relational_store:native_dataability",
"relational_store:native_rdb",
"relational_store:rdb_data_share_adapter",
"safwk:system_ability_fwk",
"samgr:samgr_proxy",
"i18n:intl_util",
"os_account:os_account_innerkits", # os_account
"os_account:libaccountkits", # ohos_account
"napi:ace_napi",
"player_framework:system_sound_client",
"audio_framework:audio_client",
"protobuf:protobuf_lite",
"file_api:securitylabel",
"libphonenumber:phonenumber_standard",
"libphonenumber:geocoding",
"protobuf:protobuf_lite",
"protobuf:protobuf",
# "protobuf:protoc_lib",
"zlib:shared_libz",
"openssl:libcrypto_shared",
"ability_runtime:ability_connect_callback_stub"
]
defines = [
"CONTACTSDATA_LOG_TAG = \"ContactsData\"",
"LOG_DOMAIN = 0xD001F09",
]
if (defined(global_parts_info) &&
defined(global_parts_info.telephony_cellular_data) &&
global_parts_info.telephony_cellular_data) {
external_deps += [ "cellular_data:tel_cellular_data_api" ]
defines += [ "CELLULAR_DATA_SUPPORT" ]
}
if (defined(global_parts_info) &&
defined(global_parts_info.telephony_telephony_enhanced) &&
global_parts_info.telephony_telephony_enhanced) {
defines += [ "ABILITY_CUST_SUPPORT" ]
}
public_deps = []
part_name = "contacts_data"
subsystem_name = "applications"
}
## Build contactsdataability.so }}}