1# Copyright (c) 2024 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("../hapsigntool_cpp/cmd/signature_tools_cmd.gni") 15import("../hapsigntool_cpp/codesigning/signature_tools_codesigning.gni") 16import("../hapsigntool_cpp/common/signature_tools_common.gni") 17import("../hapsigntool_cpp/hap/signature_tools_hap.gni") 18import("../hapsigntool_cpp/profile/signature_tools_profile.gni") 19import("../hapsigntool_cpp/signature_tools.gni") 20import("../hapsigntool_cpp/utils/signature_tools_utils.gni") 21import("../hapsigntool_cpp/zip/signature_tools_zip.gni") 22 23import("//build/ohos.gni") 24 25config("service_include") { 26 visibility = [ "*" ] 27 28 include_dirs = [ 29 "//third_party/openssl/include", 30 "//third_party/openssl/crypto/pkcs12", 31 "${signature_tools_api}/include", 32 "${signature_tools_signer}/include", 33 ] 34 35 include_dirs += signature_tools_utils_include 36 include_dirs += signature_tools_zip_include 37 include_dirs += signature_tools_codesigning_include 38 include_dirs += signature_tools_common_include 39 include_dirs += signature_tools_hap_include 40 include_dirs += signature_tools_profile_include 41 include_dirs += signature_tools_cmd_include 42 43 defines = [ 44 "HI_LOG_ENABLE", 45 "SIGNATURE_LOG_TAG=\"Signature_Tools\"", 46 "LOG_DOMAIN=0xD004100", 47 ] 48 49 cflags = [ "--coverage" ] 50 51 cflags_cc = [ 52 "-std=c++17", 53 "--coverage", 54 ] 55 56 ldflags = [ 57 "-fPIC", 58 "-Wl,-E", 59 "--coverage", 60 ] 61} 62 63ohos_source_set("service_target") { 64 sources_obj = [ 65 "${signature_tools_api}/src/sign_tool_service_impl.cpp", 66 "${signature_tools_api}/src/localization_adapter.cpp", 67 "${signature_tools_api}/src/cert_tools.cpp", 68 "${signature_tools_signer}/src/signer_factory.cpp", 69 "${signature_tools_signer}/src/local_signer.cpp", 70 ] 71 72 sources_obj += signature_tools_utils_src 73 sources_obj += signature_tools_zip_src 74 sources_obj += signature_tools_codesigning_src 75 sources_obj += signature_tools_common_src 76 sources_obj += signature_tools_hap_src 77 sources_obj += signature_tools_profile_src 78 sources_obj += signature_tools_cmd_src 79 80 sources = sources_obj 81 82 configs = [ ":service_include" ] 83 84 remove_configs = [ "//build/config/compiler:no_exceptions" ] 85 86 public_deps = [ 87 "//third_party/bzip2:libbz2", 88 "//third_party/openssl:libcrypto_shared", 89 "//third_party/openssl:libssl_shared", 90 "//third_party/zlib:shared_libz", 91 ] 92 93 public_external_deps = [ 94 "c_utils:utils", 95 "hilog:libhilog", 96 "json:nlohmann_json_static", 97 ] 98 99 part_name = "hapsigner" 100 subsystem_name = "developtools" 101} 102