1060ff233Sopenharmony_ci# 2060ff233Sopenharmony_ci# Copyright (c) 2021 Huawei Device Co., Ltd. 3060ff233Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 4060ff233Sopenharmony_ci# you may not use this file except in compliance with the License. 5060ff233Sopenharmony_ci# You may obtain a copy of the License at 6060ff233Sopenharmony_ci# 7060ff233Sopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 8060ff233Sopenharmony_ci# 9060ff233Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software 10060ff233Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 11060ff233Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12060ff233Sopenharmony_ci# See the License for the specific language governing permissions and 13060ff233Sopenharmony_ci# limitations under the License. 14060ff233Sopenharmony_ci# 15060ff233Sopenharmony_ci 16060ff233Sopenharmony_ciimport("//build/ohos.gni") 17060ff233Sopenharmony_cilibrary = "//third_party/mbedtls/library" 18060ff233Sopenharmony_ci 19060ff233Sopenharmony_cimbedtls_sources = [] 20060ff233Sopenharmony_cimbedtls_sources += [ 21060ff233Sopenharmony_ci "$library/aes.c", 22060ff233Sopenharmony_ci "$library/aesni.c", 23060ff233Sopenharmony_ci "$library/arc4.c", 24060ff233Sopenharmony_ci "$library/aria.c", 25060ff233Sopenharmony_ci "$library/asn1parse.c", 26060ff233Sopenharmony_ci "$library/asn1write.c", 27060ff233Sopenharmony_ci "$library/base64.c", 28060ff233Sopenharmony_ci "$library/bignum.c", 29060ff233Sopenharmony_ci "$library/blowfish.c", 30060ff233Sopenharmony_ci "$library/camellia.c", 31060ff233Sopenharmony_ci "$library/ccm.c", 32060ff233Sopenharmony_ci "$library/chacha20.c", 33060ff233Sopenharmony_ci "$library/chachapoly.c", 34060ff233Sopenharmony_ci "$library/cipher.c", 35060ff233Sopenharmony_ci "$library/cipher_wrap.c", 36060ff233Sopenharmony_ci "$library/cmac.c", 37060ff233Sopenharmony_ci "$library/ctr_drbg.c", 38060ff233Sopenharmony_ci "$library/des.c", 39060ff233Sopenharmony_ci "$library/dhm.c", 40060ff233Sopenharmony_ci "$library/ecdh.c", 41060ff233Sopenharmony_ci "$library/ecdsa.c", 42060ff233Sopenharmony_ci "$library/ecjpake.c", 43060ff233Sopenharmony_ci "$library/ecp.c", 44060ff233Sopenharmony_ci "$library/ecp_curves.c", 45060ff233Sopenharmony_ci "$library/entropy.c", 46060ff233Sopenharmony_ci "$library/entropy_poll.c", 47060ff233Sopenharmony_ci "$library/error.c", 48060ff233Sopenharmony_ci "$library/gcm.c", 49060ff233Sopenharmony_ci "$library/havege.c", 50060ff233Sopenharmony_ci "$library/hkdf.c", 51060ff233Sopenharmony_ci "$library/hmac_drbg.c", 52060ff233Sopenharmony_ci "$library/md.c", 53060ff233Sopenharmony_ci "$library/md2.c", 54060ff233Sopenharmony_ci "$library/md4.c", 55060ff233Sopenharmony_ci "$library/md5.c", 56060ff233Sopenharmony_ci "$library/md_wrap.c", 57060ff233Sopenharmony_ci "$library/memory_buffer_alloc.c", 58060ff233Sopenharmony_ci "$library/net_sockets.c", 59060ff233Sopenharmony_ci "$library/nist_kw.c", 60060ff233Sopenharmony_ci "$library/oid.c", 61060ff233Sopenharmony_ci "$library/padlock.c", 62060ff233Sopenharmony_ci "$library/pem.c", 63060ff233Sopenharmony_ci "$library/pk.c", 64060ff233Sopenharmony_ci "$library/pk_wrap.c", 65060ff233Sopenharmony_ci "$library/pkcs12.c", 66060ff233Sopenharmony_ci "$library/pkcs5.c", 67060ff233Sopenharmony_ci "$library/pkparse.c", 68060ff233Sopenharmony_ci "$library/pkwrite.c", 69060ff233Sopenharmony_ci "$library/platform.c", 70060ff233Sopenharmony_ci "$library/platform_util.c", 71060ff233Sopenharmony_ci "$library/poly1305.c", 72060ff233Sopenharmony_ci "$library/ripemd160.c", 73060ff233Sopenharmony_ci "$library/rsa.c", 74060ff233Sopenharmony_ci "$library/rsa_internal.c", 75060ff233Sopenharmony_ci "$library/sha1.c", 76060ff233Sopenharmony_ci "$library/sha256.c", 77060ff233Sopenharmony_ci "$library/sha512.c", 78060ff233Sopenharmony_ci "$library/ssl_ciphersuites.c", 79060ff233Sopenharmony_ci "$library/ssl_cli.c", 80060ff233Sopenharmony_ci "$library/ssl_tls.c", 81060ff233Sopenharmony_ci "$library/threading.c", 82060ff233Sopenharmony_ci "$library/timing.c", 83060ff233Sopenharmony_ci "$library/version.c", 84060ff233Sopenharmony_ci "$library/version_features.c", 85060ff233Sopenharmony_ci "$library/x509.c", 86060ff233Sopenharmony_ci "$library/x509_crl.c", 87060ff233Sopenharmony_ci "$library/x509_crt.c", 88060ff233Sopenharmony_ci "$library/xtea.c", 89060ff233Sopenharmony_ci] 90060ff233Sopenharmony_ci 91060ff233Sopenharmony_ciconfig("mbedtls_config") { 92060ff233Sopenharmony_ci include_dirs = [ "//third_party/mbedtls/include" ] 93060ff233Sopenharmony_ci} 94060ff233Sopenharmony_ci 95060ff233Sopenharmony_ciohos_shared_library("mbedtls_shared") { 96060ff233Sopenharmony_ci sanitize = { 97060ff233Sopenharmony_ci ubsan = true 98060ff233Sopenharmony_ci integer_overflow = true 99060ff233Sopenharmony_ci boundary_sanitize = true 100060ff233Sopenharmony_ci cfi = true 101060ff233Sopenharmony_ci cfi_cross_dso = true 102060ff233Sopenharmony_ci debug = false 103060ff233Sopenharmony_ci } 104060ff233Sopenharmony_ci branch_protector_ret = "pac_ret" 105060ff233Sopenharmony_ci 106060ff233Sopenharmony_ci sources = mbedtls_sources 107060ff233Sopenharmony_ci output_name = "mbedtls" 108060ff233Sopenharmony_ci public_configs = [ ":mbedtls_config" ] 109060ff233Sopenharmony_ci 110060ff233Sopenharmony_ci part_name = "dsoftbus" 111060ff233Sopenharmony_ci subsystem_name = "communication" 112060ff233Sopenharmony_ci} 113060ff233Sopenharmony_ci 114060ff233Sopenharmony_cistatic_library("mbedtls_static") { 115060ff233Sopenharmony_ci sources = mbedtls_sources 116060ff233Sopenharmony_ci output_name = "mbedtls" 117060ff233Sopenharmony_ci public_configs = [ ":mbedtls_config" ] 118060ff233Sopenharmony_ci} 119060ff233Sopenharmony_ci 120060ff233Sopenharmony_cigroup("mbedtls") { 121060ff233Sopenharmony_ci deps = [ ":mbedtls_shared" ] 122060ff233Sopenharmony_ci} 123