1# Copyright (c) 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/ability/ability_runtime/ability_runtime.gni")
16
17template("abilitymanager") {
18  ohos_shared_library(target_name) {
19    forward_variables_from(invoker, [ "relative_install_dir" ])
20
21    if (defined(invoker.defines)) {
22      defines = invoker.defines
23    }
24
25    sources = [
26      "ability_manager_module.cpp",
27      "js_ability_foreground_state_observer.cpp",
28      "js_ability_manager.cpp",
29      "js_ability_manager_utils.cpp",
30    ]
31
32    include_dirs = [
33      "./",
34      "//third_party/icu/icu4c/source/common",
35    ]
36
37    deps = [
38      "${ability_runtime_innerkits_path}/ability_manager:ability_manager",
39      "${ability_runtime_innerkits_path}/ability_manager:ability_start_options",
40      "${ability_runtime_innerkits_path}/app_manager:app_manager",
41      "${ability_runtime_innerkits_path}/napi_base_context:napi_base_context",
42      "${ability_runtime_innerkits_path}/runtime:runtime",
43      "${ability_runtime_napi_path}/inner/napi_common:napi_common",
44      "${ability_runtime_native_path}/ability:ability_context_native",
45      "${ability_runtime_native_path}/ability/native:ability_business_error",
46      "${ability_runtime_native_path}/ability/native:abilitykit_native",
47    ]
48
49    external_deps = [
50      "ability_base:base",
51      "ability_base:configuration",
52      "ability_base:want",
53      "access_token:libtokenid_sdk",
54      "c_utils:utils",
55      "common_event_service:cesfwk_innerkits",
56      "eventhandler:libeventhandler",
57      "hilog:libhilog",
58      "ipc:ipc_core",
59      "ipc:ipc_napi",
60      "napi:ace_napi",
61      "samgr:samgr_proxy",
62    ]
63
64    subsystem_name = "ability"
65    part_name = "ability_runtime"
66  }
67}
68
69abilitymanager("abilitymanager_napi") {
70  relative_install_dir = "module/application"
71}
72
73abilitymanager("abilitymanager") {
74  relative_install_dir = "module/app/ability"
75  defines = [ "ENABLE_ERRCODE" ]
76}
77