1e0dac50fSopenharmony_ci# Copyright (c) 2024 Huawei Device Co., Ltd. 2e0dac50fSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 3e0dac50fSopenharmony_ci# you may not use this file except in compliance with the License. 4e0dac50fSopenharmony_ci# You may obtain a copy of the License at 5e0dac50fSopenharmony_ci# 6e0dac50fSopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 7e0dac50fSopenharmony_ci# 8e0dac50fSopenharmony_ci# Unless required by applicable law or agreed to in writing, software 9e0dac50fSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 10e0dac50fSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11e0dac50fSopenharmony_ci# See the License for the specific language governing permissions and 12e0dac50fSopenharmony_ci# limitations under the License. 13e0dac50fSopenharmony_ci 14e0dac50fSopenharmony_ciimport("//build/ohos.gni") 15e0dac50fSopenharmony_ciimport("../../../../windowmanager_aafwk.gni") 16e0dac50fSopenharmony_ci 17e0dac50fSopenharmony_ciconfig("window_ffi_kit_config") { 18e0dac50fSopenharmony_ci include_dirs = [ "./" ] 19e0dac50fSopenharmony_ci} 20e0dac50fSopenharmony_ci 21e0dac50fSopenharmony_ciohos_shared_library("cj_window_ffi") { 22e0dac50fSopenharmony_ci branch_protector_ret = "pac_ret" 23e0dac50fSopenharmony_ci sanitize = { 24e0dac50fSopenharmony_ci cfi = true 25e0dac50fSopenharmony_ci cfi_cross_dso = true 26e0dac50fSopenharmony_ci debug = false 27e0dac50fSopenharmony_ci } 28e0dac50fSopenharmony_ci 29e0dac50fSopenharmony_ci configs = [ "../../../../resources/config/build:coverage_flags" ] 30e0dac50fSopenharmony_ci 31e0dac50fSopenharmony_ci public_configs = [ ":window_ffi_kit_config" ] 32e0dac50fSopenharmony_ci 33e0dac50fSopenharmony_ci if (!build_ohos_sdk) { 34e0dac50fSopenharmony_ci sources = [ 35e0dac50fSopenharmony_ci "window_ffi.cpp", 36e0dac50fSopenharmony_ci "window_impl.cpp", 37e0dac50fSopenharmony_ci "window_listener.cpp", 38e0dac50fSopenharmony_ci "window_manager_impl.cpp", 39e0dac50fSopenharmony_ci "window_register_manager.cpp", 40e0dac50fSopenharmony_ci "window_stage_impl.cpp", 41e0dac50fSopenharmony_ci ] 42e0dac50fSopenharmony_ci deps = [ 43e0dac50fSopenharmony_ci "../../../../dm:libdm", 44e0dac50fSopenharmony_ci "../../../../utils:libwmutil", 45e0dac50fSopenharmony_ci "../../../../utils:libwmutil_base", 46e0dac50fSopenharmony_ci "../../../../wm:libwm", 47e0dac50fSopenharmony_ci ] 48e0dac50fSopenharmony_ci external_deps = [ 49e0dac50fSopenharmony_ci "ability_runtime:ability_context_native", 50e0dac50fSopenharmony_ci "ability_runtime:ability_manager", 51e0dac50fSopenharmony_ci "ability_runtime:abilitykit_native", 52e0dac50fSopenharmony_ci "ability_runtime:dialog_request_info", 53e0dac50fSopenharmony_ci "ability_runtime:extensionkit_native", 54e0dac50fSopenharmony_ci "ability_runtime:runtime", 55e0dac50fSopenharmony_ci "access_token:libaccesstoken_sdk", 56e0dac50fSopenharmony_ci "ace_engine:ace_uicontent", 57e0dac50fSopenharmony_ci "bundle_framework:appexecfwk_base", 58e0dac50fSopenharmony_ci "c_utils:utils", 59e0dac50fSopenharmony_ci "common_event_service:cesfwk_innerkits", 60e0dac50fSopenharmony_ci "eventhandler:libeventhandler", 61e0dac50fSopenharmony_ci "graphic_2d:librender_service_client", 62e0dac50fSopenharmony_ci "hilog:libhilog", 63e0dac50fSopenharmony_ci "hitrace:hitrace_meter", 64e0dac50fSopenharmony_ci "image_framework:cj_image_ffi", 65e0dac50fSopenharmony_ci "image_framework:image", 66e0dac50fSopenharmony_ci "image_framework:image_native", 67e0dac50fSopenharmony_ci "ipc:ipc_napi", 68e0dac50fSopenharmony_ci "ipc:ipc_single", 69e0dac50fSopenharmony_ci "napi:ace_napi", 70e0dac50fSopenharmony_ci "napi:cj_bind_ffi", 71e0dac50fSopenharmony_ci "napi:cj_bind_native", 72e0dac50fSopenharmony_ci ] 73e0dac50fSopenharmony_ci } else { 74e0dac50fSopenharmony_ci defines += [ "PREVIEWER" ] 75e0dac50fSopenharmony_ci sources = [ "window_mock.cpp" ] 76e0dac50fSopenharmony_ci external_deps = [ "napi:cj_bind_ffi" ] 77e0dac50fSopenharmony_ci } 78e0dac50fSopenharmony_ci innerapi_tags = [ "platformsdk" ] 79e0dac50fSopenharmony_ci part_name = "window_manager" 80e0dac50fSopenharmony_ci subsystem_name = "window" 81e0dac50fSopenharmony_ci} 82