1f5921b11Sopenharmony_ci# Copyright (c) 2020-2022 Huawei Device Co., Ltd.
2f5921b11Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
3f5921b11Sopenharmony_ci# you may not use this file except in compliance with the License.
4f5921b11Sopenharmony_ci# You may obtain a copy of the License at
5f5921b11Sopenharmony_ci#
6f5921b11Sopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
7f5921b11Sopenharmony_ci#
8f5921b11Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software
9f5921b11Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
10f5921b11Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11f5921b11Sopenharmony_ci# See the License for the specific language governing permissions and
12f5921b11Sopenharmony_ci# limitations under the License.
13f5921b11Sopenharmony_ci
14f5921b11Sopenharmony_ciimport("//build/lite/config/component/lite_component.gni")
15f5921b11Sopenharmony_ciimport("//build/ohos.gni")
16f5921b11Sopenharmony_ciimport("../../build/config.gni")
17f5921b11Sopenharmony_ci
18f5921b11Sopenharmony_ciif (os_level != "mini") {
19f5921b11Sopenharmony_ci  lite_library("pms_target") {
20f5921b11Sopenharmony_ci    target_type = "shared_library"
21f5921b11Sopenharmony_ci    sources = [
22f5921b11Sopenharmony_ci      "src/perm_operate.c",
23f5921b11Sopenharmony_ci      "src/pms_impl.c",
24f5921b11Sopenharmony_ci      "src/pms_inner.c",
25f5921b11Sopenharmony_ci      "src/pms_server.c",
26f5921b11Sopenharmony_ci      "src/pms_server_internal.c",
27f5921b11Sopenharmony_ci    ]
28f5921b11Sopenharmony_ci
29f5921b11Sopenharmony_ci    include_dirs = [
30f5921b11Sopenharmony_ci      "../../interfaces/kits",
31f5921b11Sopenharmony_ci      "include",
32f5921b11Sopenharmony_ci      "include/hals",
33f5921b11Sopenharmony_ci      "../pms_base/include",
34f5921b11Sopenharmony_ci    ]
35f5921b11Sopenharmony_ci
36f5921b11Sopenharmony_ci    deps = [
37f5921b11Sopenharmony_ci      "${ipc_path}/interfaces/innerkits/c/ipc:ipc_single",
38f5921b11Sopenharmony_ci      "${ohos_product_adapter_dir}/security/permission_lite:hal_pms",
39f5921b11Sopenharmony_ci      "${samgr_lite_path}/samgr:samgr",
40f5921b11Sopenharmony_ci      "../pms_base:pms_base",
41f5921b11Sopenharmony_ci      "//build/lite/config/component/cJSON:cjson_shared",
42f5921b11Sopenharmony_ci      "//third_party/bounds_checking_function:libsec_shared",
43f5921b11Sopenharmony_ci    ]
44f5921b11Sopenharmony_ci  }
45f5921b11Sopenharmony_ci} else {
46f5921b11Sopenharmony_ci  ohos_static_library("pms_target_static") {
47f5921b11Sopenharmony_ci    subsystem_name = "permission_lite"
48f5921b11Sopenharmony_ci    part_name = "permission_lite"
49f5921b11Sopenharmony_ci    sources = [
50f5921b11Sopenharmony_ci      "src/perm_operate.c",
51f5921b11Sopenharmony_ci      "src/pms_impl.c",
52f5921b11Sopenharmony_ci    ]
53f5921b11Sopenharmony_ci
54f5921b11Sopenharmony_ci    include_dirs = [
55f5921b11Sopenharmony_ci      "../../interfaces/kits",
56f5921b11Sopenharmony_ci      "include",
57f5921b11Sopenharmony_ci      "include/hals",
58f5921b11Sopenharmony_ci      "//third_party/cJSON",
59f5921b11Sopenharmony_ci      "${hilog_lite_path}/interfaces/native/kits/hilog_lite",
60f5921b11Sopenharmony_ci    ]
61f5921b11Sopenharmony_ci
62f5921b11Sopenharmony_ci    deps = [
63f5921b11Sopenharmony_ci      "${permission_lite_pms_hal_path}:hal_pms_static",
64f5921b11Sopenharmony_ci      "//build/lite/config/component/cJSON:cjson_static",
65f5921b11Sopenharmony_ci    ]
66f5921b11Sopenharmony_ci  }
67f5921b11Sopenharmony_ci}
68