1# Copyright (c) 2020-2021 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# http://www.apache.org/licenses/LICENSE-2.0 6# Unless required by applicable law or agreed to in writing, software 7# distributed under the License is distributed on an "AS IS" BASIS, 8# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 9# See the License for the specific language governing permissions and 10# limitations under the License. 11 12import("//build/lite/config/component/lite_component.gni") 13import("//build/lite/ndk/ndk.gni") 14 15lite_component("window_manager_lite") { 16 features = [ 17 ":wms_server", 18 ":wms_client", 19 ] 20 public_deps = [ ":wms_client" ] 21} 22 23ndk_lib("window_manager_lite_ndk") { 24 lib_extension = ".so" 25 deps = [ ":wms_client" ] 26 head_files = [] 27} 28 29commonDeps = [ 30 "//foundation/systemabilitymgr/samgr_lite/samgr:samgr", 31 "//foundation/systemabilitymgr/samgr_lite/communication/broadcast:broadcast", 32 "//foundation/communication/ipc/interfaces/innerkits/c/ipc:ipc_single", 33 "//foundation/graphic/surface_lite:surface", 34 "//foundation/graphic/graphic_utils_lite:utils_lite", 35 "//third_party/bounds_checking_function:libsec_shared", 36] 37 38shared_library("wms_client") { 39 sources = [ 40 "frameworks/ims/input_event_listener_proxy.cpp", 41 "frameworks/wms/iwindows_manager.cpp", 42 "frameworks/wms/lite_proxy_surface.cpp", 43 "frameworks/wms/lite_proxy_window.cpp", 44 "frameworks/wms/lite_proxy_windows_manager.cpp", 45 "frameworks/wms/lite_win_requestor.cpp", 46 "frameworks/wms/lite_wm_requestor.cpp", 47 "frameworks/wms/lite_wms_client.cpp", 48 ] 49 deps = commonDeps 50 public_deps = [ "//foundation/graphic/surface_lite:surface_lite" ] 51 public_configs = [ ":wms_public_config" ] 52 ldflags = [ "-lstdc++" ] 53 cflags = [ "-Wall" ] 54 cflags_cc = cflags 55} 56 57config("wms_public_config") { 58 include_dirs = [ "interfaces/innerkits" ] 59} 60 61imsSources = [ 62 "services/ims/input_event_distributer.cpp", 63 "services/ims/input_event_hub.cpp", 64 "services/ims/input_manager_service.cpp", 65 "services/ims/input_event_client_proxy.cpp", 66 "services/ims/samgr_ims.cpp", 67] 68imsInclude = [ "services/ims" ] 69imsDeps = [ "//drivers/hdf_core/adapter/uhdf/posix:hdf_posix_osal" ] 70 71executable("wms_server") { 72 sources = [ 73 "services/wms/lite_win.cpp", 74 "services/wms/lite_wm.cpp", 75 "services/wms/lite_wms.cpp", 76 "services/wms/samgr_wms.cpp", 77 "services/wms/wms.cpp", 78 ] 79 include_dirs = [ 80 "frameworks/ims", 81 "interfaces/innerkits", 82 "//base/security/permission_lite/services/pms_client/include", 83 "//base/security/permission_lite/interfaces/innerkits", 84 "//base/security/permission_lite/interfaces/kits", 85 "//drivers/peripheral/input/interfaces/include", 86 "//third_party/FreeBSD/sys/dev/evdev", 87 ] 88 ldflags = [ 89 "-lstdc++", 90 "-lpthread", 91 "-Wl,-rpath-link=$ohos_root_path/$root_out_dir", 92 "-ldisplay_gfx", 93 "-ldisplay_gralloc", 94 "-ldisplay_layer", 95 ] 96 deps = [ 97 "//base/security/permission_lite/services/pms_client:pms_client", 98 "//drivers/peripheral/input/hal:hdi_input", 99 "//foundation/graphic/graphic_utils_lite:lite_graphic_hals", 100 ] 101 deps += commonDeps 102 cflags = [ "-Wall" ] 103 cflags_cc = cflags 104 105 sources += imsSources 106 include_dirs += imsInclude 107 deps += imsDeps 108} 109