1# Copyright (c) 2025 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/ets_frontend/ets2abc_config.gni") 15import("//build/ohos.gni") 16import("//build/templates/abc/ohos_abc.gni") 17native_path = "../../../../services/native" 18taihe_path = "../../taihe" 19 20generate_static_abc("driver_extension_ability_abc") { 21 base_url = "./ets" 22 files = [ "./ets/@ohos.app.ability.DriverExtensionAbility.ets" ] 23 dst_file = "$target_out_dir/driverExtensionAbility.abc" 24 out_puts = [ "$target_out_dir/driverExtensionAbility.abc" ] 25 is_boot_abc = "True" 26 device_dst_file = "/system/framework/driverExtensionAbility.abc" 27} 28 29ohos_shared_library("driverextension_ani") { 30 include_dirs = [ 31 "native/include", 32 "$native_path/driver_extension/include", 33 "$taihe_path/driver_extension_context/include", 34 ] 35 sources = [ "native/src/ani_driver_extension.cpp" ] 36 37 deps = [ 38 "$native_path/driver_extension:driver_extension", 39 "$taihe_path/driver_extension_context:driverExtensionContext_taihe", 40 ] 41 42 external_deps = [ 43 "ability_base:want", 44 "ability_runtime:ability_connect_callback_stub", 45 "ability_runtime:ability_context_native", 46 "ability_runtime:ability_manager", 47 "ability_runtime:abilitykit_native", 48 "ability_runtime:ani_common", 49 "ability_runtime:app_context", 50 "ability_runtime:extensionkit_native", 51 "ability_runtime:napi_common", 52 "ability_runtime:runtime", 53 "c_utils:utils", 54 "eventhandler:libeventhandler", 55 "hilog:libhilog", 56 "hitrace:hitrace_meter", 57 "ipc:ipc_core", 58 "ipc:ipc_napi", 59 "ipc:rpc_ani", 60 "runtime_core:ani", 61 ] 62 63 sanitize = { 64 integer_overflow = true 65 ubsan = true 66 boundary_sanitize = true 67 cfi = true 68 cfi_cross_dso = true 69 debug = false 70 } 71 72 subsystem_name = "hdf" 73 part_name = "external_device_manager" 74 output_extension = "so" 75} 76 77ohos_prebuilt_etc("driver_extension_ability_abc_etc") { 78 source = "$target_out_dir/driverExtensionAbility.abc" 79 module_install_dir = "framework" 80 subsystem_name = "hdf" 81 part_name = "external_device_manager" 82 deps = [ ":driver_extension_ability_abc" ] 83} 84 85group("driver_extensionAbility_ani") { 86 deps = [ 87 ":driver_extension_ability_abc_etc", 88 ":driverextension_ani", 89 ] 90} 91