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/window/window_manager/windowmanager_aafwk.gni") 16 17config("libwindow_extension_private_config") { 18 visibility = [ ":*" ] 19 20 include_dirs = [ 21 "include", 22 "include/zidl", 23 "../extension_connection/include", 24 "../extension_connection/include/zidl", 25 "../../interfaces/kits/napi/window_runtime/window_napi", 26 "../../interfaces/innerkits/extension", 27 "../../interfaces/innerkits/wm", 28 ] 29} 30 31## Build libwindow_extension.so 32ohos_shared_library("libwindow_extension") { 33 sources = [ 34 "../extension_connection/src/zidl/window_extension_client_proxy.cpp", 35 "src/js_window_extension.cpp", 36 "src/js_window_extension_context.cpp", 37 "src/window_extension.cpp", 38 "src/window_extension_context.cpp", 39 "src/window_extension_stub_impl.cpp", 40 "src/zidl/window_extension_stub.cpp", 41 ] 42 43 configs = [ 44 ":libwindow_extension_private_config", 45 "//foundation/window/window_manager/resources/config/build:coverage_flags", 46 ] 47 48 deps = [ 49 "${ability_runtime_napi_path}/inner/napi_common:napi_common", 50 "${ability_runtime_path}/frameworks/native/appkit:app_context", 51 "//foundation/graphic/graphic_2d/rosen/modules/render_service_client:librender_service_client", 52 "//foundation/window/window_manager/interfaces/kits/napi/window_runtime:window_native_kit", 53 "//foundation/window/window_manager/wm:libwm", 54 ] 55 56 external_deps = [ 57 "ability_base:want", 58 "ability_runtime:ability_context_native", 59 "ability_runtime:ability_manager", 60 "ability_runtime:abilitykit_native", 61 "ability_runtime:runtime", 62 "c_utils:utils", 63 "hilog_native:libhilog", 64 "hitrace_native:hitrace_meter", 65 "input:libmmi-client", 66 "ipc:ipc_core", 67 ] 68 69 part_name = "window_manager" 70 subsystem_name = "window" 71} 72 73config("window_extension_module_private_config") { 74 visibility = [ ":*" ] 75 76 include_dirs = [ 77 "include", 78 "${ability_runtime_path}/interfaces/kits/native/ability/ability_runtime", 79 ] 80} 81 82ohos_shared_library("window_extension_module") { 83 sources = [ "src/window_extension_module_loader.cpp" ] 84 85 configs = [ 86 ":window_extension_module_private_config", 87 "//foundation/window/window_manager/resources/config/build:coverage_flags", 88 ] 89 90 deps = [ "//foundation/window/window_manager/extension/window_extension:libwindow_extension" ] 91 92 external_deps = [ 93 "ability_runtime:abilitykit_native", 94 "hiviewdfx_hilog_native:libhilog", 95 ] 96 relative_install_dir = "extensionability/" 97 subsystem_name = "window" 98 part_name = "window_manager" 99} 100 101group("test") { 102 testonly = true 103 deps = [ "test:test" ] 104} 105