1# Copyright (c) 2023 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("//arkcompiler/ets_runtime/js_runtime_config.gni") 15 16include_directories = [ 17 "${MAPLEALL_ROOT}/maple_ir/include", 18 "${MAPLEALL_ROOT}/mpl2mpl/include", 19 "${MAPLEALL_ROOT}/maple_util/include", 20 "${MAPLEALL_ROOT}/maple_driver/include", 21 "${MAPLEALL_ROOT}/mempool/include", 22 "${MAPLEALL_ROOT}/maple_ipa/include", 23 "${MAPLEALL_ROOT}/maple_ipa/include/old", 24 "${MAPLEALL_ROOT}/maple_me/include", 25 "${MAPLEALL_ROOT}/maple_phase/include", 26] 27 28src_libmplir = [ 29 "src/global_tables.cpp", 30 "src/intrinsics.cpp", 31 "src/mir_symbol_builder.cpp", 32 "src/mir_builder.cpp", 33 "src/mir_const.cpp", 34 "src/mir_function.cpp", 35 "src/mir_lower.cpp", 36 "src/mir_module.cpp", 37 "src/mir_nodes.cpp", 38 "src/mir_symbol.cpp", 39 "src/mir_type.cpp", 40 "src/opcode_info.cpp", 41 "src/option.cpp", 42 "src/mir_pragma.cpp", 43 "src/printing.cpp", 44] 45 46ohos_static_library("libmplir") { 47 stack_protector_ret = false 48 if (enable_sanitize) { 49 sanitize = { 50 cfi = true 51 cfi_cross_dso = true 52 debug = false 53 } 54 branch_protector_ret = "pac_ret" 55 } 56 configs = [ "${MAPLEALL_ROOT}:mapleallcompilecfg" ] 57 sources = src_libmplir 58 include_dirs = include_directories 59 external_deps = [ "bounds_checking_function:libsec_static" ] 60 output_dir = "${root_out_dir}/lib/${HOST_ARCH}" 61 deps = [ 62 "${MAPLEALL_ROOT}/maple_driver:libdriver_option", 63 "${MAPLEALL_ROOT}/maple_phase:libmplphase", 64 "${MAPLEALL_ROOT}/maple_util:libcommandline", 65 "${MAPLEALL_ROOT}/maple_util:libcommandline", 66 "${MAPLEALL_ROOT}/maple_util:libmplutil", 67 ] 68 part_name = "ets_runtime" 69 subsystem_name = "arkcompiler" 70} 71