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_base/ability_base.gni") 16 17################################### base ######################################## 18config("base_config") { 19 visibility = [ ":*" ] 20} 21 22config("base_public_config") { 23 visibility = [ ":*" ] 24 include_dirs = [ "interfaces/inner_api/base/include" ] 25} 26 27config("base_all_dependent_config") { 28 include_dirs = [ "${ability_base_innerapi_path}/base/include" ] 29} 30 31ohos_shared_library("base") { 32 sources = [ 33 "interfaces/inner_api/base/src/base.cpp", 34 "interfaces/inner_api/base/src/base_object.cpp", 35 "interfaces/inner_api/base/src/bool_wrapper.cpp", 36 "interfaces/inner_api/base/src/byte_wrapper.cpp", 37 "interfaces/inner_api/base/src/double_wrapper.cpp", 38 "interfaces/inner_api/base/src/float_wrapper.cpp", 39 "interfaces/inner_api/base/src/int_wrapper.cpp", 40 "interfaces/inner_api/base/src/long_wrapper.cpp", 41 "interfaces/inner_api/base/src/remote_object_wrapper.cpp", 42 "interfaces/inner_api/base/src/short_wrapper.cpp", 43 "interfaces/inner_api/base/src/string_wrapper.cpp", 44 "interfaces/inner_api/base/src/user_object_wrapper.cpp", 45 "interfaces/inner_api/base/src/zchar_wrapper.cpp", 46 ] 47 configs = [ ":base_config" ] 48 public_configs = [ ":base_public_config" ] 49 50 all_dependent_configs = [ ":base_all_dependent_config" ] 51 52 external_deps = [ "c_utils:utils" ] 53 54 subsystem_name = "ability" 55 part_name = "ability_base" 56} 57 58################################### configuration ######################################## 59config("configuration_sdk_config") { 60 include_dirs = [ 61 "interfaces/kits/native/configuration/include", 62 "${ability_base_innerapi_path}/log/include", 63 "${base_global_innerapi_path}/include", 64 "//third_party/json/include", 65 ] 66} 67 68ohos_shared_library("configuration") { 69 sources = [ 70 "interfaces/kits/native/configuration/src/configuration.cpp", 71 "interfaces/kits/native/configuration/src/configuration_convertor.cpp", 72 ] 73 74 public_configs = [ ":configuration_sdk_config" ] 75 76 defines = [ "ABILITYBASE_LOG_TAG = \"Configuration\"" ] 77 cflags = [] 78 if (target_cpu == "arm") { 79 cflags += [ "-DBINDER_IPC_32BIT" ] 80 } 81 82 external_deps = [ 83 "c_utils:utils", 84 "hiviewdfx_hilog_native:libhilog", 85 ] 86 87 subsystem_name = "ability" 88 part_name = "ability_base" 89} 90 91################################### zuri ######################################## 92config("zuri_config") { 93 visibility = [ ":*" ] 94 include_dirs = [ "interfaces/kits/native/uri/include" ] 95 cflags = [] 96 if (target_cpu == "arm") { 97 cflags += [ "-DBINDER_IPC_32BIT" ] 98 } 99} 100 101config("zuri_all_dependent_config") { 102 include_dirs = [ "${ability_base_kits_native_path}/uri/include" ] 103} 104 105ohos_shared_library("zuri") { 106 public_configs = [ ":zuri_config" ] 107 108 all_dependent_configs = [ ":zuri_all_dependent_config" ] 109 110 sources = [ "interfaces/kits/native/uri/src/uri.cpp" ] 111 112 deps = [] 113 114 external_deps = [ 115 "c_utils:utils", 116 "hiviewdfx_hilog_native:libhilog", 117 ] 118 119 subsystem_name = "ability" 120 part_name = "ability_base" 121} 122 123################################### want ######################################## 124config("want_config") { 125 visibility = [ ":*" ] 126 include_dirs = [] 127 cflags = [] 128 if (target_cpu == "arm") { 129 cflags += [ "-DBINDER_IPC_32BIT" ] 130 } 131 defines = [ "ABILITYBASE_LOG_TAG = \"Want\"" ] 132} 133 134config("want_public_config") { 135 visibility = [ ":*" ] 136 include_dirs = [ 137 "interfaces/inner_api/base/include", 138 "interfaces/kits/native/uri/include", 139 "interfaces/kits/native/want/include", 140 "${ability_base_innerapi_path}/log/include", 141 "//third_party/jsoncpp/include", 142 "//third_party/json/include", 143 "//commonlibrary/c_utils/base/include", 144 ] 145} 146 147config("want_all_dependent_config") { 148 include_dirs = [ "${ability_base_kits_native_path}/want/include" ] 149} 150 151ohos_shared_library("want") { 152 sources = [ 153 "interfaces/kits/native/want/src/array_wrapper.cpp", 154 "interfaces/kits/native/want/src/element_name.cpp", 155 "interfaces/kits/native/want/src/extra_params.cpp", 156 "interfaces/kits/native/want/src/operation.cpp", 157 "interfaces/kits/native/want/src/operation_builder.cpp", 158 "interfaces/kits/native/want/src/pac_map.cpp", 159 "interfaces/kits/native/want/src/patterns_matcher.cpp", 160 "interfaces/kits/native/want/src/skills.cpp", 161 "interfaces/kits/native/want/src/want.cpp", 162 "interfaces/kits/native/want/src/want_params.cpp", 163 "interfaces/kits/native/want/src/want_params_wrapper.cpp", 164 ] 165 166 deps = [ "//third_party/jsoncpp:jsoncpp" ] 167 168 all_dependent_configs = [ ":want_all_dependent_config" ] 169 170 external_deps = [ 171 "ability_base:base", 172 "ability_base:zuri", 173 "c_utils:utils", 174 "hiviewdfx_hilog_native:libhilog", 175 "ipc:ipc_core", 176 ] 177 178 configs = [ ":want_config" ] 179 public_configs = [ ":want_public_config" ] 180 subsystem_name = "ability" 181 part_name = "ability_base" 182} 183 184group("base_innerkits_target") { 185 deps = [ 186 ":base", 187 ":configuration", 188 ":want", 189 ] 190} 191