1020a203aSopenharmony_ci# Copyright (c) 2021 Huawei Device Co., Ltd.
2020a203aSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
3020a203aSopenharmony_ci# you may not use this file except in compliance with the License.
4020a203aSopenharmony_ci# You may obtain a copy of the License at
5020a203aSopenharmony_ci#
6020a203aSopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
7020a203aSopenharmony_ci#
8020a203aSopenharmony_ci# Unless required by applicable law or agreed to in writing, software
9020a203aSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
10020a203aSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11020a203aSopenharmony_ci# See the License for the specific language governing permissions and
12020a203aSopenharmony_ci# limitations under the License.
13020a203aSopenharmony_ciimport("//base/hiviewdfx/hiview/hiview.gni")
14020a203aSopenharmony_ciimport("//build/ohos.gni")
15020a203aSopenharmony_ci
16020a203aSopenharmony_ciconfig("faultlogger_service_ohos_private_config") {
17020a203aSopenharmony_ci  include_dirs = [ "." ]
18020a203aSopenharmony_ci}
19020a203aSopenharmony_ci
20020a203aSopenharmony_ciconfig("faultlogger_service_impl_config") {
21020a203aSopenharmony_ci  include_dirs = [ "include" ]
22020a203aSopenharmony_ci}
23020a203aSopenharmony_ci
24020a203aSopenharmony_ciohos_source_set("faultlogger_service_ohos_common") {
25020a203aSopenharmony_ci  part_name = "hiview"
26020a203aSopenharmony_ci  sources = [
27020a203aSopenharmony_ci    "src/faultlog_info_ohos.cpp",
28020a203aSopenharmony_ci    "src/faultlog_query_result_proxy.cpp",
29020a203aSopenharmony_ci    "src/faultlog_query_result_stub.cpp",
30020a203aSopenharmony_ci    "src/faultlogger_service_proxy.cpp",
31020a203aSopenharmony_ci    "src/faultlogger_service_stub.cpp",
32020a203aSopenharmony_ci  ]
33020a203aSopenharmony_ci
34020a203aSopenharmony_ci  configs = [ ":faultlogger_service_ohos_private_config" ]
35020a203aSopenharmony_ci
36020a203aSopenharmony_ci  public_configs = [ ":faultlogger_service_impl_config" ]
37020a203aSopenharmony_ci
38020a203aSopenharmony_ci  deps = [ "$hiview_plugin/faultlogger/common:faultlogger_common" ]
39020a203aSopenharmony_ci
40020a203aSopenharmony_ci  external_deps = [
41020a203aSopenharmony_ci    "c_utils:utils",
42020a203aSopenharmony_ci    "hilog:libhilog",
43020a203aSopenharmony_ci    "ipc:ipc_single",
44020a203aSopenharmony_ci  ]
45020a203aSopenharmony_ci}
46020a203aSopenharmony_ci
47020a203aSopenharmony_ciohos_source_set("faultlogger_service_ohos_common_with_cfi") {
48020a203aSopenharmony_ci  branch_protector_ret = "pac_ret"
49020a203aSopenharmony_ci  sanitize = {
50020a203aSopenharmony_ci    cfi = true
51020a203aSopenharmony_ci    cfi_cross_dso = true
52020a203aSopenharmony_ci    cfi_vcall_icall_only = true
53020a203aSopenharmony_ci    debug = false
54020a203aSopenharmony_ci  }
55020a203aSopenharmony_ci  part_name = "hiview"
56020a203aSopenharmony_ci  sources = [
57020a203aSopenharmony_ci    "src/faultlog_info_ohos.cpp",
58020a203aSopenharmony_ci    "src/faultlog_query_result_proxy.cpp",
59020a203aSopenharmony_ci    "src/faultlog_query_result_stub.cpp",
60020a203aSopenharmony_ci    "src/faultlogger_service_proxy.cpp",
61020a203aSopenharmony_ci    "src/faultlogger_service_stub.cpp",
62020a203aSopenharmony_ci  ]
63020a203aSopenharmony_ci
64020a203aSopenharmony_ci  configs = [ ":faultlogger_service_ohos_private_config" ]
65020a203aSopenharmony_ci
66020a203aSopenharmony_ci  public_configs = [ ":faultlogger_service_impl_config" ]
67020a203aSopenharmony_ci
68020a203aSopenharmony_ci  deps = [ "$hiview_plugin/faultlogger/common:faultlogger_common_with_cfi" ]
69020a203aSopenharmony_ci
70020a203aSopenharmony_ci  external_deps = [
71020a203aSopenharmony_ci    "c_utils:utils",
72020a203aSopenharmony_ci    "hilog:libhilog",
73020a203aSopenharmony_ci    "ipc:ipc_single",
74020a203aSopenharmony_ci  ]
75020a203aSopenharmony_ci}
76020a203aSopenharmony_ci
77020a203aSopenharmony_ciohos_source_set("faultlogger_service_impl") {
78020a203aSopenharmony_ci  part_name = "hiview"
79020a203aSopenharmony_ci  include_dirs = [ "$hiview_plugin/faultlogger/service" ]
80020a203aSopenharmony_ci
81020a203aSopenharmony_ci  sources = [
82020a203aSopenharmony_ci    "faultlog_query_result_ohos.cpp",
83020a203aSopenharmony_ci    "faultlogger_service_ohos.cpp",
84020a203aSopenharmony_ci  ]
85020a203aSopenharmony_ci
86020a203aSopenharmony_ci  configs = [ ":faultlogger_service_ohos_private_config" ]
87020a203aSopenharmony_ci
88020a203aSopenharmony_ci  public_configs = [ ":faultlogger_service_impl_config" ]
89020a203aSopenharmony_ci
90020a203aSopenharmony_ci  deps = [
91020a203aSopenharmony_ci    "$hiview_base:hiviewbase",
92020a203aSopenharmony_ci    "$hiview_plugin/faultlogger/common:faultlogger_common",
93020a203aSopenharmony_ci  ]
94020a203aSopenharmony_ci
95020a203aSopenharmony_ci  external_deps = [
96020a203aSopenharmony_ci    "c_utils:utils",
97020a203aSopenharmony_ci    "hilog:libhilog",
98020a203aSopenharmony_ci    "ipc:ipc_single",
99020a203aSopenharmony_ci    "jsoncpp:jsoncpp",
100020a203aSopenharmony_ci    "safwk:system_ability_fwk",
101020a203aSopenharmony_ci    "samgr:samgr_proxy",
102020a203aSopenharmony_ci  ]
103020a203aSopenharmony_ci}
104020a203aSopenharmony_ci
105020a203aSopenharmony_ciohos_source_set("faultlogger_service_impl_with_cfi") {
106020a203aSopenharmony_ci  sanitize = {
107020a203aSopenharmony_ci    cfi = true
108020a203aSopenharmony_ci    cfi_cross_dso = true
109020a203aSopenharmony_ci    cfi_vcall_icall_only = true
110020a203aSopenharmony_ci    debug = false
111020a203aSopenharmony_ci  }
112020a203aSopenharmony_ci  part_name = "hiview"
113020a203aSopenharmony_ci  include_dirs = [ "$hiview_plugin/faultlogger/service" ]
114020a203aSopenharmony_ci
115020a203aSopenharmony_ci  sources = [
116020a203aSopenharmony_ci    "faultlog_query_result_ohos.cpp",
117020a203aSopenharmony_ci    "faultlogger_service_ohos.cpp",
118020a203aSopenharmony_ci  ]
119020a203aSopenharmony_ci
120020a203aSopenharmony_ci  configs = [ ":faultlogger_service_ohos_private_config" ]
121020a203aSopenharmony_ci
122020a203aSopenharmony_ci  public_configs = [ ":faultlogger_service_impl_config" ]
123020a203aSopenharmony_ci
124020a203aSopenharmony_ci  deps = [
125020a203aSopenharmony_ci    "$hiview_base:hiviewbase",
126020a203aSopenharmony_ci    "$hiview_plugin/faultlogger/common:faultlogger_common_with_cfi",
127020a203aSopenharmony_ci  ]
128020a203aSopenharmony_ci
129020a203aSopenharmony_ci  external_deps = [
130020a203aSopenharmony_ci    "c_utils:utils",
131020a203aSopenharmony_ci    "hilog:libhilog",
132020a203aSopenharmony_ci    "ipc:ipc_single",
133020a203aSopenharmony_ci    "jsoncpp:jsoncpp",
134020a203aSopenharmony_ci    "safwk:system_ability_fwk",
135020a203aSopenharmony_ci    "samgr:samgr_proxy",
136020a203aSopenharmony_ci  ]
137020a203aSopenharmony_ci}
138