1bae4d13cSopenharmony_ci# Copyright (c) 2021-2024 Huawei Device Co., Ltd. 2bae4d13cSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 3bae4d13cSopenharmony_ci# you may not use this file except in compliance with the License. 4bae4d13cSopenharmony_ci# You may obtain a copy of the License at 5bae4d13cSopenharmony_ci# 6bae4d13cSopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 7bae4d13cSopenharmony_ci# 8bae4d13cSopenharmony_ci# Unless required by applicable law or agreed to in writing, software 9bae4d13cSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 10bae4d13cSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11bae4d13cSopenharmony_ci# See the License for the specific language governing permissions and 12bae4d13cSopenharmony_ci# limitations under the License. 13bae4d13cSopenharmony_ci 14bae4d13cSopenharmony_ciimport("//build/ohos.gni") 15bae4d13cSopenharmony_ciimport("./../sensor.gni") 16bae4d13cSopenharmony_ci 17bae4d13cSopenharmony_ciohos_shared_library("libsensor_service") { 18bae4d13cSopenharmony_ci sources = [ 19bae4d13cSopenharmony_ci "src/client_info.cpp", 20bae4d13cSopenharmony_ci "src/fifo_cache_data.cpp", 21bae4d13cSopenharmony_ci "src/flush_info_record.cpp", 22bae4d13cSopenharmony_ci "src/sensor_dump.cpp", 23bae4d13cSopenharmony_ci "src/sensor_manager.cpp", 24bae4d13cSopenharmony_ci "src/sensor_power_policy.cpp", 25bae4d13cSopenharmony_ci "src/sensor_service.cpp", 26bae4d13cSopenharmony_ci "src/sensor_service_stub.cpp", 27bae4d13cSopenharmony_ci "src/stream_server.cpp", 28bae4d13cSopenharmony_ci ] 29bae4d13cSopenharmony_ci 30bae4d13cSopenharmony_ci include_dirs = [ 31bae4d13cSopenharmony_ci "$SUBSYSTEM_DIR/frameworks/native/include", 32bae4d13cSopenharmony_ci "$SUBSYSTEM_DIR/interfaces/inner_api", 33bae4d13cSopenharmony_ci "$SUBSYSTEM_DIR/services/include", 34bae4d13cSopenharmony_ci "$SUBSYSTEM_DIR/utils/common/include", 35bae4d13cSopenharmony_ci "$SUBSYSTEM_DIR/utils/ipc/include", 36bae4d13cSopenharmony_ci ] 37bae4d13cSopenharmony_ci 38bae4d13cSopenharmony_ci branch_protector_ret = "pac_ret" 39bae4d13cSopenharmony_ci sanitize = { 40bae4d13cSopenharmony_ci cfi = true 41bae4d13cSopenharmony_ci cfi_cross_dso = true 42bae4d13cSopenharmony_ci debug = false 43bae4d13cSopenharmony_ci } 44bae4d13cSopenharmony_ci 45bae4d13cSopenharmony_ci defines = sensor_default_defines 46bae4d13cSopenharmony_ci 47bae4d13cSopenharmony_ci deps = [ 48bae4d13cSopenharmony_ci "$SUBSYSTEM_DIR/utils/common:libsensor_utils", 49bae4d13cSopenharmony_ci "$SUBSYSTEM_DIR/utils/ipc:libsensor_ipc", 50bae4d13cSopenharmony_ci ] 51bae4d13cSopenharmony_ci 52bae4d13cSopenharmony_ci if (sensor_rust_socket_ipc) { 53bae4d13cSopenharmony_ci deps += 54bae4d13cSopenharmony_ci [ "$SUBSYSTEM_DIR/rust/utils/socket_ipc_rust_ffi:sensor_rust_util_ffi" ] 55bae4d13cSopenharmony_ci } 56bae4d13cSopenharmony_ci 57bae4d13cSopenharmony_ci external_deps = [ 58bae4d13cSopenharmony_ci "access_token:libaccesstoken_sdk", 59bae4d13cSopenharmony_ci "access_token:libtokenid_sdk", 60bae4d13cSopenharmony_ci "c_utils:utils", 61bae4d13cSopenharmony_ci "hilog:libhilog", 62bae4d13cSopenharmony_ci "ipc:ipc_single", 63bae4d13cSopenharmony_ci "safwk:system_ability_fwk", 64bae4d13cSopenharmony_ci "samgr:samgr_proxy", 65bae4d13cSopenharmony_ci ] 66bae4d13cSopenharmony_ci 67bae4d13cSopenharmony_ci if (sensor_memmgr_enable) { 68bae4d13cSopenharmony_ci defines += [ "MEMMGR_ENABLE" ] 69bae4d13cSopenharmony_ci external_deps += [ "memmgr:memmgrclient" ] 70bae4d13cSopenharmony_ci } 71bae4d13cSopenharmony_ci 72bae4d13cSopenharmony_ci if (hiviewdfx_hisysevent_enable) { 73bae4d13cSopenharmony_ci external_deps += [ "hisysevent:libhisysevent" ] 74bae4d13cSopenharmony_ci } 75bae4d13cSopenharmony_ci 76bae4d13cSopenharmony_ci if (hiviewdfx_hitrace_enable) { 77bae4d13cSopenharmony_ci external_deps += [ "hitrace:hitrace_meter" ] 78bae4d13cSopenharmony_ci } 79bae4d13cSopenharmony_ci 80bae4d13cSopenharmony_ci if (hdf_drivers_interface_sensor) { 81bae4d13cSopenharmony_ci sources += [ 82bae4d13cSopenharmony_ci "hdi_connection/adapter/src/hdi_connection.cpp", 83bae4d13cSopenharmony_ci "hdi_connection/adapter/src/sensor_event_callback.cpp", 84bae4d13cSopenharmony_ci "hdi_connection/interface/src/sensor_hdi_connection.cpp", 85bae4d13cSopenharmony_ci "src/sensor_data_processer.cpp", 86bae4d13cSopenharmony_ci ] 87bae4d13cSopenharmony_ci 88bae4d13cSopenharmony_ci include_dirs += [ 89bae4d13cSopenharmony_ci "$SUBSYSTEM_DIR/services/hdi_connection/interface/include", 90bae4d13cSopenharmony_ci "$SUBSYSTEM_DIR/services/hdi_connection/adapter/include", 91bae4d13cSopenharmony_ci ] 92bae4d13cSopenharmony_ci 93bae4d13cSopenharmony_ci if (sensor_build_eng) { 94bae4d13cSopenharmony_ci sources += [ 95bae4d13cSopenharmony_ci "hdi_connection/adapter/src/compatible_connection.cpp", 96bae4d13cSopenharmony_ci "hdi_connection/hardware/src/hdi_service_impl.cpp", 97bae4d13cSopenharmony_ci ] 98bae4d13cSopenharmony_ci 99bae4d13cSopenharmony_ci include_dirs += 100bae4d13cSopenharmony_ci [ "$SUBSYSTEM_DIR/services/hdi_connection/hardware/include" ] 101bae4d13cSopenharmony_ci } 102bae4d13cSopenharmony_ci 103bae4d13cSopenharmony_ci external_deps += [ "drivers_interface_sensor:libsensor_proxy_2.0" ] 104bae4d13cSopenharmony_ci } 105bae4d13cSopenharmony_ci 106bae4d13cSopenharmony_ci shlib_type = "sa" 107bae4d13cSopenharmony_ci part_name = "sensor" 108bae4d13cSopenharmony_ci subsystem_name = "sensors" 109bae4d13cSopenharmony_ci} 110bae4d13cSopenharmony_ci 111bae4d13cSopenharmony_ci########################################################################## 112bae4d13cSopenharmony_ciohos_static_library("libsensor_service_static") { 113bae4d13cSopenharmony_ci sources = [ 114bae4d13cSopenharmony_ci "src/client_info.cpp", 115bae4d13cSopenharmony_ci "src/fifo_cache_data.cpp", 116bae4d13cSopenharmony_ci "src/flush_info_record.cpp", 117bae4d13cSopenharmony_ci "src/sensor_dump.cpp", 118bae4d13cSopenharmony_ci "src/sensor_manager.cpp", 119bae4d13cSopenharmony_ci "src/sensor_power_policy.cpp", 120bae4d13cSopenharmony_ci "src/sensor_service.cpp", 121bae4d13cSopenharmony_ci "src/sensor_service_stub.cpp", 122bae4d13cSopenharmony_ci "src/stream_server.cpp", 123bae4d13cSopenharmony_ci ] 124bae4d13cSopenharmony_ci 125bae4d13cSopenharmony_ci include_dirs = [ 126bae4d13cSopenharmony_ci "$SUBSYSTEM_DIR/frameworks/native/include", 127bae4d13cSopenharmony_ci "$SUBSYSTEM_DIR/interfaces/inner_api", 128bae4d13cSopenharmony_ci "$SUBSYSTEM_DIR/services/include", 129bae4d13cSopenharmony_ci "$SUBSYSTEM_DIR/utils/common/include", 130bae4d13cSopenharmony_ci "$SUBSYSTEM_DIR/utils/ipc/include", 131bae4d13cSopenharmony_ci ] 132bae4d13cSopenharmony_ci 133bae4d13cSopenharmony_ci branch_protector_ret = "pac_ret" 134bae4d13cSopenharmony_ci sanitize = { 135bae4d13cSopenharmony_ci cfi = true 136bae4d13cSopenharmony_ci cfi_cross_dso = true 137bae4d13cSopenharmony_ci debug = false 138bae4d13cSopenharmony_ci } 139bae4d13cSopenharmony_ci 140bae4d13cSopenharmony_ci defines = sensor_default_defines 141bae4d13cSopenharmony_ci 142bae4d13cSopenharmony_ci deps = [ 143bae4d13cSopenharmony_ci "$SUBSYSTEM_DIR/utils/common:libsensor_utils", 144bae4d13cSopenharmony_ci "$SUBSYSTEM_DIR/utils/ipc:libsensor_ipc", 145bae4d13cSopenharmony_ci ] 146bae4d13cSopenharmony_ci 147bae4d13cSopenharmony_ci if (sensor_rust_socket_ipc) { 148bae4d13cSopenharmony_ci deps += 149bae4d13cSopenharmony_ci [ "$SUBSYSTEM_DIR/rust/utils/socket_ipc_rust_ffi:sensor_rust_util_ffi" ] 150bae4d13cSopenharmony_ci } 151bae4d13cSopenharmony_ci 152bae4d13cSopenharmony_ci external_deps = [ 153bae4d13cSopenharmony_ci "access_token:libaccesstoken_sdk", 154bae4d13cSopenharmony_ci "access_token:libtokenid_sdk", 155bae4d13cSopenharmony_ci "c_utils:utils", 156bae4d13cSopenharmony_ci "hilog:libhilog", 157bae4d13cSopenharmony_ci "ipc:ipc_single", 158bae4d13cSopenharmony_ci "safwk:system_ability_fwk", 159bae4d13cSopenharmony_ci "samgr:samgr_proxy", 160bae4d13cSopenharmony_ci ] 161bae4d13cSopenharmony_ci 162bae4d13cSopenharmony_ci if (sensor_memmgr_enable) { 163bae4d13cSopenharmony_ci defines += [ "MEMMGR_ENABLE" ] 164bae4d13cSopenharmony_ci external_deps += [ "memmgr:memmgrclient" ] 165bae4d13cSopenharmony_ci } 166bae4d13cSopenharmony_ci 167bae4d13cSopenharmony_ci if (hiviewdfx_hisysevent_enable) { 168bae4d13cSopenharmony_ci external_deps += [ "hisysevent:libhisysevent" ] 169bae4d13cSopenharmony_ci } 170bae4d13cSopenharmony_ci 171bae4d13cSopenharmony_ci if (hiviewdfx_hitrace_enable) { 172bae4d13cSopenharmony_ci external_deps += [ "hitrace:hitrace_meter" ] 173bae4d13cSopenharmony_ci } 174bae4d13cSopenharmony_ci 175bae4d13cSopenharmony_ci if (hdf_drivers_interface_sensor) { 176bae4d13cSopenharmony_ci sources += [ 177bae4d13cSopenharmony_ci "hdi_connection/adapter/src/hdi_connection.cpp", 178bae4d13cSopenharmony_ci "hdi_connection/adapter/src/sensor_event_callback.cpp", 179bae4d13cSopenharmony_ci "hdi_connection/interface/src/sensor_hdi_connection.cpp", 180bae4d13cSopenharmony_ci "src/sensor_data_processer.cpp", 181bae4d13cSopenharmony_ci ] 182bae4d13cSopenharmony_ci 183bae4d13cSopenharmony_ci include_dirs += [ 184bae4d13cSopenharmony_ci "$SUBSYSTEM_DIR/services/hdi_connection/interface/include", 185bae4d13cSopenharmony_ci "$SUBSYSTEM_DIR/services/hdi_connection/adapter/include", 186bae4d13cSopenharmony_ci ] 187bae4d13cSopenharmony_ci 188bae4d13cSopenharmony_ci if (sensor_build_eng) { 189bae4d13cSopenharmony_ci sources += [ 190bae4d13cSopenharmony_ci "hdi_connection/adapter/src/compatible_connection.cpp", 191bae4d13cSopenharmony_ci "hdi_connection/hardware/src/hdi_service_impl.cpp", 192bae4d13cSopenharmony_ci ] 193bae4d13cSopenharmony_ci 194bae4d13cSopenharmony_ci include_dirs += 195bae4d13cSopenharmony_ci [ "$SUBSYSTEM_DIR/services/hdi_connection/hardware/include" ] 196bae4d13cSopenharmony_ci } 197bae4d13cSopenharmony_ci 198bae4d13cSopenharmony_ci external_deps += [ "drivers_interface_sensor:libsensor_proxy_2.0" ] 199bae4d13cSopenharmony_ci } 200bae4d13cSopenharmony_ci 201bae4d13cSopenharmony_ci part_name = "sensor" 202bae4d13cSopenharmony_ci subsystem_name = "sensors" 203bae4d13cSopenharmony_ci} 204bae4d13cSopenharmony_cigroup("sensor_service_target") { 205bae4d13cSopenharmony_ci deps = [ 206bae4d13cSopenharmony_ci ":libsensor_service", 207bae4d13cSopenharmony_ci ":libsensor_service_static", 208bae4d13cSopenharmony_ci ] 209bae4d13cSopenharmony_ci} 210