14514f5e3Sopenharmony_ci# Copyright (c) 2023 Huawei Device Co., Ltd.
24514f5e3Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
34514f5e3Sopenharmony_ci# you may not use this file except in compliance with the License.
44514f5e3Sopenharmony_ci# You may obtain a copy of the License at
54514f5e3Sopenharmony_ci#
64514f5e3Sopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
74514f5e3Sopenharmony_ci#
84514f5e3Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software
94514f5e3Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
104514f5e3Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
114514f5e3Sopenharmony_ci# See the License for the specific language governing permissions and
124514f5e3Sopenharmony_ci# limitations under the License.
134514f5e3Sopenharmony_ci
144514f5e3Sopenharmony_ciimport("//arkcompiler/ets_runtime/js_runtime_config.gni")
154514f5e3Sopenharmony_ci
164514f5e3Sopenharmony_ciinclude_directories = [
174514f5e3Sopenharmony_ci  "${MAPLEALL_ROOT}/maple_ir/include",
184514f5e3Sopenharmony_ci  "${MAPLEALL_ROOT}/mempool/include",
194514f5e3Sopenharmony_ci  "${MAPLEALL_ROOT}/maple_me/include",
204514f5e3Sopenharmony_ci  "${MAPLEALL_ROOT}/maple_ipa/include",
214514f5e3Sopenharmony_ci  "${MAPLEALL_ROOT}/maple_ipa/include/old",
224514f5e3Sopenharmony_ci  "${MAPLEALL_ROOT}/mpl2mpl/include",
234514f5e3Sopenharmony_ci  "${MAPLEALL_ROOT}/maple_util/include",
244514f5e3Sopenharmony_ci  "${MAPLEALL_ROOT}/maple_driver/include",
254514f5e3Sopenharmony_ci  "${MAPLEALL_ROOT}/maple_phase/include",
264514f5e3Sopenharmony_ci  "${MAPLEALL_ROOT}/maple_be/include/be",
274514f5e3Sopenharmony_ci  "${MAPLEALL_ROOT}/maple_be/include/cg",
284514f5e3Sopenharmony_ci  "${MAPLEALL_ROOT}/maple_be/include/ad",
294514f5e3Sopenharmony_ci  "${MAPLEALL_ROOT}/maple_be/include/ad/target",
304514f5e3Sopenharmony_ci]
314514f5e3Sopenharmony_ci
324514f5e3Sopenharmony_cisrc_libmplme = [ "src/me_option.cpp" ]
334514f5e3Sopenharmony_ci
344514f5e3Sopenharmony_ciohos_static_library("libmplme") {
354514f5e3Sopenharmony_ci  stack_protector_ret = false
364514f5e3Sopenharmony_ci  if (enable_sanitize) {
374514f5e3Sopenharmony_ci    sanitize = {
384514f5e3Sopenharmony_ci      cfi = true
394514f5e3Sopenharmony_ci      cfi_cross_dso = true
404514f5e3Sopenharmony_ci      debug = false
414514f5e3Sopenharmony_ci    }
424514f5e3Sopenharmony_ci    branch_protector_ret = "pac_ret"
434514f5e3Sopenharmony_ci  }
444514f5e3Sopenharmony_ci  configs = [ "${MAPLEALL_ROOT}:mapleallcompilecfg" ]
454514f5e3Sopenharmony_ci  sources = src_libmplme
464514f5e3Sopenharmony_ci  include_dirs = include_directories
474514f5e3Sopenharmony_ci  external_deps = [ "bounds_checking_function:libsec_static" ]
484514f5e3Sopenharmony_ci  output_dir = "${root_out_dir}/lib/${HOST_ARCH}"
494514f5e3Sopenharmony_ci  part_name = "ets_runtime"
504514f5e3Sopenharmony_ci  subsystem_name = "arkcompiler"
514514f5e3Sopenharmony_ci}
52