1# Copyright (c) 2020 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/lite/config/component/lite_component.gni")
15import("//build/lite/config/subsystem/aafwk/path.gni")
16
17if (ohos_kernel_type == "liteos_a" || ohos_kernel_type == "linux") {
18  lite_library("dmslite") {
19    target_type = "shared_library"
20
21    cflags = [ "-Wall" ]
22    cflags_cc = cflags
23
24    defines = [
25      "_GNU_SOURCE",
26      "OHOS_APPEXECFWK_BMS_BUNDLEMANAGER",
27    ]
28
29    sources = [
30      "source/dmslite.c",
31      "source/dmslite_famgr.c",
32      "source/dmslite_feature.c",
33      "source/dmslite_msg_handler.c",
34      "source/dmslite_packet.c",
35      "source/dmslite_parser.c",
36      "source/dmslite_permission.c",
37      "source/dmslite_session.c",
38      "source/dmslite_tlv_common.c",
39    ]
40
41    include_dirs = [
42      "include",
43      "interfaces/innerkits",
44      "${aafwk_lite_path}/interfaces/inner_api/abilitymgr_lite",
45      "${aafwk_lite_path}/interfaces/kits/ability_lite",
46      "${aafwk_lite_path}/interfaces/kits/want_lite",
47      "${appexecfwk_lite_path}/interfaces/kits/bundle_lite",
48      "${appexecfwk_lite_path}/interfaces/inner_api/bundlemgr_lite",
49      "//commonlibrary/utils_lite/include",
50      "//foundation/communication/dsoftbus/interfaces/kits/bus_center",
51      "//foundation/communication/dsoftbus/interfaces/kits/common",
52      "//foundation/communication/dsoftbus/interfaces/kits/transport",
53      "//foundation/systemabilitymgr/samgr_lite/interfaces/innerkits",
54      "//foundation/systemabilitymgr/samgr_lite/interfaces/kits/samgr",
55      "//foundation/systemabilitymgr/samgr_lite/interfaces/kits/registry",
56      "//third_party/bounds_checking_function/include",
57      "//third_party/cJSON",
58    ]
59
60    deps = []
61
62    public_deps = [
63      "${aafwk_lite_path}/frameworks/abilitymgr_lite:aafwk_abilityManager_lite",
64      "//base/hiviewdfx/hilog_lite/frameworks/featured:hilog_shared",
65      "//foundation/communication/dsoftbus/sdk:softbus_client",
66      "//foundation/systemabilitymgr/samgr_lite/samgr:samgr",
67      "//third_party/bounds_checking_function:libsec_shared",
68    ]
69  }
70
71  lite_component("dtbschedmgr") {
72    features = [ ":dmslite" ]
73  }
74
75  generate_notice_file("dtbschedmgr_notice_file") {
76    module_name = "dtbschedmgr"
77    module_source_dir_list = [
78      "//third_party/bounds_checking_function",
79      "//third_party/cJSON",
80    ]
81  }
82}
83