14d6c458bSopenharmony_ci# Copyright (c) 2022 Huawei Device Co., Ltd.
24d6c458bSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
34d6c458bSopenharmony_ci# you may not use this file except in compliance with the License.
44d6c458bSopenharmony_ci# You may obtain a copy of the License at
54d6c458bSopenharmony_ci#
64d6c458bSopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
74d6c458bSopenharmony_ci#
84d6c458bSopenharmony_ci# Unless required by applicable law or agreed to in writing, software
94d6c458bSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
104d6c458bSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
114d6c458bSopenharmony_ci# See the License for the specific language governing permissions and
124d6c458bSopenharmony_ci# limitations under the License.
134d6c458bSopenharmony_ci
144d6c458bSopenharmony_ciimport("//build/ohos.gni")
154d6c458bSopenharmony_ci
164d6c458bSopenharmony_ciohos_shared_library("dfx") {
174d6c458bSopenharmony_ci  branch_protector_ret = "pac_ret"
184d6c458bSopenharmony_ci  sanitize = {
194d6c458bSopenharmony_ci    cfi = true
204d6c458bSopenharmony_ci    cfi_cross_dso = true
214d6c458bSopenharmony_ci    debug = false
224d6c458bSopenharmony_ci  }
234d6c458bSopenharmony_ci  include_dirs = [
244d6c458bSopenharmony_ci    "include",
254d6c458bSopenharmony_ci    "//third_party/icu/icu4c/source/common",
264d6c458bSopenharmony_ci    "//third_party/node/src",
274d6c458bSopenharmony_ci  ]
284d6c458bSopenharmony_ci  sources = [ "native_module_dfx.cpp" ]
294d6c458bSopenharmony_ci  deps = [ "//third_party/icu/icu4c:shared_icuuc" ]
304d6c458bSopenharmony_ci  external_deps = [ "napi:ace_napi" ]
314d6c458bSopenharmony_ci  if (is_standard_system) {
324d6c458bSopenharmony_ci    external_deps += [ "hilog:libhilog" ]
334d6c458bSopenharmony_ci  } else {
344d6c458bSopenharmony_ci    external_deps += [
354d6c458bSopenharmony_ci      "c_utils:utils",
364d6c458bSopenharmony_ci      "hilog:libhilog",
374d6c458bSopenharmony_ci    ]
384d6c458bSopenharmony_ci  }
394d6c458bSopenharmony_ci  subsystem_name = "commonlibrary"
404d6c458bSopenharmony_ci  part_name = "ets_utils"
414d6c458bSopenharmony_ci
424d6c458bSopenharmony_ci  relative_install_dir = "module"
434d6c458bSopenharmony_ci}
444d6c458bSopenharmony_ci
454d6c458bSopenharmony_cigroup("dfx_packages") {
464d6c458bSopenharmony_ci  deps = [ ":dfx" ]
474d6c458bSopenharmony_ci}
48