1cf69771bSopenharmony_ci# Copyright (c) 2021 Huawei Device Co., Ltd.
2cf69771bSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
3cf69771bSopenharmony_ci# you may not use this file except in compliance with the License.
4cf69771bSopenharmony_ci# You may obtain a copy of the License at
5cf69771bSopenharmony_ci#
6cf69771bSopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
7cf69771bSopenharmony_ci#
8cf69771bSopenharmony_ci# Unless required by applicable law or agreed to in writing, software
9cf69771bSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
10cf69771bSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11cf69771bSopenharmony_ci# See the License for the specific language governing permissions and
12cf69771bSopenharmony_ci# limitations under the License.
13cf69771bSopenharmony_ci
14cf69771bSopenharmony_ciimport("../time.gni")
15cf69771bSopenharmony_ci
16cf69771bSopenharmony_ciconfig("utils_config") {
17cf69771bSopenharmony_ci  include_dirs = [
18cf69771bSopenharmony_ci    "native/include",
19cf69771bSopenharmony_ci    "${time_service_path}",
20cf69771bSopenharmony_ci  ]
21cf69771bSopenharmony_ci  cflags = [ "-fvisibility=hidden" ]
22cf69771bSopenharmony_ci  cflags_cc = [ "-fvisibility-inlines-hidden" ]
23cf69771bSopenharmony_ci}
24cf69771bSopenharmony_ci
25cf69771bSopenharmony_ciohos_source_set("time_utils") {
26cf69771bSopenharmony_ci  configs = [ ":utils_config" ]
27cf69771bSopenharmony_ci
28cf69771bSopenharmony_ci  sources = [
29cf69771bSopenharmony_ci    "${time_service_path}/time_permission.cpp",
30cf69771bSopenharmony_ci    "${time_utils_path}/native/src/time_file_utils.cpp",
31cf69771bSopenharmony_ci  ]
32cf69771bSopenharmony_ci
33cf69771bSopenharmony_ci  deps = []
34cf69771bSopenharmony_ci
35cf69771bSopenharmony_ci  external_deps = [
36cf69771bSopenharmony_ci    "access_token:libaccesstoken_sdk",
37cf69771bSopenharmony_ci    "access_token:libtokenid_sdk",
38cf69771bSopenharmony_ci    "c_utils:utils",
39cf69771bSopenharmony_ci    "hilog:libhilog",
40cf69771bSopenharmony_ci    "init:libbegetutil",
41cf69771bSopenharmony_ci    "ipc:ipc_single",
42cf69771bSopenharmony_ci  ]
43cf69771bSopenharmony_ci  branch_protector_ret = "pac_ret"
44cf69771bSopenharmony_ci  sanitize = {
45cf69771bSopenharmony_ci    integer_overflow = true
46cf69771bSopenharmony_ci    ubsan = true
47cf69771bSopenharmony_ci    boundary_sanitize = true
48cf69771bSopenharmony_ci    cfi = true
49cf69771bSopenharmony_ci    cfi_cross_dso = true
50cf69771bSopenharmony_ci    debug = time_sanitize_debug
51cf69771bSopenharmony_ci  }
52cf69771bSopenharmony_ci  part_name = "time_service"
53cf69771bSopenharmony_ci  subsystem_name = "time"
54cf69771bSopenharmony_ci}
55