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 = [ 29 "${ability_base_innerapi_path}/base/include", 30 "${ipc_native_path}/src/napi/include", 31 ] 32} 33 34ohos_shared_library("base") { 35 sources = [ 36 "interfaces/inner_api/base/src/base.cpp", 37 "interfaces/inner_api/base/src/base_object.cpp", 38 "interfaces/inner_api/base/src/bool_wrapper.cpp", 39 "interfaces/inner_api/base/src/byte_wrapper.cpp", 40 "interfaces/inner_api/base/src/double_wrapper.cpp", 41 "interfaces/inner_api/base/src/float_wrapper.cpp", 42 "interfaces/inner_api/base/src/int_wrapper.cpp", 43 "interfaces/inner_api/base/src/long_wrapper.cpp", 44 "interfaces/inner_api/base/src/remote_object_wrapper.cpp", 45 "interfaces/inner_api/base/src/short_wrapper.cpp", 46 "interfaces/inner_api/base/src/string_wrapper.cpp", 47 "interfaces/inner_api/base/src/user_object_wrapper.cpp", 48 "interfaces/inner_api/base/src/zchar_wrapper.cpp", 49 ] 50 configs = [ ":base_config" ] 51 public_configs = [ ":base_public_config" ] 52 53 all_dependent_configs = [ ":base_all_dependent_config" ] 54 55 external_deps = [ 56 "c_utils:utils", 57 "ipc:ipc_core", 58 ] 59 60 subsystem_name = "ability" 61 innerapi_tags = [ 62 "platformsdk", 63 "sasdk", 64 ] 65 part_name = "ability_base" 66} 67 68################################### configuration ######################################## 69config("configuration_sdk_config") { 70 include_dirs = [ 71 "interfaces/kits/native/configuration/include", 72 "${ability_base_innerapi_path}/log/include", 73 "${base_global_innerapi_path}/include", 74 "//third_party/json/include", 75 ] 76} 77 78ohos_shared_library("configuration") { 79 sources = [ 80 "interfaces/kits/native/configuration/src/configuration.cpp", 81 "interfaces/kits/native/configuration/src/configuration_convertor.cpp", 82 ] 83 84 public_configs = [ ":configuration_sdk_config" ] 85 86 defines = [ "ABILITYBASE_LOG_TAG = \"Configuration\"" ] 87 cflags = [] 88 if (target_cpu == "arm") { 89 cflags += [ "-DBINDER_IPC_32BIT" ] 90 } 91 92 external_deps = [ 93 "c_utils:utils", 94 "hilog:libhilog", 95 ] 96 97 subsystem_name = "ability" 98 innerapi_tags = [ "platformsdk" ] 99 part_name = "ability_base" 100} 101 102################################### zuri ######################################## 103config("zuri_config") { 104 visibility = [ ":*" ] 105 include_dirs = [ "interfaces/kits/native/uri/include" ] 106 cflags = [] 107 if (target_cpu == "arm") { 108 cflags += [ "-DBINDER_IPC_32BIT" ] 109 } 110} 111 112config("zuri_exceptions") { 113 cflags_cc = [ "-fexceptions" ] 114} 115 116config("zuri_all_dependent_config") { 117 include_dirs = [ "${ability_base_kits_native_path}/uri/include" ] 118} 119 120ohos_shared_library("zuri") { 121 public_configs = [ ":zuri_config" ] 122 123 all_dependent_configs = [ ":zuri_all_dependent_config" ] 124 125 sources = [ "interfaces/kits/native/uri/src/uri.cpp" ] 126 127 configs = [ ":zuri_exceptions" ] 128 129 deps = [] 130 131 external_deps = [ 132 "c_utils:utils", 133 "hilog:libhilog", 134 ] 135 136 subsystem_name = "ability" 137 innerapi_tags = [ 138 "platformsdk", 139 "sasdk", 140 ] 141 part_name = "ability_base" 142} 143 144################################### want ######################################## 145config("want_config") { 146 visibility = [ ":*" ] 147 visibility += [ "./test/fuzztest/*" ] 148 include_dirs = [] 149 cflags = [] 150 if (target_cpu == "arm") { 151 cflags += [ "-DBINDER_IPC_32BIT" ] 152 } 153 cflags += [ "-Werror,-Wfloat-equal" ] 154 defines = [ "ABILITYBASE_LOG_TAG = \"Want\"" ] 155} 156 157config("want_public_config") { 158 visibility = [ ":*" ] 159 visibility += [ "./test/unittest:*" ] 160 include_dirs = [ 161 "interfaces/inner_api/base/include", 162 "interfaces/kits/native/uri/include", 163 "interfaces/kits/native/want/include", 164 "${ability_base_innerapi_path}/log/include", 165 "//third_party/json/include", 166 ] 167} 168 169config("want_all_dependent_config") { 170 include_dirs = [ 171 "${ability_base_kits_native_path}/want/include", 172 "//third_party/json/include", 173 ] 174} 175 176ohos_shared_library("want") { 177 sources = [ 178 "interfaces/kits/native/want/src/array_wrapper.cpp", 179 "interfaces/kits/native/want/src/element_name.cpp", 180 "interfaces/kits/native/want/src/extra_params.cpp", 181 "interfaces/kits/native/want/src/operation.cpp", 182 "interfaces/kits/native/want/src/operation_builder.cpp", 183 "interfaces/kits/native/want/src/pac_map.cpp", 184 "interfaces/kits/native/want/src/patterns_matcher.cpp", 185 "interfaces/kits/native/want/src/skills.cpp", 186 "interfaces/kits/native/want/src/want.cpp", 187 "interfaces/kits/native/want/src/want_params.cpp", 188 "interfaces/kits/native/want/src/want_params_wrapper.cpp", 189 ] 190 191 deps = [ 192 ":base", 193 ":zuri", 194 "//third_party/json:nlohmann_json_static", 195 "//third_party/jsoncpp:jsoncpp", 196 ] 197 all_dependent_configs = [ 198 ":want_all_dependent_config", 199 "//third_party/jsoncpp:jsoncpp_public_config", 200 ] 201 202 external_deps = [ 203 "c_utils:utils", 204 "hilog:libhilog", 205 "ipc:ipc_core", 206 "ipc:ipc_single", 207 ] 208 209 configs = [ ":want_config" ] 210 public_configs = [ ":want_public_config" ] 211 subsystem_name = "ability" 212 innerapi_tags = [ 213 "platformsdk", 214 "sasdk", 215 ] 216 part_name = "ability_base" 217} 218 219################################### view_data ######################################## 220config("view_data_config") { 221 include_dirs = [ 222 "${ability_base_kits_native_path}/view_data/include", 223 "${ability_base_innerapi_path}/log/include", 224 ] 225} 226 227ohos_shared_library("view_data") { 228 sources = [ 229 "interfaces/kits/native/view_data/src/page_node_info.cpp", 230 "interfaces/kits/native/view_data/src/view_data.cpp", 231 ] 232 233 deps = [ "//third_party/json:nlohmann_json_static" ] 234 235 external_deps = [ "hilog:libhilog" ] 236 237 public_configs = [ ":view_data_config" ] 238 subsystem_name = "ability" 239 innerapi_tags = [ "platformsdk_indirect" ] 240 part_name = "ability_base" 241} 242 243################################### session_info ######################################## 244config("session_info_all_dependent_config") { 245 include_dirs = [ 246 "${ability_base_kits_native_path}/session_info/include", 247 "${ability_base_innerapi_path}/log/include", 248 ] 249} 250 251ohos_shared_library("session_info") { 252 sources = [ "interfaces/kits/native/session_info/src/session_info.cpp" ] 253 254 all_dependent_configs = [ ":session_info_all_dependent_config" ] 255 256 deps = [ ":want" ] 257 258 external_deps = [ 259 "ability_runtime:ability_start_setting", 260 "c_utils:utils", 261 "hilog:libhilog", 262 "ipc:ipc_core", 263 ] 264 265 subsystem_name = "ability" 266 innerapi_tags = [ "platformsdk_indirect" ] 267 part_name = "ability_base" 268} 269 270################################### string_utils ######################################## 271config("string_utils_config") { 272 include_dirs = [ "${ability_base_kits_native_path}/extractortool/include" ] 273} 274 275ohos_shared_library("string_utils") { 276 if (is_mingw) { 277 defines = [ "WINDOWS_PLATFORM" ] 278 } else { 279 defines = [ "MAC_PLATFORM" ] 280 } 281 282 sources = [ "interfaces/kits/native/extractortool/src/file_path_utils.cpp" ] 283 284 cflags = [] 285 if (target_cpu == "arm") { 286 cflags += [ "-DBINDER_IPC_32BIT" ] 287 } 288 289 public_configs = [ ":string_utils_config" ] 290 291 subsystem_name = "ability" 292 innerapi_tags = [ "platformsdk_indirect" ] 293 part_name = "ability_base" 294} 295 296################################### extractortool ######################################## 297config("ability_extractor_config") { 298 include_dirs = [ 299 "interfaces/kits/native/extractortool/include", 300 "${ability_base_innerapi_path}/log/include", 301 "//third_party/json/include", 302 "//third_party/zlib/contrib/minizip", 303 "//third_party/zlib", 304 ] 305} 306 307config("exceptions") { 308 cflags_cc = [ "-fexceptions" ] 309} 310 311ohos_shared_library("extractortool") { 312 sources = [ 313 "interfaces/kits/native/extractortool/src/extractor.cpp", 314 "interfaces/kits/native/extractortool/src/file_mapper.cpp", 315 "interfaces/kits/native/extractortool/src/zip_file.cpp", 316 "interfaces/kits/native/extractortool/src/zip_file_reader.cpp", 317 "interfaces/kits/native/extractortool/src/zip_file_reader_io.cpp", 318 "interfaces/kits/native/extractortool/src/zip_file_reader_mem.cpp", 319 ] 320 321 cflags = [] 322 cflags_cc = [] 323 configs = [ ":exceptions" ] 324 325 if (target_cpu == "arm") { 326 cflags += [ "-DBINDER_IPC_32BIT" ] 327 } 328 329 deps = [ 330 ":string_utils", 331 "//third_party/zlib:shared_libz", 332 ] 333 334 public_configs = [ ":ability_extractor_config" ] 335 336 external_deps = [ 337 "c_utils:utils", 338 "hilog:libhilog", 339 ] 340 341 subsystem_name = "ability" 342 innerapi_tags = [ "platformsdk_indirect" ] 343 part_name = "ability_base" 344} 345 346################################### extractresourcemanager ######################################## 347config("ability_extract_resource_manager_config") { 348 include_dirs = [ "interfaces/kits/native/extractortool/include" ] 349} 350 351ohos_shared_library("extractresourcemanager") { 352 sources = [ 353 "interfaces/kits/native/extractortool/src/extract_resource_manager.cpp", 354 ] 355 356 cflags = [] 357 if (target_cpu == "arm") { 358 cflags += [ "-DBINDER_IPC_32BIT" ] 359 } 360 361 external_deps = [ "resource_management:global_resmgr" ] 362 363 public_configs = [ ":ability_extract_resource_manager_config" ] 364 365 subsystem_name = "ability" 366 innerapi_tags = [ "platformsdk_indirect" ] 367 part_name = "ability_base" 368} 369 370group("base_innerkits_target") { 371 deps = [ 372 ":base", 373 ":configuration", 374 ":extractortool", 375 ":extractresourcemanager", 376 ":string_utils", 377 ":want", 378 ] 379} 380