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. 13 14import("//build/ohos.gni") 15import("//foundation/arkui/ace_engine/ace_config.gni") 16 17template("pa_backend") { 18 forward_variables_from(invoker, "*") 19 20 ohos_source_set(target_name) { 21 subsystem_name = ace_engine_subsystem 22 part_name = ace_engine_part 23 configs = [ "$ace_root:ace_config" ] 24 25 deps = [] 26 27 include_dirs = [ 28 "$ability_runtime_services_path/common/include", 29 "$ability_runtime_path/interfaces/kits/native/ability/native", 30 "$ability_runtime_inner_api_path/ability_manager/include", 31 "$ability_runtime_services_path/abilitymgr/include", 32 "$ability_runtime_services_path/common/include", 33 "$ability_runtime_napi_path/context", 34 "$ability_runtime_napi_path/inner/napi_common", 35 ] 36 deps = [ 37 "$ability_runtime_napi_path/inner/napi_common:napi_common", 38 "$ability_runtime_path/frameworks/native/ability/native:abilitykit_native", 39 "$ability_runtime_path/frameworks/native/appkit:appkit_native", 40 "//foundation/arkui/napi:ace_napi", 41 "//foundation/systemabilitymgr/safwk/interfaces/innerkits/safwk:system_ability_fwk", 42 "//foundation/systemabilitymgr/samgr/interfaces/innerkits/samgr_proxy:samgr_proxy", 43 ] 44 external_deps = [ 45 "ability_base:want", 46 "ability_base:zuri", 47 "bundle_framework:appexecfwk_base", 48 "bundle_framework:appexecfwk_core", 49 "c_utils:utils", 50 "eventhandler:libeventhandler", 51 "hiviewdfx_hilog_native:libhilog", 52 "ipc:ipc_core", 53 "ipc_js:rpc", 54 "napi:ace_napi", 55 "relational_store:native_dataability", 56 "relational_store:native_rdb", 57 "samgr:samgr_proxy", 58 ] 59 60 sources = [ 61 "backend_delegate_impl.cpp", 62 "pa_backend.cpp", 63 ] 64 65 sources += [ "engine/common/js_backend_engine_loader.cpp" ] 66 } 67} 68 69foreach(item, ace_platforms) { 70 pa_backend("pa_backend_" + item.name) { 71 config = { 72 } 73 74 if (defined(item.config)) { 75 config = item.config 76 } 77 } 78} 79