1# Copyright (c) 2023 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/config/components/idl_tool/idl.gni") 15import("//build/ohos.gni") 16import("../../extdevmgr.gni") 17 18idl_gen_interface("external_device_manager_interface") { 19 sources = [ "IDriverExtMgr.idl" ] 20 sources_callback = [ "IDriverExtMgrCallback.idl" ] 21 log_domainid = "0xD002551" 22 log_tag = "EdmService" 23 subsystem_name = "hdf" 24 part_name = "external_device_manager" 25} 26 27config("ext_dvc_mgr_public_config") { 28 include_dirs = [ 29 "./", 30 "${target_gen_dir}", 31 "${utils_path}/include", 32 ] 33} 34 35ohos_shared_library("driver_ext_mgr_client") { 36 output_values = get_target_outputs(":external_device_manager_interface") 37 sources = [ 38 "${ext_mgr_path}/frameworks/native/driver_ext_mgr_client.cpp", 39 "${ext_mgr_path}/services/native/driver_extension_manager/src/driver_ext_mgr_types.cpp", 40 ] 41 sources += filter_include(output_values, [ "*mgr_proxy.cpp" ]) 42 sources += filter_include(output_values, [ "*callback_stub.cpp" ]) 43 public_configs = [ ":ext_dvc_mgr_public_config" ] 44 45 deps = [ ":external_device_manager_interface" ] 46 external_deps = [ 47 "c_utils:utils", 48 "hilog:libhilog", 49 "ipc:ipc_core", 50 "samgr:samgr_proxy", 51 ] 52 version_script = "driver_ext_mgr_client.map" 53 subsystem_name = "hdf" 54 part_name = "external_device_manager" 55} 56 57ohos_source_set("external_device_manager_stub") { 58 public_configs = [ ":ext_dvc_mgr_public_config" ] 59 output_values = get_target_outputs(":external_device_manager_interface") 60 sources = filter_include(output_values, [ "*mgr_stub.cpp" ]) 61 sources += filter_include(output_values, [ "*callback_proxy.cpp" ]) 62 deps = [ ":external_device_manager_interface" ] 63 64 external_deps = [ 65 "c_utils:utils", 66 "hilog:libhilog", 67 "ipc:ipc_core", 68 "samgr:samgr_proxy", 69 ] 70 subsystem_name = "hdf" 71 part_name = "external_device_manager" 72} 73