• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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