From 54afb3177a3a234276a07a54699251c5f67529cf Mon Sep 17 00:00:00 2001 From: Georgy Bronnikov Date: Tue, 31 Oct 2023 21:56:00 +0300 Subject: [PATCH] Support loadable plugins in es2panda Issue: #I8I1XN Description: - prefixes/suffixes for shared libraries - new items in sdk file lists Signed-off-by: Georgy Bronnikov --- static_core/libpandabase/os/library_loader.h | 11 +++++++++++ static_core/scripts/sdk/headers.txt | 3 ++- static_core/scripts/sdk/linux_host_tools.txt | 1 + static_core/scripts/sdk/test.sh | 2 ++ 4 files changed, 16 insertions(+), 1 deletion(-) diff --git a/static_core/libpandabase/os/library_loader.h b/static_core/libpandabase/os/library_loader.h index 3678a42119..8388f6578a 100644 --- a/static_core/libpandabase/os/library_loader.h +++ b/static_core/libpandabase/os/library_loader.h @@ -32,6 +32,17 @@ namespace panda::os::library_loader { class LibraryHandle; +#if PANDA_TARGET_MACOS +constexpr auto DYNAMIC_LIBRARY_PREFIX = "lib"; +constexpr auto DYNAMIC_LIBRARY_SUFFIX = ".dylib"; +#elif PANDA_TARGET_WINDOWS +constexpr auto DYNAMIC_LIBRARY_PREFIX = ""; +constexpr auto DYNAMIC_LIBRARY_SUFFIX = ".dll"; +#else +constexpr auto DYNAMIC_LIBRARY_PREFIX = "lib"; +constexpr auto DYNAMIC_LIBRARY_SUFFIX = ".so"; +#endif + PANDA_PUBLIC_API Expected Load(std::string_view filename); PANDA_PUBLIC_API Expected ResolveSymbol(const LibraryHandle &handle, std::string_view name); diff --git a/static_core/scripts/sdk/headers.txt b/static_core/scripts/sdk/headers.txt index 5855d37d6f..46ee929d1a 100644 --- a/static_core/scripts/sdk/headers.txt +++ b/static_core/scripts/sdk/headers.txt @@ -8,4 +8,5 @@ plugins/ets plugins/ecmascript/libpandabase runtime third_party/utils_native/base/include -verification/public.h \ No newline at end of file +verification/public.h +tools/es2panda/public/es2panda_lib.h diff --git a/static_core/scripts/sdk/linux_host_tools.txt b/static_core/scripts/sdk/linux_host_tools.txt index d0bd0ec2a9..41a698803b 100644 --- a/static_core/scripts/sdk/linux_host_tools.txt +++ b/static_core/scripts/sdk/linux_host_tools.txt @@ -13,6 +13,7 @@ lib/libarkfile.so lib/libarkruntime.so lib/libarkziparchive.so lib/libc_secshared.so +lib/libe2p_test_plugin.so lib/libes2panda-lib.so lib/libes2panda-public.so lib/libhmicui18n.z.so diff --git a/static_core/scripts/sdk/test.sh b/static_core/scripts/sdk/test.sh index 6bd07a6bfa..0c68aeac34 100755 --- a/static_core/scripts/sdk/test.sh +++ b/static_core/scripts/sdk/test.sh @@ -106,6 +106,7 @@ build-sdk/sdk/ohos_arm64/include/platforms build-sdk/sdk/ohos_arm64/include/plugins build-sdk/sdk/ohos_arm64/include/runtime build-sdk/sdk/ohos_arm64/include/third_party +build-sdk/sdk/ohos_arm64/include/tools build-sdk/sdk/ohos_arm64/include/verification build-sdk/sdk/ohos_arm64/lib build-sdk/sdk/ohos_arm64/lib/libarkaotmanager.so @@ -118,6 +119,7 @@ build-sdk/sdk/ohos_arm64/lib/libarkruntime_static.a build-sdk/sdk/ohos_arm64/lib/libarkziparchive.so build-sdk/sdk/ohos_arm64/lib/libc_secshared.so build-sdk/sdk/ohos_arm64/lib/libdprof.a +build-sdk/sdk/ohos_arm64/lib/libe2p_test_plugin.so build-sdk/sdk/ohos_arm64/lib/libes2panda-lib.so build-sdk/sdk/ohos_arm64/lib/libets_interop_js_napi.so build-sdk/sdk/ohos_arm64/lib/libhmicui18n.z.so -- Gitee