1115cd2caSopenharmony_ci# Copyright (c) 2021-2022 Huawei Device Co., Ltd. 2115cd2caSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 3115cd2caSopenharmony_ci# you may not use this file except in compliance with the License. 4115cd2caSopenharmony_ci# You may obtain a copy of the License at 5115cd2caSopenharmony_ci# 6115cd2caSopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 7115cd2caSopenharmony_ci# 8115cd2caSopenharmony_ci# Unless required by applicable law or agreed to in writing, software 9115cd2caSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 10115cd2caSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11115cd2caSopenharmony_ci# See the License for the specific language governing permissions and 12115cd2caSopenharmony_ci# limitations under the License. 13115cd2caSopenharmony_ci 14115cd2caSopenharmony_ciimport("//build/lite/config/component/lite_component.gni") 15115cd2caSopenharmony_ciimport("//build/ohos.gni") 16115cd2caSopenharmony_ciimport("signature/pm.gni") 17115cd2caSopenharmony_ci 18115cd2caSopenharmony_ci## Build Contacts_DataAbility.hap 19115cd2caSopenharmony_ciohos_hap("Contacts_DataAbility") { 20115cd2caSopenharmony_ci hap_profile = "entry/src/main/module.json" 21115cd2caSopenharmony_ci deps = [ 22115cd2caSopenharmony_ci ":Contacts_DataAbility_js_assets", 23115cd2caSopenharmony_ci ":Contacts_DataAbility_resources", 24115cd2caSopenharmony_ci ] 25115cd2caSopenharmony_ci shared_libraries = [ ":contactsdataability" ] 26115cd2caSopenharmony_ci certificate_profile = "./signature/contactsdata.p7b" 27115cd2caSopenharmony_ci hap_name = "Contacts_DataAbility" 28115cd2caSopenharmony_ci part_name = "contacts_data" 29115cd2caSopenharmony_ci subsystem_name = "applications" 30115cd2caSopenharmony_ci module_install_dir = "app/com.ohos.contactsdataability" 31115cd2caSopenharmony_ci if (defined(sign_hap_py_path)) { 32115cd2caSopenharmony_ci certificate_profile = "${certificate_profile_path}" 33115cd2caSopenharmony_ci key_alias = "contacts_data" 34115cd2caSopenharmony_ci private_key_path = "contacts_data" 35115cd2caSopenharmony_ci compatible_version = "9" 36115cd2caSopenharmony_ci } 37115cd2caSopenharmony_ci} 38115cd2caSopenharmony_ci 39115cd2caSopenharmony_ciohos_app_scope("Contacts_DataAbility_app_profile") { 40115cd2caSopenharmony_ci app_profile = "AppScope/app.json" 41115cd2caSopenharmony_ci sources = [ "AppScope/resources" ] 42115cd2caSopenharmony_ci} 43115cd2caSopenharmony_ci 44115cd2caSopenharmony_ciohos_js_assets("Contacts_DataAbility_js_assets") { 45115cd2caSopenharmony_ci ets2abc = true 46115cd2caSopenharmony_ci source_dir = "entry/src/main/ets" 47115cd2caSopenharmony_ci} 48115cd2caSopenharmony_ci 49115cd2caSopenharmony_ciohos_resources("Contacts_DataAbility_resources") { 50115cd2caSopenharmony_ci sources = [ "entry/src/main/resources" ] 51115cd2caSopenharmony_ci deps = [ ":Contacts_DataAbility_app_profile" ] 52115cd2caSopenharmony_ci hap_profile = "entry/src/main/module.json" 53115cd2caSopenharmony_ci} 54115cd2caSopenharmony_ci 55115cd2caSopenharmony_ci## Build contactsdataability.so {{{ 56115cd2caSopenharmony_ciconfig("contactsdataability_public_config") { 57115cd2caSopenharmony_ci visibility = [ ":*" ] 58115cd2caSopenharmony_ci include_dirs = [ 59115cd2caSopenharmony_ci "//third_party/node/src", 60115cd2caSopenharmony_ci "ability/common/include", 61115cd2caSopenharmony_ci "ability/common/utils/include/", 62115cd2caSopenharmony_ci "dataBusiness/voicemail/include", 63115cd2caSopenharmony_ci "dataBusiness/calllog/include", 64115cd2caSopenharmony_ci "dataBusiness/contacts/include", 65115cd2caSopenharmony_ci "ability/account/include", 66115cd2caSopenharmony_ci "dataBusiness/quicksearch/include", 67115cd2caSopenharmony_ci "ability/sinicization/include", 68115cd2caSopenharmony_ci "ability/account/include", 69115cd2caSopenharmony_ci "ability/merge/include", 70115cd2caSopenharmony_ci "ability/datadisasterrecovery/include", 71115cd2caSopenharmony_ci ] 72115cd2caSopenharmony_ci cflags = [] 73115cd2caSopenharmony_ci} 74115cd2caSopenharmony_ci 75115cd2caSopenharmony_ciohos_shared_library("contactsdataability") { 76115cd2caSopenharmony_ci sources = [ 77115cd2caSopenharmony_ci "ability/account/src/account_data_collection.cpp", 78115cd2caSopenharmony_ci "ability/account/src/account_manager.cpp", 79115cd2caSopenharmony_ci "ability/account/src/account_sync.cpp", 80115cd2caSopenharmony_ci "ability/common/utils/src/contacts_common_event.cpp", 81115cd2caSopenharmony_ci "ability/common/utils/src/contacts_json_utils.cpp", 82115cd2caSopenharmony_ci "ability/common/utils/src/contacts_path.cpp", 83115cd2caSopenharmony_ci "ability/common/utils/src/contacts_string_utils.cpp", 84115cd2caSopenharmony_ci "ability/common/utils/src/file_utils.cpp", 85115cd2caSopenharmony_ci "ability/common/utils/src/merge_utils.cpp", 86115cd2caSopenharmony_ci "ability/common/utils/src/predicates_convert.cpp", 87115cd2caSopenharmony_ci "ability/common/utils/src/sql_analyzer.cpp", 88115cd2caSopenharmony_ci "ability/common/utils/src/telephony_permission.cpp", 89115cd2caSopenharmony_ci "ability/common/utils/src/uri_utils.cpp", 90115cd2caSopenharmony_ci "ability/datadisasterrecovery/src/database_disaster_recovery.cpp", 91115cd2caSopenharmony_ci "ability/merge/src/candidate.cpp", 92115cd2caSopenharmony_ci "ability/merge/src/candidate_status.cpp", 93115cd2caSopenharmony_ci "ability/merge/src/match_candidate.cpp", 94115cd2caSopenharmony_ci "ability/merge/src/merger_contacts.cpp", 95115cd2caSopenharmony_ci "ability/sinicization/src/character_transliterate.cpp", 96115cd2caSopenharmony_ci "ability/sinicization/src/construction_name.cpp", 97115cd2caSopenharmony_ci "dataBusiness/calllog/src/calllog_ability.cpp", 98115cd2caSopenharmony_ci "dataBusiness/calllog/src/calllog_database.cpp", 99115cd2caSopenharmony_ci "dataBusiness/contacts/src/contacts.cpp", 100115cd2caSopenharmony_ci "dataBusiness/contacts/src/contacts_account.cpp", 101115cd2caSopenharmony_ci "dataBusiness/contacts/src/contacts_data_ability.cpp", 102115cd2caSopenharmony_ci "dataBusiness/contacts/src/contacts_database.cpp", 103115cd2caSopenharmony_ci "dataBusiness/contacts/src/contacts_datashare_stub_impl.cpp", 104115cd2caSopenharmony_ci "dataBusiness/contacts/src/contacts_type.cpp", 105115cd2caSopenharmony_ci "dataBusiness/contacts/src/contacts_update_helper.cpp", 106115cd2caSopenharmony_ci "dataBusiness/contacts/src/profile_database.cpp", 107115cd2caSopenharmony_ci "dataBusiness/contacts/src/raw_contacts.cpp", 108115cd2caSopenharmony_ci "dataBusiness/quicksearch/src/contacts_search.cpp", 109115cd2caSopenharmony_ci "dataBusiness/voicemail/src/voicemail_ability.cpp", 110115cd2caSopenharmony_ci "dataBusiness/voicemail/src/voicemail_database.cpp", 111115cd2caSopenharmony_ci ] 112115cd2caSopenharmony_ci include_dirs = [ 113115cd2caSopenharmony_ci "//commonlibrary/c_utils/base/include", 114115cd2caSopenharmony_ci "//base/hiviewdfx/hilog/interfaces/native/innerkits/include", 115115cd2caSopenharmony_ci "//base/account/os_account/interfaces/innerkits/ohosaccount/native/include/", 116115cd2caSopenharmony_ci "//base/account/os_account/interfaces/kits/napi/distributedaccount/include/", 117115cd2caSopenharmony_ci "//base/account/os_account/interfaces/innerkits/include", 118115cd2caSopenharmony_ci "//foundation/ability/ability_runtime/interfaces/inner_api/ability_manager/include", 119115cd2caSopenharmony_ci "//foundation/ability/ability_runtime/interfaces/kits/native/ability/native", 120115cd2caSopenharmony_ci ] 121115cd2caSopenharmony_ci 122115cd2caSopenharmony_ci deps = [ "//third_party/jsoncpp:jsoncpp" ] 123115cd2caSopenharmony_ci 124115cd2caSopenharmony_ci public_configs = [ ":contactsdataability_public_config" ] 125115cd2caSopenharmony_ci external_deps = [ 126115cd2caSopenharmony_ci "ability_base:want", 127115cd2caSopenharmony_ci "ability_base:zuri", 128115cd2caSopenharmony_ci "ability_runtime:app_context", 129115cd2caSopenharmony_ci "ability_runtime:dataobs_manager", 130115cd2caSopenharmony_ci "ability_runtime:extensionkit_native", 131115cd2caSopenharmony_ci "access_token:libaccesstoken_sdk", 132115cd2caSopenharmony_ci "access_token:libprivacy_sdk", 133115cd2caSopenharmony_ci "access_token:libtokenid_sdk", 134115cd2caSopenharmony_ci "bundle_framework:appexecfwk_base", 135115cd2caSopenharmony_ci "bundle_framework:appexecfwk_core", 136115cd2caSopenharmony_ci "c_utils:utilsbase", 137115cd2caSopenharmony_ci "common_event_service:cesfwk_innerkits", 138115cd2caSopenharmony_ci "data_share:datashare_common", 139115cd2caSopenharmony_ci "data_share:datashare_provider", 140115cd2caSopenharmony_ci "hilog:libhilog", 141115cd2caSopenharmony_ci "ipc:ipc_single", 142115cd2caSopenharmony_ci "napi:ace_napi", 143115cd2caSopenharmony_ci "os_account:os_account_innerkits", 144115cd2caSopenharmony_ci "relational_store:native_dataability", 145115cd2caSopenharmony_ci "relational_store:native_rdb", 146115cd2caSopenharmony_ci "relational_store:rdb_data_share_adapter", 147115cd2caSopenharmony_ci ] 148115cd2caSopenharmony_ci 149115cd2caSopenharmony_ci defines = [ 150115cd2caSopenharmony_ci "CONTACTSDATA_LOG_TAG = \"ContactsData\"", 151115cd2caSopenharmony_ci "LOG_DOMAIN = 0xD001F09", 152115cd2caSopenharmony_ci ] 153115cd2caSopenharmony_ci 154115cd2caSopenharmony_ci public_deps = [] 155115cd2caSopenharmony_ci part_name = "contacts_data" 156115cd2caSopenharmony_ci subsystem_name = "applications" 157115cd2caSopenharmony_ci} 158115cd2caSopenharmony_ci## Build contactsdataability.so }}} 159