133eb0b6dSopenharmony_ci# Copyright (c) 2022 Huawei Device Co., Ltd.
233eb0b6dSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
333eb0b6dSopenharmony_ci# you may not use this file except in compliance with the License.
433eb0b6dSopenharmony_ci# You may obtain a copy of the License at
533eb0b6dSopenharmony_ci#
633eb0b6dSopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
733eb0b6dSopenharmony_ci#
833eb0b6dSopenharmony_ci# Unless required by applicable law or agreed to in writing, software
933eb0b6dSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
1033eb0b6dSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1133eb0b6dSopenharmony_ci# See the License for the specific language governing permissions and
1233eb0b6dSopenharmony_ci# limitations under the License.
1333eb0b6dSopenharmony_ci
1433eb0b6dSopenharmony_cinapi_path = "//foundation//arkui/napi"
1533eb0b6dSopenharmony_ciets_runtime_path = "//arkcompiler/ets_runtime"
1633eb0b6dSopenharmony_ci
1733eb0b6dSopenharmony_cinapi_sources = [
1833eb0b6dSopenharmony_ci  "callback_scope_manager/native_callback_scope_manager.cpp",
1933eb0b6dSopenharmony_ci  "module_manager/module_checker_delegate.cpp",
2033eb0b6dSopenharmony_ci  "module_manager/module_load_checker.cpp",
2133eb0b6dSopenharmony_ci  "module_manager/native_module_manager.cpp",
2233eb0b6dSopenharmony_ci  "native_engine/impl/ark/ark_idle_monitor.cpp",
2333eb0b6dSopenharmony_ci  "native_engine/impl/ark/ark_native_deferred.cpp",
2433eb0b6dSopenharmony_ci  "native_engine/impl/ark/ark_native_engine.cpp",
2533eb0b6dSopenharmony_ci  "native_engine/impl/ark/ark_native_reference.cpp",
2633eb0b6dSopenharmony_ci  "native_engine/native_api.cpp",
2733eb0b6dSopenharmony_ci  "native_engine/native_async_work.cpp",
2833eb0b6dSopenharmony_ci  "native_engine/native_create_env.cpp",
2933eb0b6dSopenharmony_ci  "native_engine/native_engine.cpp",
3033eb0b6dSopenharmony_ci  "native_engine/native_node_api.cpp",
3133eb0b6dSopenharmony_ci  "native_engine/native_safe_async_work.cpp",
3233eb0b6dSopenharmony_ci  "native_engine/native_sendable.cpp",
3333eb0b6dSopenharmony_ci  "reference_manager/native_reference_manager.cpp",
3433eb0b6dSopenharmony_ci  "utils/log.cpp",
3533eb0b6dSopenharmony_ci]
3633eb0b6dSopenharmony_ci
3733eb0b6dSopenharmony_ciif (is_mingw) {
3833eb0b6dSopenharmony_ci  napi_sources += [ "utils/platform/windows/file.cpp" ]
3933eb0b6dSopenharmony_ci} else {
4033eb0b6dSopenharmony_ci  napi_sources += [ "utils/platform/unix_like/file.cpp" ]
4133eb0b6dSopenharmony_ci}
4233eb0b6dSopenharmony_ci
4333eb0b6dSopenharmony_cideclare_args() {
4433eb0b6dSopenharmony_ci  napi_enable_container_scope = false
4533eb0b6dSopenharmony_ci  napi_enable_memleak_debug = true
4633eb0b6dSopenharmony_ci
4733eb0b6dSopenharmony_ci  # Enable pgo for building
4833eb0b6dSopenharmony_ci  napi_feature_enable_pgo = false
4933eb0b6dSopenharmony_ci
5033eb0b6dSopenharmony_ci  # Set pgo profdata path
5133eb0b6dSopenharmony_ci  napi_feature_pgo_path = ""
5233eb0b6dSopenharmony_ci}
5333eb0b6dSopenharmony_ci
5433eb0b6dSopenharmony_ciis_ohos_standard_system = is_standard_system && !is_arkui_x
5533eb0b6dSopenharmony_ci
5633eb0b6dSopenharmony_cimodule_output_path = "arkcompiler/napi"
57