From 39a5d34949df6f8806838cb8cf49d7dd89a55c05 Mon Sep 17 00:00:00 2001 From: kurnevichstanislav Date: Mon, 16 Jun 2025 20:06:13 +0300 Subject: [PATCH] Migrate to hybrid libarkruntime.so Issue: https://gitee.com/openharmony/arkcompiler_runtime_core/issues/ICGHB6 Signed-off-by: kurnevichstanislav Change-Id: I313ef02ae0b38abc8ad5573b1c12ebe2ebbab4cc --- frameworks/cj/ffi/ark_interop_helper/BUILD.gn | 6 ++++- .../js/napi/app/js_app_manager/BUILD.gn | 6 ++++- .../napi/app_startup/startup_manager/BUILD.gn | 6 ++++- frameworks/native/ability/native/BUILD.gn | 25 +++++++++++++------ frameworks/native/appkit/BUILD.gn | 13 ++++++++-- frameworks/simulator/BUILD.gn | 20 +++++++++++---- .../simulator/ability_simulator/BUILD.gn | 6 ++++- .../inner_api/connect_server_manager/BUILD.gn | 7 +++++- interfaces/inner_api/runtime/BUILD.gn | 11 ++++++-- .../frameworks/js_environment/BUILD.gn | 7 +++++- 10 files changed, 85 insertions(+), 22 deletions(-) diff --git a/frameworks/cj/ffi/ark_interop_helper/BUILD.gn b/frameworks/cj/ffi/ark_interop_helper/BUILD.gn index b90e77bffe1..23c1af9a2c6 100644 --- a/frameworks/cj/ffi/ark_interop_helper/BUILD.gn +++ b/frameworks/cj/ffi/ark_interop_helper/BUILD.gn @@ -22,13 +22,17 @@ ohos_shared_library("ark_interop_helper_ffi") { external_deps = [ "bundle_framework:appexecfwk_base", "c_utils:utils", - "ets_runtime:libark_jsruntime", "eventhandler:libeventhandler", "hilog:libhilog", "ipc:ipc_single", "napi:ace_napi", "napi:ark_interop", ] + if (defined(ark_hybrid) && ark_hybrid) { + external_deps += [ "runtime_core:libarkruntime" ] + } else { + external_deps += [ "ets_runtime:libark_jsruntime" ] + } sanitize = { cfi = true cfi_cross_dso = true diff --git a/frameworks/js/napi/app/js_app_manager/BUILD.gn b/frameworks/js/napi/app/js_app_manager/BUILD.gn index 97af2f9309d..28d4a7b9611 100644 --- a/frameworks/js/napi/app/js_app_manager/BUILD.gn +++ b/frameworks/js/napi/app/js_app_manager/BUILD.gn @@ -49,13 +49,17 @@ ohos_shared_library("appmanager") { external_deps = [ "c_utils:utils", "common_event_service:cesfwk_innerkits", - "ets_runtime:libark_jsruntime", "eventhandler:libeventhandler", "hilog:libhilog", "ipc:ipc_core", "napi:ace_napi", "samgr:samgr_proxy", ] + if (defined(ark_hybrid) && ark_hybrid) { + external_deps += [ "runtime_core:libarkruntime" ] + } else { + external_deps += [ "ets_runtime:libark_jsruntime" ] + } defines = [] if (ability_runtime_child_process) { defines += [ "SUPPORT_CHILD_PROCESS" ] diff --git a/frameworks/js/napi/app_startup/startup_manager/BUILD.gn b/frameworks/js/napi/app_startup/startup_manager/BUILD.gn index 07a18a2e8fe..4119d648840 100644 --- a/frameworks/js/napi/app_startup/startup_manager/BUILD.gn +++ b/frameworks/js/napi/app_startup/startup_manager/BUILD.gn @@ -47,12 +47,16 @@ ohos_shared_library("startupmanager_napi") { external_deps = [ "c_utils:utils", - "ets_runtime:libark_jsruntime", "eventhandler:libeventhandler", "hilog:libhilog", "ipc:ipc_single", "napi:ace_napi", ] + if (defined(ark_hybrid) && ark_hybrid) { + external_deps += [ "runtime_core:libarkruntime" ] + } else { + external_deps += [ "ets_runtime:libark_jsruntime" ] + } if (ability_runtime_graphics) { external_deps += [ "ace_engine:ace_uicontent" ] diff --git a/frameworks/native/ability/native/BUILD.gn b/frameworks/native/ability/native/BUILD.gn index dd19d2a9f00..3233dd16da1 100644 --- a/frameworks/native/ability/native/BUILD.gn +++ b/frameworks/native/ability/native/BUILD.gn @@ -361,8 +361,8 @@ ohos_shared_library("abilitykit_native") { "init:libbegetutil", "ipc:ipc_core", "ipc:ipc_napi", - "ipc:rpc_ani", "ipc:rpc", + "ipc:rpc_ani", "json:nlohmann_json_static", "napi:ace_napi", "resource_management:global_resmgr", @@ -793,7 +793,6 @@ ohos_shared_library("uiabilitykit_native") { "bundle_framework:appexecfwk_base", "c_utils:utils", "common_event_service:cesfwk_innerkits", - "ets_runtime:libark_jsruntime", "eventhandler:libeventhandler", "hilog:libhilog", "hisysevent:libhisysevent", @@ -806,6 +805,11 @@ ohos_shared_library("uiabilitykit_native") { "samgr:samgr_proxy", "window_manager:windowstageani_kit", ] + if (defined(ark_hybrid) && ark_hybrid) { + external_deps += [ "runtime_core:libarkruntime" ] + } else { + external_deps += [ "ets_runtime:libark_jsruntime" ] + } public_external_deps = [ "bundle_framework:appexecfwk_core", "libuv:uv", @@ -1053,15 +1057,16 @@ ohos_shared_library("service_extension") { "${ability_runtime_native_path}/ability/native:ability_business_error", "${ability_runtime_native_path}/ability/native:insight_intent_executor", "${ability_runtime_native_path}/appkit:app_context", + "${ability_runtime_native_path}/appkit:app_context_utils", "${ability_runtime_native_path}/insight_intent/insight_intent_context:insightintentcontext", "${ability_runtime_path}/frameworks/ets/ani/ani_common:ani_common", - "${ability_runtime_native_path}/appkit:app_context_utils", ] external_deps = [ "ability_base:configuration", "ability_base:want", "ability_base:zuri", + "bundle_framework:bms_ani_common", "c_utils:utils", "common_event_service:cesfwk_innerkits", "eventhandler:libeventhandler", @@ -1074,7 +1079,6 @@ ohos_shared_library("service_extension") { "runtime_core:ani", "safwk:system_ability_fwk", "samgr:samgr_proxy", - "bundle_framework:bms_ani_common", ] if (ability_runtime_graphics) { @@ -1198,7 +1202,6 @@ ohos_shared_library("ui_service_extension") { "ace_engine:ace_uicontent", "c_utils:utils", "common_event_service:cesfwk_innerkits", - "ets_runtime:libark_jsruntime", "eventhandler:libeventhandler", "hilog:libhilog", "hitrace:hitrace_meter", @@ -1208,7 +1211,11 @@ ohos_shared_library("ui_service_extension") { "safwk:system_ability_fwk", "samgr:samgr_proxy", ] - + if (defined(ark_hybrid) && ark_hybrid) { + external_deps += [ "runtime_core:libarkruntime" ] + } else { + external_deps += [ "ets_runtime:libark_jsruntime" ] + } public_external_deps = [] if (ability_runtime_graphics) { external_deps += [ @@ -1276,7 +1283,6 @@ ohos_shared_library("ui_service_extension_module") { "bundle_framework:appexecfwk_base", "bundle_framework:appexecfwk_core", "c_utils:utils", - "ets_runtime:libark_jsruntime", "eventhandler:libeventhandler", "form_fwk:fmskit_native", "hilog:libhilog", @@ -1284,6 +1290,11 @@ ohos_shared_library("ui_service_extension_module") { "ipc:ipc_napi", "napi:ace_napi", ] + if (defined(ark_hybrid) && ark_hybrid) { + external_deps += [ "runtime_core:libarkruntime" ] + } else { + external_deps += [ "ets_runtime:libark_jsruntime" ] + } if (ability_runtime_graphics) { external_deps += [ diff --git a/frameworks/native/appkit/BUILD.gn b/frameworks/native/appkit/BUILD.gn index f63ceebf764..97e7799b5c0 100644 --- a/frameworks/native/appkit/BUILD.gn +++ b/frameworks/native/appkit/BUILD.gn @@ -195,7 +195,6 @@ ohos_shared_library("appkit_native") { "bundle_framework:bms_ani_common", "c_utils:utils", "common_event_service:cesfwk_innerkits", - "ets_runtime:libark_jsruntime", "eventhandler:libeventhandler", "faultloggerd:libbacktrace_local", "faultloggerd:libdfx_procinfo", @@ -225,6 +224,11 @@ ohos_shared_library("appkit_native") { "safwk:system_ability_fwk", "samgr:samgr_proxy", ] + if (defined(ark_hybrid) && ark_hybrid) { + external_deps += [ "runtime_core:libarkruntime" ] + } else { + external_deps += [ "ets_runtime:libark_jsruntime" ] + } public_external_deps = [ "ability_base:configuration" ] defines = [] @@ -409,12 +413,12 @@ ohos_shared_library("app_context_utils") { public_configs = [ ":appkit_public_config" ] sources = [ + "ability_runtime/context/ets_application_context_utils.cpp", "ability_runtime/context/ets_enviroment_callback.cpp", "ability_runtime/context/js_application_context_utils.cpp", "ability_runtime/context/js_context_utils.cpp", "ability_runtime/context/js_resource_manager_utils.cpp", "ability_runtime/context/sts_context_utils.cpp", - "ability_runtime/context/ets_application_context_utils.cpp", ] cflags = [] if (target_cpu == "arm") { @@ -626,6 +630,11 @@ ohos_shared_library("application_context_manager") { "hilog:libhilog", "napi:ace_napi", ] + if (defined(ark_hybrid) && ark_hybrid) { + external_deps += [ "runtime_core:libarkruntime" ] + } else { + external_deps += [ "ets_runtime:libark_jsruntime" ] + } public_configs = [ ":application_context_manager_config" ] diff --git a/frameworks/simulator/BUILD.gn b/frameworks/simulator/BUILD.gn index fe4510fae1e..651ecd7d8b6 100644 --- a/frameworks/simulator/BUILD.gn +++ b/frameworks/simulator/BUILD.gn @@ -123,11 +123,21 @@ ohos_copy("copy_ability_simulator") { out_path = get_label_info("${arkui_path}/napi:ace_napi", "root_out_dir") sources += [ out_path + "/arkui/napi/libace_napi" + dylib_suffix ] - deps += [ "//arkcompiler/ets_runtime:libark_jsruntime" ] - out_path = get_label_info("//arkcompiler/ets_runtime:libark_jsruntime", - "root_out_dir") - sources += - [ out_path + "/arkcompiler/ets_runtime/libark_jsruntime" + dylib_suffix ] + if (defined(ark_hybrid) && ark_hybrid) { + deps += [ "//arkcompiler/runtime_core/static_core/runtime:libarkruntime" ] + out_path = get_label_info( + "//arkcompiler/runtime_core/static_core/runtime:libarkruntime", + "root_out_dir") + sources += [ out_path + + "/arkcompiler/runtime_core/static_core/runtime/libarkruntime" + + dylib_suffix ] + } else { + deps += [ "//arkcompiler/ets_runtime:libark_jsruntime" ] + out_path = get_label_info("//arkcompiler/ets_runtime:libark_jsruntime", + "root_out_dir") + sources += [ out_path + "/arkcompiler/ets_runtime/libark_jsruntime" + + dylib_suffix ] + } deps += [ "//arkcompiler/toolchain/tooling:libark_ecma_debugger" ] out_path = diff --git a/frameworks/simulator/ability_simulator/BUILD.gn b/frameworks/simulator/ability_simulator/BUILD.gn index a4111ede346..f995327f80c 100644 --- a/frameworks/simulator/ability_simulator/BUILD.gn +++ b/frameworks/simulator/ability_simulator/BUILD.gn @@ -81,7 +81,6 @@ ohos_shared_library("ability_simulator_inner") { external_deps = [ "ability_base:string_utils", - "ets_runtime:libark_jsruntime", "ets_utils:console", "ets_utils:timer", "hilog:libhilog", @@ -90,6 +89,11 @@ ohos_shared_library("ability_simulator_inner") { "napi:ace_napi", "previewer:ide_extension", ] + if (defined(ark_hybrid) && ark_hybrid) { + external_deps += [ "runtime_core:libarkruntime" ] + } else { + external_deps += [ "ets_runtime:libark_jsruntime" ] + } if (ability_runtime_graphics) { external_deps += [ diff --git a/interfaces/inner_api/connect_server_manager/BUILD.gn b/interfaces/inner_api/connect_server_manager/BUILD.gn index 3f285a6fd25..5d876af3d6f 100644 --- a/interfaces/inner_api/connect_server_manager/BUILD.gn +++ b/interfaces/inner_api/connect_server_manager/BUILD.gn @@ -51,11 +51,16 @@ ohos_shared_library("connect_server_manager") { sources = [ "src/connect_server_manager.cpp" ] external_deps = [ - "ets_runtime:libark_jsruntime", "hilog:libhilog", "runtime_core:libarkruntime", ] + if (defined(ark_hybrid) && ark_hybrid) { + external_deps += [ "runtime_core:libarkruntime" ] + } else { + external_deps += [ "ets_runtime:libark_jsruntime" ] + } + configs = [ ":connect_server_manager_config", "${ability_runtime_services_path}/common:common_config", diff --git a/interfaces/inner_api/runtime/BUILD.gn b/interfaces/inner_api/runtime/BUILD.gn index 4d21a38c5c4..9399861a7f9 100644 --- a/interfaces/inner_api/runtime/BUILD.gn +++ b/interfaces/inner_api/runtime/BUILD.gn @@ -110,7 +110,6 @@ ohos_shared_library("runtime") { "bundle_framework:libappexecfwk_common", "c_utils:utils", "config_policy:configpolicy_util", - "ets_runtime:libark_jsruntime", "ets_utils:console", "ets_utils:timer", "ets_utils:worker", @@ -125,11 +124,19 @@ ohos_shared_library("runtime") { "napi:ace_napi", "resource_management:global_resmgr", "runtime_core:ani", - "runtime_core:libarkruntime", "samgr:samgr_proxy", "zlib:shared_libz", ] + if (defined(ark_hybrid) && ark_hybrid) { + external_deps += [ "runtime_core:libarkruntime" ] + } else { + external_deps += [ + "ets_runtime:libark_jsruntime", + "runtime_core:libarkruntime", + ] + } + public_external_deps = [ "ability_base:session_info", "ability_base:want", diff --git a/js_environment/frameworks/js_environment/BUILD.gn b/js_environment/frameworks/js_environment/BUILD.gn index bc213113d1e..03ee912b1d3 100644 --- a/js_environment/frameworks/js_environment/BUILD.gn +++ b/js_environment/frameworks/js_environment/BUILD.gn @@ -43,7 +43,6 @@ ohos_shared_library("js_environment") { external_deps = [ "c_utils:utils", - "ets_runtime:libark_jsruntime", "ets_utils:console", "ets_utils:worker", "eventhandler:libeventhandler", @@ -53,6 +52,12 @@ ohos_shared_library("js_environment") { "napi:ace_napi", ] + if (defined(ark_hybrid) && ark_hybrid) { + external_deps += [ "runtime_core:libarkruntime" ] + } else { + external_deps += [ "ets_runtime:libark_jsruntime" ] + } + if (ability_runtime_graphics) { defines = [ "SUPPORT_GRAPHICS" ] external_deps += [ "ace_engine:ace_uicontent" ] -- Gitee