• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2021 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
14if (!is_linux && !is_mingw && !is_mac) {
15  import("//base/update/updater/updater_default_cfg.gni")
16}
17import("//build/ohos.gni")
18
19SUBSYSTEM_DIR = "//base/update/updater/services/package"
20
21config("package_config") {
22  visibility = [ ":*" ]
23  cflags_cc = [ "-std=c++17" ]
24  include_dirs = [
25    "//base/update/updater/interfaces/kits/include",
26    "//base/update/updater/utils/include",
27    "//base/update/updater/services/include",
28    "//third_party/zlib",
29    "//third_party/openssl/include",
30    "//third_party/lz4/lib",
31    "//base/update/updater/services/include/package",
32    "//base/update/updater/services/include/script",
33    "//base/update/updater/services/include/log",
34    "pkg_algorithm",
35    "pkg_manager",
36    "pkg_package",
37    "pkg_verify",
38    "//third_party/bounds_checking_function/include",
39  ]
40}
41
42ohos_static_library("libupdaterpackage") {
43  sources = [
44    "$SUBSYSTEM_DIR/pkg_algorithm/pkg_algo_deflate.cpp",
45    "$SUBSYSTEM_DIR/pkg_algorithm/pkg_algo_digest.cpp",
46    "$SUBSYSTEM_DIR/pkg_algorithm/pkg_algo_lz4.cpp",
47    "$SUBSYSTEM_DIR/pkg_algorithm/pkg_algo_sign.cpp",
48    "$SUBSYSTEM_DIR/pkg_algorithm/pkg_algorithm.cpp",
49    "$SUBSYSTEM_DIR/pkg_manager/pkg_managerImpl.cpp",
50    "$SUBSYSTEM_DIR/pkg_manager/pkg_stream.cpp",
51    "$SUBSYSTEM_DIR/pkg_manager/pkg_utils.cpp",
52    "$SUBSYSTEM_DIR/pkg_package/packages_info.cpp",
53    "$SUBSYSTEM_DIR/pkg_package/pkg_gzipfile.cpp",
54    "$SUBSYSTEM_DIR/pkg_package/pkg_lz4file.cpp",
55    "$SUBSYSTEM_DIR/pkg_package/pkg_pkgfile.cpp",
56    "$SUBSYSTEM_DIR/pkg_package/pkg_upgradefile.cpp",
57    "$SUBSYSTEM_DIR/pkg_package/pkg_zipfile.cpp",
58    "$SUBSYSTEM_DIR/pkg_verify/cert_verify.cpp",
59    "$SUBSYSTEM_DIR/pkg_verify/openssl_util.cpp",
60    "$SUBSYSTEM_DIR/pkg_verify/pkcs7_signed_data.cpp",
61    "$SUBSYSTEM_DIR/pkg_verify/pkg_verify_util.cpp",
62    "$SUBSYSTEM_DIR/pkg_verify/zip_pkg_parse.cpp",
63  ]
64
65  deps = [
66    "//base/update/updater/services/log:libupdaterlog",
67    "//third_party/bounds_checking_function:libsec_static",
68    "//third_party/openssl:libcrypto_static",
69  ]
70
71  configs = [ ":package_config" ]
72
73  if (is_mingw) {
74    libs = [
75      "setupapi",
76      "psapi",
77      "user32",
78      "advapi32",
79      "iphlpapi",
80      "userenv",
81      "ws2_32",
82    ]
83
84    ldflags = [
85      "-Wl,--whole-archive",
86      "-lpthread",
87      "-Wl,--no-whole-archive",
88    ]
89  }
90}
91