18e920a95Sopenharmony_ci# Copyright (c) 2023-2024 Huawei Device Co., Ltd.
28e920a95Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
38e920a95Sopenharmony_ci# you may not use this file except in compliance with the License.
48e920a95Sopenharmony_ci# You may obtain a copy of the License at
58e920a95Sopenharmony_ci#
68e920a95Sopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
78e920a95Sopenharmony_ci#
88e920a95Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software
98e920a95Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
108e920a95Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
118e920a95Sopenharmony_ci# See the License for the specific language governing permissions and
128e920a95Sopenharmony_ci# limitations under the License.
138e920a95Sopenharmony_ci
148e920a95Sopenharmony_ciimport("//build/ohos.gni")
158e920a95Sopenharmony_ciimport("../code_signature.gni")
168e920a95Sopenharmony_ci
178e920a95Sopenharmony_ciohos_source_set("fsverity_sign_src_set") {
188e920a95Sopenharmony_ci  sanitize = {
198e920a95Sopenharmony_ci    cfi = true
208e920a95Sopenharmony_ci    cfi_cross_dso = true
218e920a95Sopenharmony_ci    debug = false
228e920a95Sopenharmony_ci  }
238e920a95Sopenharmony_ci  branch_protector_ret = "pac_ret"
248e920a95Sopenharmony_ci  sources = [
258e920a95Sopenharmony_ci    "src/fsverity_utils_helper.cpp",
268e920a95Sopenharmony_ci    "src/openssl_utils.cpp",
278e920a95Sopenharmony_ci    "src/pkcs7_data.cpp",
288e920a95Sopenharmony_ci    "src/pkcs7_generator.cpp",
298e920a95Sopenharmony_ci    "src/signer_info.cpp",
308e920a95Sopenharmony_ci  ]
318e920a95Sopenharmony_ci  include_dirs = [ "include" ]
328e920a95Sopenharmony_ci  public_configs = [ "${code_signature_root_dir}:common_public_config" ]
338e920a95Sopenharmony_ci
348e920a95Sopenharmony_ci  external_deps = [
358e920a95Sopenharmony_ci    "bounds_checking_function:libsec_shared",
368e920a95Sopenharmony_ci    "fsverity-utils:libfsverity_utils",
378e920a95Sopenharmony_ci    "hilog:libhilog",
388e920a95Sopenharmony_ci    "openssl:libcrypto_shared",
398e920a95Sopenharmony_ci  ]
408e920a95Sopenharmony_ci  part_name = "code_signature"
418e920a95Sopenharmony_ci  subsystem_name = "security"
428e920a95Sopenharmony_ci}
43