180922886Sopenharmony_ci# Copyright (c) 2024 Huawei Device Co., Ltd.
280922886Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
380922886Sopenharmony_ci# you may not use this file except in compliance with the License.
480922886Sopenharmony_ci# You may obtain a copy of the License at
580922886Sopenharmony_ci#
680922886Sopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
780922886Sopenharmony_ci#
880922886Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software
980922886Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
1080922886Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1180922886Sopenharmony_ci# See the License for the specific language governing permissions and
1280922886Sopenharmony_ci# limitations under the License.
1380922886Sopenharmony_ci
1480922886Sopenharmony_ciimport("//build/ohos.gni")
1580922886Sopenharmony_ciimport("../../../config.gni")
1680922886Sopenharmony_ci
1780922886Sopenharmony_ciohos_shared_library("ohavsession") {
1880922886Sopenharmony_ci  install_enable = true
1980922886Sopenharmony_ci
2080922886Sopenharmony_ci  sanitize = {
2180922886Sopenharmony_ci    cfi = true
2280922886Sopenharmony_ci    cfi_cross_dso = true
2380922886Sopenharmony_ci    cfi_vcall_icall_only = true
2480922886Sopenharmony_ci    debug = false
2580922886Sopenharmony_ci  }
2680922886Sopenharmony_ci
2780922886Sopenharmony_ci  include_dirs = [
2880922886Sopenharmony_ci    "include",
2980922886Sopenharmony_ci    "../../../interfaces/inner_api/native/session/include",
3080922886Sopenharmony_ci    "../../../interfaces/kits/c",
3180922886Sopenharmony_ci  ]
3280922886Sopenharmony_ci
3380922886Sopenharmony_ci  cflags = [
3480922886Sopenharmony_ci    "-Wall",
3580922886Sopenharmony_ci    "-Werror",
3680922886Sopenharmony_ci  ]
3780922886Sopenharmony_ci
3880922886Sopenharmony_ci  sources = [
3980922886Sopenharmony_ci    "src/OHAVMetadataBuilder.cpp",
4080922886Sopenharmony_ci    "src/OHAVSession.cpp",
4180922886Sopenharmony_ci    "src/OHAVSessionCallbackImpl.cpp",
4280922886Sopenharmony_ci  ]
4380922886Sopenharmony_ci
4480922886Sopenharmony_ci  deps = [ "../session:avsession_client" ]
4580922886Sopenharmony_ci
4680922886Sopenharmony_ci  external_deps = [
4780922886Sopenharmony_ci    "ability_base:want",
4880922886Sopenharmony_ci    "ability_base:zuri",
4980922886Sopenharmony_ci    "ability_runtime:wantagent_innerkits",
5080922886Sopenharmony_ci    "audio_framework:audio_client",
5180922886Sopenharmony_ci    "c_utils:utils",
5280922886Sopenharmony_ci    "curl:curl_shared",
5380922886Sopenharmony_ci    "hilog:libhilog",
5480922886Sopenharmony_ci    "image_framework:image",
5580922886Sopenharmony_ci    "image_framework:image_native",
5680922886Sopenharmony_ci    "input:libmmi-client",
5780922886Sopenharmony_ci    "ipc:ipc_single",
5880922886Sopenharmony_ci    "samgr:samgr_proxy",
5980922886Sopenharmony_ci  ]
6080922886Sopenharmony_ci
6180922886Sopenharmony_ci  innerapi_tags = [ "ndk" ]
6280922886Sopenharmony_ci
6380922886Sopenharmony_ci  output_name = "ohavsession"
6480922886Sopenharmony_ci  output_extension = "so"
6580922886Sopenharmony_ci  subsystem_name = "multimedia"
6680922886Sopenharmony_ci  part_name = "av_session"
6780922886Sopenharmony_ci}
68