• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2025 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
16config("config_svc") {
17  include_dirs = [
18    "include",
19    "../services/safwk/include",
20  ]
21}
22
23ohos_executable("svc") {
24  sanitize = {
25    cfi = true
26    cfi_cross_dso = true
27    debug = false
28    cfi_no_nvcall = true
29    blocklist = "../cfi_blocklist.txt"
30  }
31  branch_protector_ret = "pac_ret"
32
33  install_enable = true
34  sources = [
35    "src/main.cpp",
36    "src/svc_control.cpp",
37  ]
38
39  configs = [
40    ":config_svc",
41    "../test/resource:coverage_flags",
42  ]
43  configs += [ "//build/config/gcc:symbol_visibility_hidden" ]
44
45  ldflags = [
46    "-rdynamic",
47    "-Wl,-z,max-page-size=4096",
48    "-Wl,-z,separate-code",
49    "-fstack-protector-strong",
50  ]
51
52  if (is_standard_system) {
53    external_deps = [
54      "c_utils:utils",
55      "hilog:libhilog",
56      "ipc:ipc_single",
57      "json:nlohmann_json_static",
58      "samgr:samgr_common",
59      "samgr:samgr_proxy",
60    ]
61  }
62
63  part_name = "safwk"
64  subsystem_name = "systemabilitymgr"
65}
66