17310c0d0Sopenharmony_ci# Copyright (c) 2023 Huawei Device Co., Ltd.
27310c0d0Sopenharmony_ci#
37310c0d0Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
47310c0d0Sopenharmony_ci# you may not use this file except in compliance with the License.
57310c0d0Sopenharmony_ci# You may obtain a copy of the License at
67310c0d0Sopenharmony_ci#
77310c0d0Sopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
87310c0d0Sopenharmony_ci#
97310c0d0Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software
107310c0d0Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
117310c0d0Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
127310c0d0Sopenharmony_ci# See the License for the specific language governing permissions and
137310c0d0Sopenharmony_ci# limitations under the License.
147310c0d0Sopenharmony_ci
157310c0d0Sopenharmony_ciimport("//build/ohos.gni")
167310c0d0Sopenharmony_ci
177310c0d0Sopenharmony_ci#group("libhvb") {
187310c0d0Sopenharmony_ci#   deps = [ ":libhvb_static" ]
197310c0d0Sopenharmony_ci#}
207310c0d0Sopenharmony_ci# For init only
217310c0d0Sopenharmony_ciconfig("libhvb_exported_configs") {
227310c0d0Sopenharmony_ci  visibility = [ ":*" ]
237310c0d0Sopenharmony_ci  include_dirs = [ "include" ]
247310c0d0Sopenharmony_ci  if (target_cpu == "arm64") {
257310c0d0Sopenharmony_ci    defines = [ "__LP64__" ]
267310c0d0Sopenharmony_ci  } else {
277310c0d0Sopenharmony_ci    defines = [ "__LP32__" ]
287310c0d0Sopenharmony_ci  }
297310c0d0Sopenharmony_ci}
307310c0d0Sopenharmony_ci
317310c0d0Sopenharmony_ciohos_static_library("libhvb_static") {
327310c0d0Sopenharmony_ci  sources = [
337310c0d0Sopenharmony_ci    "src/auth/hvb.c",
347310c0d0Sopenharmony_ci    "src/cert/hvb_cert.c",
357310c0d0Sopenharmony_ci    "src/cmdline/hvb_cmdline.c",
367310c0d0Sopenharmony_ci    "src/crypto/hvb_hash_sha256.c",
377310c0d0Sopenharmony_ci    "src/crypto/hvb_rsa.c",
387310c0d0Sopenharmony_ci    "src/crypto/hvb_rsa_verify.c",
397310c0d0Sopenharmony_ci    "src/deps/hvb_sysdeps.c",
407310c0d0Sopenharmony_ci    "src/footer/hvb_footer.c",
417310c0d0Sopenharmony_ci    "src/rvt/hvb_rvt.c",
427310c0d0Sopenharmony_ci    "src/utils/hvb_util.c",
437310c0d0Sopenharmony_ci  ]
447310c0d0Sopenharmony_ci  include_dirs = [
457310c0d0Sopenharmony_ci    "incldue",
467310c0d0Sopenharmony_ci    "//third_party/bounds_checking_function/include",
477310c0d0Sopenharmony_ci  ]
487310c0d0Sopenharmony_ci  public_configs = [ ":libhvb_exported_configs" ]
497310c0d0Sopenharmony_ci  part_name = "hvb"
507310c0d0Sopenharmony_ci  subsystem_name = "startup"
517310c0d0Sopenharmony_ci}
52