1# Copyright (c) 2023 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("//arkcompiler/runtime_core/ark_config.gni")
15
16arkverifier_sources = [
17  "main.cpp",
18  "verifier.cpp",
19  "verify.cpp",
20]
21
22config("arkverifier_public_config") {
23  include_dirs = [ "$ark_root/verifier" ]
24}
25
26arkverifier_configs = [
27  "$ark_root:ark_config",
28  "$ark_root/libpandafile:arkfile_public_config",
29  ":arkverifier_public_config",
30]
31
32ohos_executable("ark_verifier") {
33  sources = arkverifier_sources
34
35  deps = [ "$ark_root/libpandafile:libarkfile_static_verifier" ]
36  external_deps = [
37    "zlib:libz",
38    sdk_libc_secshared_dep,
39  ]
40
41  if (enable_hilog) {
42    external_deps += [ "hilog:libhilog" ]
43  }
44
45  configs = arkverifier_configs
46
47  public_configs = [ ":arkverifier_public_config" ]
48
49  install_enable = true
50  part_name = "runtime_core"
51  subsystem_name = "arkcompiler"
52}
53
54libarkverifier_sources = [
55  "verifier.cpp",
56  "verify.cpp",
57]
58
59ohos_shared_library("libarkverifier") {
60  if (!ark_standalone_build) {
61    branch_protector_ret = "pac_ret"
62  }
63  sources = libarkverifier_sources
64
65  deps = [ "$ark_root/libpandafile:libarkfile_static_verifier" ]
66  external_deps = [
67    "zlib:libz",
68    sdk_libc_secshared_dep,
69  ]
70  if (enable_hilog) {
71    external_deps += [ "hilog:libhilog" ]
72  }
73
74  configs = arkverifier_configs
75
76  public_configs = [ ":arkverifier_public_config" ]
77
78  if (!is_standard_system) {
79    relative_install_dir = "ark"
80  }
81
82  output_extension = "so"
83
84  install_enable = true
85  part_name = "runtime_core"
86  subsystem_name = "arkcompiler"
87}
88