# Copyright (c) 2021 Huawei Device Co., Ltd.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
import("../time.gni")
config("utils_config") {
include_dirs = [
"native/include",
"${time_service_path}",
]
cflags = [ "-fvisibility=hidden" ]
cflags_cc = [
"-fvisibility-inlines-hidden",
"-fvisibility=hidden",
"-ffunction-sections",
"-fdata-sections",
"-Os",
]
}
ohos_source_set("time_utils") {
configs = [ ":utils_config" ]
sources = [
"${time_service_path}/time_permission.cpp",
"${time_utils_path}/native/src/time_common.cpp",
"${time_utils_path}/native/src/time_file_utils.cpp",
"${time_utils_path}/native/src/time_xcollie.cpp",
]
deps = []
external_deps = [
"access_token:libaccesstoken_sdk",
"access_token:libtokenid_sdk",
"c_utils:utils",
"hilog:libhilog",
"init:libbegetutil",
"ipc:ipc_single",
"os_account:authorization_innerkits",
]
defines = []
if (time_service_hicollie_able) {
external_deps += [ "hicollie:libhicollie" ]
defines += [ "HICOLLIE_ENABLE" ]
}
branch_protector_ret = "pac_ret"
stack_protector_ret = true
sanitize = {
integer_overflow = true
ubsan = true
boundary_sanitize = true
cfi = true
cfi_cross_dso = true
debug = time_sanitize_debug
}
part_name = "time_service"
subsystem_name = "time"
}