1# Copyright (C) 2022-2024 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/ohos.gni") 15 16################################################################ 17# C, Main source file here. 18################################################################ 19config("datatransmitmgr_config") { 20 include_dirs = [ "include" ] 21} 22 23declare_args() { 24 dataclassification_feature_enabled = true 25 if (defined(global_parts_info) && 26 !defined(global_parts_info.commonlibrary_c_utils)) { 27 dataclassification_feature_enabled = false 28 } 29} 30 31ohos_shared_library("data_transit_mgr") { 32 subsystem_name = "security" 33 part_name = "dataclassification" 34 35 public_configs = [ ":datatransmitmgr_config" ] 36 37 include_dirs = [ "include" ] 38 39 sources = [ 40 "../../../frameworks/datatransmitmgr/dev_slinfo_adpt.c", 41 "../../../frameworks/datatransmitmgr/dev_slinfo_list.c", 42 "../../../frameworks/datatransmitmgr/dev_slinfo_mgr.c", 43 ] 44 45 if (os_level == "standard") { 46 sanitize = { 47 cfi = true 48 cfi_cross_dso = true 49 debug = false 50 integer_overflow = true 51 ubsan = true 52 boundary_sanitize = true 53 stack_protector_ret = true 54 } 55 } 56 if (dataclassification_feature_enabled) { 57 external_deps = [ "c_utils:utils" ] 58 } 59 external_deps += [ 60 "device_security_level:dslm_sdk", 61 "hilog:libhilog", 62 ] 63 64 defines = [ "HILOG_ENABLE" ] 65 66 cflags = [ 67 "-DHILOG_ENABLE", 68 "-Wall", 69 ] 70} 71