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/ability/ability_runtime/ability_runtime.gni") 16 17config("runtime_config") { 18 visibility = [ ":*" ] 19 20 defines = [ "AMS_LOG_TAG = \"Runtime\"" ] 21 22 if (target_cpu == "arm64") { 23 defines += [ "_ARM64_" ] 24 } 25 26 if (target_cpu == "arm64") { 27 defines += [ "APP_USE_ARM64" ] 28 } else if (target_cpu == "arm") { 29 defines += [ "APP_USE_ARM" ] 30 } 31 32 include_dirs = [] 33} 34 35config("runtime_public_config") { 36 visibility = [ ":*" ] 37 include_dirs = [ 38 "${ability_runtime_path}/interfaces/kits/native/ability/native/ability_business_error", 39 "include", 40 ] 41} 42 43config("runtime_all_deps_config") { 44 include_dirs = [ "include" ] 45} 46 47ohos_shared_library("runtime") { 48 include_dirs = [ 49 "${ability_runtime_path}/services/abilitymgr/include", 50 "${bundlefwk_path}/interfaces/kits/js/common", 51 ] 52 53 sources = [ 54 "${ability_runtime_native_path}/runtime/connect_server_manager.cpp", 55 "${ability_runtime_native_path}/runtime/hdc_register.cpp", 56 "${ability_runtime_native_path}/runtime/js_data_struct_converter.cpp", 57 "${ability_runtime_native_path}/runtime/js_error_utils.cpp", 58 "${ability_runtime_native_path}/runtime/js_module_reader.cpp", 59 "${ability_runtime_native_path}/runtime/js_module_searcher.cpp", 60 "${ability_runtime_native_path}/runtime/js_quickfix_callback.cpp", 61 "${ability_runtime_native_path}/runtime/js_runtime.cpp", 62 "${ability_runtime_native_path}/runtime/js_runtime_utils.cpp", 63 "${ability_runtime_native_path}/runtime/js_worker.cpp", 64 "${ability_runtime_native_path}/runtime/ohos_js_env_logger.cpp", 65 "${ability_runtime_native_path}/runtime/ohos_js_environment_impl.cpp", 66 "${ability_runtime_native_path}/runtime/ohos_loop_handler.cpp", 67 "${ability_runtime_native_path}/runtime/runtime.cpp", 68 ] 69 70 configs = [ ":runtime_config" ] 71 72 public_configs = [ 73 ":runtime_public_config", 74 "${ability_runtime_services_path}/common:common_config", 75 ] 76 77 all_dependent_configs = [ ":runtime_all_deps_config" ] 78 79 deps = [ 80 "${ability_runtime_native_path}/ability/native:ability_business_error", 81 "${ability_runtime_path}/js_environment/frameworks/js_environment:js_environment", 82 "${third_party_path}/zlib:shared_libz", 83 ] 84 85 external_deps = [ 86 "ability_base:configuration", 87 "ability_base:extractortool", 88 "ability_base:extractresourcemanager", 89 "ability_base:string_utils", 90 "ability_base:want", 91 "access_token:libaccesstoken_sdk", 92 "bundle_framework:appexecfwk_base", 93 "bundle_framework:appexecfwk_core", 94 "bundle_framework:bundle_napi_common", 95 "c_utils:utils", 96 "ets_runtime:libark_jsruntime", 97 "ets_utils:console", 98 "ets_utils:timer", 99 "eventhandler:libeventhandler", 100 "hilog:libhilog", 101 "hitrace:hitrace_meter", 102 "ipc:ipc_core", 103 "napi:ace_napi", 104 "napi:ace_napi_ark", 105 "resource_management:global_resmgr", 106 "samgr:samgr_proxy", 107 ] 108 109 if (is_standard_system) { 110 defines = [ "ENABLE_HITRACE" ] 111 external_deps += [ 112 "hitrace:libhitracechain", 113 "init:libbegetutil", 114 ] 115 } 116 117 if (ability_runtime_graphics) { 118 external_deps += [ 119 "ace_engine:ace_uicontent", 120 "napi:ace_container_scope", 121 ] 122 } 123 124 innerapi_tags = [ "platformsdk" ] 125 subsystem_name = "ability" 126 part_name = "ability_runtime" 127} 128