1# Copyright (c) 2022 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("//third_party/bounds_checking_function/libsec_src.gni") 15import("$build_root/ark.gni") 16 17config("libsec_public_config") { 18 include_dirs = [ "//third_party/bounds_checking_function/include" ] 19} 20 21ohos_static_library("libsec_static") { 22 stack_protector_ret = false 23 sources = libsec_sources 24 public_configs = [ ":libsec_public_config" ] 25 cflags = [ 26 "-D_INC_STRING_S", 27 "-D_INC_WCHAR_S", 28 "-D_SECIMP=//", 29 "-D_STDIO_S_DEFINED", 30 "-D_INC_STDIO_S", 31 "-D_INC_STDLIB_S", 32 "-D_INC_MEMORY_S", 33 ] 34} 35 36SEC_SHARED_SUBSYS_NAME = "thirdparty" 37SEC_SHARED_PART_NAME = "bounds_checking_function" 38 39ohos_shared_library("libsec_shared") { 40 stack_protector_ret = false 41 sources = libsec_sources 42 public_configs = [ ":libsec_public_config" ] 43 cflags = [ 44 "-D_INC_STRING_S", 45 "-D_INC_WCHAR_S", 46 "-D_SECIMP=//", 47 "-D_STDIO_S_DEFINED", 48 "-D_INC_STDIO_S", 49 "-D_INC_STDLIB_S", 50 "-D_INC_MEMORY_S", 51 ] 52 53 part_name = "${SEC_SHARED_PART_NAME}" 54 subsystem_name = "${SEC_SHARED_SUBSYS_NAME}" 55 install_images = [ 56 "system", 57 "updater", 58 ] 59} 60if (is_ohos && run_with_qemu) { 61 copy("libsec_shared_for_qemu") { 62 deps = [ ":libsec_shared" ] 63 64 sources = [ "${root_out_dir}/${SEC_SHARED_SUBSYS_NAME}/${SEC_SHARED_PART_NAME}/libsec_shared.so" ] 65 outputs = [ "${root_out_dir}/${so_dir_for_qemu}/lib/libsec_shared.so" ] 66 } 67} 68