# 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/ohos.gni")
import("//foundation/ability/ability_runtime/ability_runtime.gni")
ohos_shared_library("particleability") {
branch_protector_ret = "pac_ret"
include_dirs = [
"${ability_runtime_napi_path}/featureAbility",
"${ability_runtime_services_path}/common/include",
]
sources = [
"${ability_runtime_napi_path}/featureAbility/napi_data_ability_helper.cpp",
"${ability_runtime_napi_path}/featureAbility/napi_data_ability_helper_utils.cpp",
"${ability_runtime_napi_path}/featureAbility/napi_data_ability_observer.cpp",
"${ability_runtime_napi_path}/featureAbility/napi_data_ability_operation.cpp",
"native_module.cpp",
"particle_ability.cpp",
]
configs = [
"${ability_runtime_services_path}/common:common_config",
"${ability_runtime_services_path}/common:optimize_config",
]
deps = [
"${ability_runtime_innerkits_path}/ability_manager:ability_manager",
"${ability_runtime_innerkits_path}/ability_manager:ability_start_options",
"${ability_runtime_innerkits_path}/dataobs_manager:dataobs_manager",
"${ability_runtime_innerkits_path}/napi_base_context:napi_base_context",
"${ability_runtime_innerkits_path}/runtime:runtime",
"${ability_runtime_innerkits_path}/wantagent:wantagent_innerkits",
"${ability_runtime_napi_path}/inner/napi_ability_common:napi_ability_common",
"${ability_runtime_napi_path}/inner/napi_common:napi_common",
"${ability_runtime_native_path}/ability/native:abilitykit_native",
"${ability_runtime_native_path}/ability/native:data_ability_helper",
"${ability_runtime_native_path}/appkit:appkit_native",
]
external_deps = [
"ability_base:want",
"ability_base:zuri",
"access_token:libaccesstoken_sdk",
"bundle_framework:appexecfwk_base",
"c_utils:utils",
"common_event_service:cesfwk_innerkits",
"hilog:libhilog",
"hitrace:hitrace_meter",
"ipc:ipc_core",
"libuv:uv",
"napi:ace_napi",
"node:node_header_notice",
]
if (ability_runtime_relational) {
include_dirs += [ "../featureAbility/data_ability/include" ]
sources += [
"../featureAbility/data_ability/js_utils.cpp",
"../featureAbility/data_ability/napi_data_ability_predicates.cpp",
"../featureAbility/data_ability/napi_rdb_js_utils.cpp",
"../featureAbility/data_ability/napi_result_set.cpp",
]
external_deps += [
"data_share:datashare_common_lite",
"eventhandler:libeventhandler",
"kv_store:distributeddata_mgr",
"relational_store:native_appdatafwk",
"relational_store:native_dataability",
"relational_store:native_rdb",
"relational_store:rdb_data_share_adapter",
]
}
cflags_cc = []
if (os_dlp_part_enabled) {
cflags_cc += [ "-DWITH_DLP" ]
}
relative_install_dir = "module/ability"
subsystem_name = "ability"
part_name = "ability_runtime"
}