12dc7c57fSopenharmony_ci# Copyright (c) 2024 Huawei Device Co., Ltd.
22dc7c57fSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
32dc7c57fSopenharmony_ci# you may not use this file except in compliance with the License.
42dc7c57fSopenharmony_ci# You may obtain a copy of the License at
52dc7c57fSopenharmony_ci#
62dc7c57fSopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
72dc7c57fSopenharmony_ci#
82dc7c57fSopenharmony_ci# Unless required by applicable law or agreed to in writing, software
92dc7c57fSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
102dc7c57fSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
112dc7c57fSopenharmony_ci# See the License for the specific language governing permissions and
122dc7c57fSopenharmony_ci# limitations under the License.
132dc7c57fSopenharmony_ci
142dc7c57fSopenharmony_ciimport("//base/notification/common_event_service/event.gni")
152dc7c57fSopenharmony_ciimport("//build/ohos.gni")
162dc7c57fSopenharmony_ci
172dc7c57fSopenharmony_cicflags = []
182dc7c57fSopenharmony_ci
192dc7c57fSopenharmony_ciconfig("cesfwk_ndk_config") {
202dc7c57fSopenharmony_ci  visibility = [ ":*" ]
212dc7c57fSopenharmony_ci
222dc7c57fSopenharmony_ci  include_dirs = [
232dc7c57fSopenharmony_ci    "${ces_innerkits_path}",
242dc7c57fSopenharmony_ci    "${ces_ndk_path}/include",
252dc7c57fSopenharmony_ci  ]
262dc7c57fSopenharmony_ci
272dc7c57fSopenharmony_ci  if (target_cpu == "arm") {
282dc7c57fSopenharmony_ci    cflags += [ "-DBINDER_IPC_32BIT" ]
292dc7c57fSopenharmony_ci  }
302dc7c57fSopenharmony_ci}
312dc7c57fSopenharmony_ci
322dc7c57fSopenharmony_ciconfig("cesfwk_ndk_public_config") {
332dc7c57fSopenharmony_ci  visibility = [ ":*" ]
342dc7c57fSopenharmony_ci
352dc7c57fSopenharmony_ci  include_dirs = [ "${ces_ndk_path}/include" ]
362dc7c57fSopenharmony_ci}
372dc7c57fSopenharmony_ci
382dc7c57fSopenharmony_ciohos_shared_library("ohcommonevent") {
392dc7c57fSopenharmony_ci  sanitize = {
402dc7c57fSopenharmony_ci    integer_overflow = true
412dc7c57fSopenharmony_ci    ubsan = true
422dc7c57fSopenharmony_ci    boundary_sanitize = true
432dc7c57fSopenharmony_ci    cfi = true
442dc7c57fSopenharmony_ci    cfi_cross_dso = true
452dc7c57fSopenharmony_ci    debug = false
462dc7c57fSopenharmony_ci  }
472dc7c57fSopenharmony_ci  branch_protector_ret = "pac_ret"
482dc7c57fSopenharmony_ci
492dc7c57fSopenharmony_ci  configs = [ ":cesfwk_ndk_config" ]
502dc7c57fSopenharmony_ci
512dc7c57fSopenharmony_ci  public_configs = [ ":cesfwk_ndk_public_config" ]
522dc7c57fSopenharmony_ci
532dc7c57fSopenharmony_ci  sources = [
542dc7c57fSopenharmony_ci    "src/oh_commonevent.cpp",
552dc7c57fSopenharmony_ci    "src/oh_commonevent_parameters_parse.cpp",
562dc7c57fSopenharmony_ci    "src/oh_commonevent_wrapper.cpp",
572dc7c57fSopenharmony_ci  ]
582dc7c57fSopenharmony_ci
592dc7c57fSopenharmony_ci  deps = [
602dc7c57fSopenharmony_ci    "${ces_core_path}:cesfwk_core",
612dc7c57fSopenharmony_ci    "${ces_native_path}:cesfwk_innerkits",
622dc7c57fSopenharmony_ci  ]
632dc7c57fSopenharmony_ci
642dc7c57fSopenharmony_ci  external_deps = [
652dc7c57fSopenharmony_ci    "ability_base:base",
662dc7c57fSopenharmony_ci    "ability_base:want",
672dc7c57fSopenharmony_ci    "ability_runtime:ability_manager",
682dc7c57fSopenharmony_ci    "ability_runtime:abilitykit_native",
692dc7c57fSopenharmony_ci    "ability_runtime:napi_base_context",
702dc7c57fSopenharmony_ci    "c_utils:utils",
712dc7c57fSopenharmony_ci    "hilog:libhilog",
722dc7c57fSopenharmony_ci  ]
732dc7c57fSopenharmony_ci  output_extension = "so"
742dc7c57fSopenharmony_ci  innerapi_tags = [ "ndk" ]
752dc7c57fSopenharmony_ci  subsystem_name = "notification"
762dc7c57fSopenharmony_ci  part_name = "common_event_service"
772dc7c57fSopenharmony_ci}
78