# Copyright (c) 2021-2024 Huawei Device Co., Ltd. # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. import("//build/ohos.gni") import("./multimodalinput_mini.gni") config("coverage_flags") { if (input_feature_coverage) { cflags = [ "--coverage" ] ldflags = [ "--coverage" ] cflags_cc = [ "--coverage" ] } } ohos_prebuilt_etc("mmi_uinput.rc") { source = "mmi_uinput.rc" relative_install_dir = "init" part_name = "input" subsystem_name = "multimodalinput" } ohos_prebuilt_etc("multimodalinput.rc") { source = "multimodalinput.cfg" relative_install_dir = "init" part_name = "input" subsystem_name = "multimodalinput" } ohos_executable("uinput_inject") { install_enable = true sources = uinput_inject_sources branch_protector_ret = "pac_ret" sanitize = { cfi = true cfi_cross_dso = true debug = false } include_dirs = [ "${mmi_path}/service/nap_process/include", "${mmi_path}/util/common/include", "${mmi_path}/interfaces/native/innerkits/common/include", ] external_deps = [ "c_utils:utils", "drivers_interface_input:libinput_proxy_1.0", "hilog:libhilog", ] defines = [ "MMI_DISABLE_LOG_TRACE" ] cflags = [ "-fstack-protector-strong" ] part_name = "input" subsystem_name = "multimodalinput" } group("multimodalinput_mmi_base") { deps = [] } group("multimodalinput_mmi_frameworks") { deps = [ "frameworks/proxy:libmmi-client" ] } group("multimodalinput_mmi_service") { deps = [ "service:libmmi-server", "tools/inject_event:uinput", ] } group("input_jsapi_group") { deps = [] if (support_jsapi) { deps += [ "frameworks/napi/gesture_event:gestureevent", "frameworks/napi/intention_code:intentioncode", "frameworks/napi/key_code:keycode", "frameworks/napi/key_event:keyevent", "frameworks/napi/mouse_event:mouseevent", "frameworks/napi/touch_event:touchevent", ] if (input_feature_monitor) { deps += [ "frameworks/napi/input_monitor:inputmonitor" ] } if (input_feature_mouse) { deps += [ "frameworks/napi/pointer:pointer" ] } if (input_feature_keyboard) { deps += [ "frameworks/napi/input_consumer:inputconsumer", "frameworks/napi/input_event_client:inputeventclient", ] } if (input_feature_input_device) { deps += [ "frameworks/napi/input_device:inputdevice" ] } if (input_feature_short_key) { deps += [ "frameworks/napi/short_key:shortkey" ] } deps += [ "frameworks/napi/infrared_emitter:infraredemitter" ] } } group("mmi_tests") { testonly = true deps = [ "common/anco/comm:AncoChannelStubTest", "frameworks/native/input:OHInputManagerTest", "frameworks/proxy:InputHandlerManagerTest", "frameworks/proxy:InputManagerFilterManualTest", "frameworks/proxy:InputManagerImplTest", "frameworks/proxy:InputManagerInjectTest", "frameworks/proxy:InputManagerManualTest", "frameworks/proxy:InputManagerTest", "frameworks/proxy:KeyEventTest", "frameworks/proxy:PointerEventTest", "frameworks/proxy:ut-mmi-proxy-out", "libudev:test", "service:AccountManagerTest", "service:ApplicationStateObserverTest", "service:ConnectManagerEXTest", "service:ConnectManagerProxyEXTest", "service:ConnectManagerTest", "service:DelegateTaskTest", "service:DeviceConfigTest", "service:DeviceManagerTest", "service:DfxHisysEventTest", "service:DisplayStateManagerTest", "service:EventDispatchTest", "service:EventDumpTest", "service:EventFilterDeathRecipientTest", "service:EventFilterHandlerTest", "service:EventHandlerTest", "service:InfraredEmitterTest", "service:InputDisplayBindHelperTest", "service:InputWindowsManagerEXTest", "service:InputWindowsManagerTest", "service:InterceptorTest", "service:KeyAutoRepeatExTest", "service:KeyCommandTest", "service:KeyEventNormalizeTest", "service:KnuckleDivergentPointTest", "service:KnuckleDrawingManagerTest", "service:KnuckleDynamicDrawingManagerTest", "service:KnuckleGlowPointTest", "service:KnuckleGlowTraceSystemTest", "service:LibinputAdapterTest", "service:ModuleLoaderTest", "service:MonitorTest", "service:NapProcessTest", "service:PermissionHelperTest", "service:ServerMsgHandlerTest", "service:StylusKeyTest", "service:StylusKeyTest", "service:SubscriberTest", "service:TimerManagerTest", "service:event_resample_test", "service:mmi-service-tests", "service/crown_transform_processor/test:CrownTransformProcessorTest", "service/mouse_event_normalize/test:MouseEventNormalizeTest", "service/touch_event_normalize/test:TouchEventNormalizeTests", "test/fuzztest:test", "test/unittest/interfaces:InputNativeTest", "tools/inject_event:InjectEventTest", ] if (!use_clang_coverage) { deps += [ "service:rust_mmi_test", "util:rust_mmi_key_config_test", "util:ut-mmi-util-out", ] } if (input_ext_feature_anco) { deps += [ "${mmi_path}/frameworks/proxy/events/test:InputManagerAncoTest" ] } } group("examples_group") { deps = [ "examples/input_device_display_bind:input_device_display_bind" ] }